__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
�

���g������SSKrSSKrSSKrSSKrSSK7 SSKJrJrJrJ	r	 SSK
Jr SSK7 SSK
7 SSKJr SSKJrJrJr SSK7 SSK7 SSKJr SS	KJr SS
KJrJr SSKJr Sr Sr#Sr$Sr%Sr&Sr'Sr(Sr)Sr*Sr+Sr,Sr-Sr.Sr/"SS\05r1Sr2SSjr3"SS\45r5"SS\0\5r6g!\a SSK7 SSK7 SSK7 Nyf=f!\a S
r \!RES5 N{f=f)�N)�*)�device�utils�models�pkit)�cups�)�
pluginhandler)�
to_unicode�PY3�from_unicode_to_str)�	Ui_Dialog)�PluginDialog)�WifiSetupDialog�SUCCESS_CONNECTED)�faxTFz*Fax setup disabled - Python 2.3+ required.��c�D�\rSrSrS
SjrSSjrSrSrSrSSjr	S	r
g)
�PasswordDialog�PNc��[RX5 UR[[	SS555 Xl[
U5nURSSSS5 URS5 [U5Ul
URURSSSS5 [U5UlURURSS5 [U5UlURR[R 5 URURSSSS5 [U5UlURUR"SS5 [U5UlUR$R[R&5 URUR$SSSS5 [)U5UlURUR*SS5 [)U5UlURUR,SS5 UR/5 UR1[3S	S
5R5UR7555 UR*R8R;UR<5 UR,R8R;UR>5 UR$R@R;UR<5 g)N�hp_logo�128x128��rr	rri��)!�QDialog�__init__�
setWindowIcon�QIcon�load_pixmap�prompt�QGridLayout�setContentsMargins�
setSpacing�QLabel�PromptTextLabel�	addWidget�UsernameTextLabel�	QLineEdit�UsernameLineEdit�setEchoMode�Normal�PasswordTextLabel�PasswordLineEdit�Password�QPushButton�OkPushButton�CancelPushButton�languageChange�resize�QSize�
expandedTo�minimumSizeHint�clicked�connect�accept�reject�
returnPressed)�selfr#�parent�name�modal�fl�Layouts       �#/usr/share/hplip/ui5/setupdialog.pyr�PasswordDialog.__init__Qs%������&����5��Y�	�!B�C�D����T�"���!�!�"�b�"�b�1����!��%�d�|�������-�-�q�!�Q��:�!'���������/�/��A�6� )�$�������)�)�)�*:�*:�;�����.�.��1�a��;�!'���������/�/��A�6� )�$�������)�)�)�*<�*<�=�����.�.��1�a��;�'��-�������*�*�A�q�1� +�D� 1�������.�.��1�5��������E�#�s�O�.�.�t�/C�/C�/E�F�G����!�!�)�)�$�+�+�6����%�%�-�-�d�k�k�:����+�+�3�3�D�K�K�@�c��URRU5 U(d7URRS5 URRS5 gg)NTz'QLineEdit {background-color: lightgray})r,�setText�setReadOnly�
setStyleSheet)r?�defUser�allowUsernameEdits   rE�setDefaultUsername�!PasswordDialog.setDefaultUsernamezsI�����%�%�g�.� ��!�!�-�-�d�3��!�!�/�/�9�
;�!rGc�H�[URR55$�N)rr,�text�r?s rE�getUsername�PasswordDialog.getUsername�����$�/�/�4�4�6�7�7rGc�H�[URR55$rQ)rr0rRrSs rE�getPassword�PasswordDialog.getPassword�rVrGc��URURS55 URRURUR55 UR
RURS55 URRURS55 URRURS55 URRURS55 g)Nz+HP Device Manager - Enter Username/Passwordz	Username:z	Password:�OK�Cancel)	�setWindowTitle�_PasswordDialog__trr(rIr#r*r/r3r4rSs rEr5�PasswordDialog.languageChange�s�������I�I�C�D�	F����$�$�T�Y�Y�t�{�{�%;�<����&�&�t�y�y��'=�>����&�&�t�y�y��'=�>����!�!�$�)�)�D�/�2����%�%�d�i�i��&9�:rGc�.�[RSX5$�N�SetupDialog��qApp�	translate�r?�s�cs   rE�__tr�PasswordDialog.__tr�����~�~�m�Q�2�2rG)r4r3r0r/r(r,r*r#)NNrr�TrQ)�__name__�
__module__�__qualname__�__firstlineno__rrNrTrXr5r^�__static_attributes__�rGrErrPs"��'A�R;�8�8�;�3rGrc�>�[US5n[X5 g!f=frQ)r�	FailureUI)r#�dlgs  rE�FailureMessageUIrv�s"��
��V�T�*���#�����s��c���[US5nUS:waURX5 UR5[R:Xa UR5UR
54$g!f=f)N)�rx)rrN�exec_r�AcceptedrTrX)r#�userNamerMrus    rE�showPasswordUIr|�sl��

��V�T�*���t���"�"�8�?��9�9�;�'�*�*�*��O�O�%�s���'8�9�	
�	+�	
���	
�s�A$A*�*A,c��\rSrSrSrSrg)�DeviceTableWidgetItem�c�X�[RX[R5 X lgrQ)�QTableWidgetItemr�UserType�
device_uri)r?rRr�s   rEr�DeviceTableWidgetItem.__init__�s���!�!�$�.>�.G�.G�H�$�rG)r�N)rmrnrorprrqrrrGrEr~r~�s��%rGr~c��\rSrSrS?SjrSrSrSrSrSr	S	r
S
rSrSr
S
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr S r!S!r"S"r#S#r$S$r%S%r&S&r'S'r(S(r)S)r*S*r+S+r,S,r-S-r.S.r/S/r0S0r1S1r2S@S2jr3S3r4S4r5S5r6S6r7S7r8S8r9S9r:S:r;\<4S;jr=S<r>SAS=jr?S>r@g)Brb�Nc�(�[RX5 URU5 X lX0lX@lXPlU(a[RSU-5 UR5 UR(a![RSUR5 OYUR(a(SUl[RSUR5 O [RSUR 5 ["R$"[&5 g)NzUsing device: %sr)rr�setupUi�param�jd_portr��remove�log�info�initUi�QTimer�
singleShot�showRemovePage�skip_discovery�discovery_method�showDevicesPage�showDiscoveryPager�setPasswordCallbackr|)r?r@r�r�r�r�s      rEr�SetupDialog.__init__�s�������&����T���
���$������H�H�'�*�4�5����
��;�;����a��!4�!4�5��"�"�()��%��!�!�!�T�%9�%9�:��!�!�!�T�%;�%;�<�� � ��0rGc��UR[[SS555 URRRUR5 URRRUR5 URRRUR5 URRRUR5 [R"[R[R5 SUlSUlUR$(aUR'5 SUlgUR+5 UR-5 UR/5 [0Ulg)NrrFr	)r r!r"�CancelButtonr:r;�CancelButton_clicked�
BackButton�BackButton_clicked�
NextButton�NextButton_clicked�ManualGroupBox�ManualGroupBox_clicked�signal�SIGINT�SIG_DFL�faxnumberChanged�faxCompanyNameChangedr��initRemovePage�max_page�initDiscoveryPage�initDevicesPage�initAddPrinterPage�PAGE_ADD_PRINTERrSs rEr��SetupDialog.initUi�s�����5��Y�	�!B�C�D�	
���!�!�)�)�$�*C�*C�D������'�'��(?�(?�@������'�'��(?�(?�@����#�#�+�+�D�,G�,G�H��
�
�f�m�m�V�^�^�4� %���%*��"��;�;����!��D�M��"�"�$�� � �"��#�#�%�,�D�MrGc	�
�URRS5 URS5 URRS5 SUlSUlSUlSUlURR[R5 URR[R5 URR[R5 0UlSUlSUlSUlSUlSUl[*UlUR.(Ga/[0R3S5 SUlSUlUR4R7UR.5 UR8R;UR<5 URRS5 UR>RS5 URA5(a	SUlGO�[CXRES	55 [FRHRKUR.5nUb.URRS5 URS5 GO[FRLRKUR.5nUbC[R(a.URRS5 UROS5 GO�[FRPRKUR.5nUbC[R(a.URRS5 URSS5 GO3[CXRES
55 GOURT(a�[FRV"URT5u	p#UlpEpgp�Un
UR S:XaG[0RYS5 [ZR\"U5Sn
[0RYS
U
-5 URTXDU
40UlSUlOd[R(dO[R(d:SUlSUlURRS5 URS5 [Rd(av[Rf(aaURhRkS[*5 URhRkS[l5 URhRkS[n5 OURhRS5 URpRrRuURv5 URRxRuURz5 URRxRuUR|5 URRxRuUR~5 URRxRuUR�5 UR�R�RuUR�5 UR�R�RuUR�5 URRxRuUR�5 UR�5 g![ZR^a [0RYS5 GN�f=f![`a& [0RcSURT-5 GN�f=f)NTFr�usb��rxzSearching for device...z_<b>Device not found.</b> <p>Please make sure your printer is properly connected and powered-on.z*<b>Invalid manual discovery parameter.</b>�netz$Trying to get hostname for device...zHost name=%szFailed.z Invalid device URI specified: %szAll devices/printerszSingle function printers onlyzAll-in-one/MFP devices only)H�UsbRadioButton�
setChecked�setUsbRadioButtonr��advanced�manualr�r��NetworkRadioButton�
setEnabled�prop�	net_build�WirelessButton�ParallelRadioButton�	par_build�devices�bus�timeout�ttl�search�print_test_page�DEVICE_DESC_ALL�device_descr�r�r��ManualParamLineEditrI�JetDirectSpinBox�setValuer��DiscoveryOptionsGroupBox�manualDiscoveryrt�_SetupDialog__trr�usb_pat�match�dev_pat�setParallelRadioButton�ip_pat�setNetworkRadioButtonr��parseDeviceURI�debug�socket�
gethostbyaddr�herror�Error�error�	fax_build�
scan_build�DeviceTypeComboBox�addItem�DEVICE_DESC_SINGLE_FUNC�DEVICE_DESC_MULTI_FUNC�AdvancedButtonr:r;�AdvancedButton_clicked�toggled�UsbRadioButton_toggled�NetworkRadioButton_toggled�WirelessButton_toggled�ParallelRadioButton_toggled�NetworkTTLSpinBox�valueChanged�NetworkTTLSpinBox_valueChanged�NetworkTimeoutSpinBox�"NetworkTimeoutSpinBox_valueChanged�ManualGroupBox_toggled�showAdvanced)r?r��back_end�is_hp�model�serial�dev_file�host�zc�portrAs           rEr��SetupDialog.initDiscoveryPage�s�����&�&�t�,����t�$����&�&�u�-���
����#��� !������*�*�4�>�>�:����&�&�t�~�~�6�� � �+�+�D�N�N�;����������������$���*����:�:�:��H�H�.�/��D�K� �D�M��$�$�,�,�T�Z�Z�8��!�!�*�*�4�<�<�8����*�*�4�0��)�)�4�4�U�;��#�#�%�%�&*��#��$�	�	�u�!w�x����,�,�T�Z�Z�8���$��'�'�2�2�4�8��*�*�4�0�#�N�N�0�0����<�E��(�T�^�^��0�0�;�;�D�A��3�3�D�9�!'�
�
� 3� 3�D�J�J� ?�� �,���� �3�3�>�>�t�D� �6�6�t�<�&�d�I�I� L�-N�O��_�_�
+��)�)�$�/�/�:�S����5�(�"����8�8�u�$�9��	�	�"H�I�%�3�3�D�9�!�<���	�	�.�4�"7�8� $���%��1E�F���&*��#�������"&�D���D�H����*�*�4�0��"�"�4�(��>�>�d�o�o��#�#�+�+�&��
9��#�#�+�+�/�1H�
J��#�#�+�+�-�/E�
G�
�#�#�.�.�u�5����#�#�+�+�D�,G�,G�H����#�#�+�+�D�,G�,G�H����'�'�/�/��+�+�	-����#�#�+�+�D�,G�,G�H�� � �(�(�0�0��,�,�	.����+�+�3�3��/�/�	1��"�"�/�/�7�7��3�3�	5����#�#�+�+�D�,G�,G�H������M"�=�=�-��	�	�)�,�-���
P��	�	�<�t���N�O�
P�s$�'+[�%.Z�)[�[�,[;�:[;c�D�URRU(+5 grQ)r�r��r?�checkeds  rEr��"SetupDialog.ManualGroupBox_toggledWs���%�%�0�0�W��=rGc	�z�[R"URUR5upnU(Ga[[RSU-5 [R"U5u	pEpgp�p�nU
n
US:XaR[RRU
5b1[RSU
-5 [R"U
5Sn
XX}40UlUS:Xa-URR!S5 UR#S5 gUS:XaB[$R&(a-UR(R!S5 UR+S5 gUS:XaA[$R,(a,UR.R!S5 UR1S5 gg![R[R4a N�f=f)	NzFound device: %sr�z&Getting host name from IP address (%s)rr�T�parF)r�makeURIr�r�r�r�r�r�r�r�r�r�r��gaierrorr�r�r�r�r�r�r�r�r�r�r�)r?r��sane_uri�fax_urir�r�r�r�r�r�r�r�r�rAs              rEr��SetupDialog.manualDiscoveryZsv��(.����J�J����)&�%�
�g���H�H�'�*�4�5��%�%�j�1�
J�H�S��4�T��D��e�|���}�}�+�+�D�1�=��	�	�D�t�K�M�%�3�3�D�9�!�<��'��(<�=�D�L��e�|��#�#�.�.�t�4��&�&�t�,�����$�.�.��'�'�2�2�4�8��*�*�4�0��	���$�.�.��(�(�3�3�D�9��+�+�D�1����'�
�
�v���7����s�4AF�$F:�9F:c�f�XlURR5nURU5 grQ)r�r��	isChecked�setJetDirect)r?r��networks   rEr��"SetupDialog.ManualGroupBox_clicked�s)�����)�)�3�3�5�����'�"rGc���URRS5 URRS5 UR[5 UR[5 g�NFT)r�r�r��
setNextButton�BUTTON_NEXT�displayPage�PAGE_DISCOVERYrSs rEr��SetupDialog.showDiscoveryPage�sB�����"�"�5�)����"�"�4�(����;�'�����(rGc�P�UR(+UlUR5 grQ)r�r�rSs rEr��"SetupDialog.AdvancedButton_clicked�s�� �M�M�)��
����rGc��UR(axURR[5 URRUR
S55 URR[[SS555 gURR[5 URRUR
S55 URR[[SS555 g)NzHide Advanced Options�minus�16x16zShow Advanced Options�plus)r��AdvancedStackedWidget�setCurrentIndex�
ADVANCED_SHOWr�rIr��setIconr!r"�
ADVANCED_HIDErSs rEr��SetupDialog.showAdvanced�s����=�=��&�&�6�6�}�E����'�'��	�	�2I�(J�K����'�'��k�'�7�.K�(L�M��&�&�6�6�}�E����'�'��	�	�2I�(J�K����'�'��k�&�'�.J�(K�LrGc��URRU=(a UR5 URRU=(a UR5 grQ)�JetDirectLabelr�r�r��r?�enableds  rEr�SetupDialog.setJetDirect�s<�����&�&�w�'>�4�;�;�?����(�(��)@�T�[�[�ArGc���URRU5 URRU5 URRU5 URRU5 grQ)�NetworkTimeoutLabelr�r��NetworkTTLLabelr�rs  rE�setNetworkOptions�SetupDialog.setNetworkOptions�sR��� � �+�+�G�4��"�"�-�-�g�6����'�'��0����)�)�'�2rGc��URRU5 URRU5 URRU5 grQ)�SearchLineEditr�r��DeviceTypeLabelrs  rE�setSearchOptions�SetupDialog.setSearchOptions�s>�����&�&�w�/����*�*�7�3����'�'��0rGc�:�URRU5 grQ)r�r�rs  rE�setManualDiscovery�SetupDialog.setManualDiscovery�s�����&�&�w�/rGc��URRU5 URRU5 URRS5 g�Nr)�NetworkDiscoveryMethodLabelr��NetworkDiscoveryMethodComboBoxrrs  rE�setNetworkDiscovery�SetupDialog.setNetworkDiscovery�s>���(�(�3�3�G�<��+�+�6�6�w�?��+�+�;�;�A�>rGc�&�URU5 grQ)r��r?�
radio_enableds  rEr��"SetupDialog.UsbRadioButton_toggled�������}�-rGc�>�URU(+5 URU(+5 URU(+5 URU5 UR	U5 U(a2UR
R
URS55 SUlgg)NzUSB bus ID:device ID (bbb:ddd):r��	r/rr!r&r)�ManualParamLabelrIr�r�r�s  rEr��SetupDialog.setUsbRadioButton�s~��� � �W��-����g�+�&����7�{�+����g�&�����(���!�!�)�)��	�	�;�<�
>��D�H�rGc�&�URU5 grQ)r�r2s  rEr��&SetupDialog.NetworkRadioButton_toggled�s���"�"�=�1rGc� �URU5 URU5 URU5 URU5 UR	U5 U(a2UR
R
URS55 SUlgg�NzIP Address or network name:r�r7r�s  rEr��!SetupDialog.setNetworkRadioButton�sx��� � ��)����'�"����w�'����g�&�����(���!�!�)�)��	�	�7�8�
:��D�H�rGc�&�URU5 grQ)�setWirelessButtonr2s  rEr��"SetupDialog.WirelessButton_toggled�r5rGc�R�URU(+5 URU(+5 URU(+5 URU(+5 UR	U(+5 U(a2UR
R
URS55 SUlggr=r7r�s  rEr@�SetupDialog.setWirelessButton�s���� � �W��-����g�+�&����7�{�+����'�k�*����G��,���!�!�)�)��	�	�7�8�
:��D�H�rGc�&�URU5 grQ)r�r2s  rEr��'SetupDialog.ParallelRadioButton_toggled�s���#�#�M�2rGc�R�URU(+5 URU(+5 URU(+5 URU(+5 UR	U(+5 U(a2UR
R
URS55 SUlgg)NzDevice node (/dev/...):r�r7r�s  rEr��"SetupDialog.setParallelRadioButton�s��� � �W��-����g�+�&����7�{�+����'�k�*����G��,���!�!�)�)�$�)�)�4M�*N�O��D�H�rGc��XlgrQ)r�)r?r�s  rEr��*SetupDialog.NetworkTTLSpinBox_valueChanged�s���rGc��XlgrQ)r�)r?r�s  rEr��.SetupDialog.NetworkTimeoutSpinBox_valueChanged�s���rGc�b�URRRUR5 grQ)�
RefreshButtonr:r;�RefreshButton_clickedrSs rEr��SetupDialog.initDevicesPage�s"�����"�"�*�*�4�+E�+E�FrGc	�	�URRS5 UR[5 Sn[R[
[R55 UR(GdUR(a#UR(aUR5 GO�SnURS:Xa�URS:XaSnOURS:XaSnOSn[R!S	URUR"UR$UR&=(d S
UR(U4-5 OB[R!SURUR&=(d S
UR(4-5 UR([*:XaS[,R.[040nO/UR([2:XaS[,R4[040nO0nURS
:Xa]SSKJn [R;5 UR=[>S5 [R[
[R55 [DRF"UR/UR"UR$X0R&US9Ul	[R;5 URI5 UR(a�URJRS5 URLRO[QSS55 [SUR5S:Xa+URTRWURYS55 O@URTRWURYS[SUR5-55 UR[5 O�URJRS5 URLRO[QSS55 [RCSUR-5 URTRWURYS55 URS:XaD[\R^"5(a*[aXRYS5URYS55 URc[d5 g![@a [RCS5 GNhf=f![R;5 f=f)NTrxr�r�mdnsr	�slp�avahizGSearching... (bus=%s, timeout=%d, ttl=%d, search=%s desc=%d, method=%s)z(None)z)Searching... (bus=%s, search=%s, desc=%d)z	scan-typer�)�
smart_install�qt4z+Failed to Import smart_install.py from base)�
net_searchr�rz5<b>1 device found.</b> Click <i>Next</i> to continue.zX<b>%s devices found.</b> Select the device to install and click <i>Next</i> to continue.Fr�zNo devices found on bus: %szm<b>No devices found.</b><br>Click <i>Back</i> to change discovery options, or <i>Refresh</i> to search again.a�<b>HPLIP cannot detect printers in your network.</b><p>This may be due to existing firewall settings blocking the required ports.
                When you are in a trusted network environment, you may open the ports for network services like mdns and slp in the firewall. For detailed steps follow the link.
                <b>https://developers.hp.com/hp-linux-imaging-and-printing/KnowledgeBase/Troubleshooting/TroubleshootNetwork</b></p>zHP Device Manager)3r�r�rr	�QApplication�setOverrideCursor�QCursor�Qt�
WaitCursorr�r�r�r�r�r�r�r�r�r�r�r�r��operator�le�SCAN_TYPE_NONEr��gt�baserT�restoreOverrideCursor�disable�GUI_MODE�ImportErrorr�r�probeDevices�clearDevicesTabler��DevicesFoundIcon�	setPixmapr"�len�DevicesFoundLabelrIr��loadDevicesTabler�	check_lanrtr
�PAGE_DEVICES)r?r��net_search_type�filter_dictrTs     rEr��SetupDialog.showDevicesPage�s������"�"�4�(����;�'����&�&�w�r�}�}�'=�>�2	1��<�<�<��;�;�4�:�:��(�(�*�')�O��x�x�5�(��0�0�A�5�.4�O�!�2�2�a�7�.3�O�.5�O����!j�"&�(�(�T�\�\�4�8�8�T�[�[�E\�T\�"&�"2�"2�O�"E�"E�F����!L�"&�(�(�T�[�[�-D�H�d�FV�FV�!W�"X�Y��'�'�+B�B�'�(�+�+�~�)F�'H���)�)�-C�C�'�(�+�+�~�)F�'H��')���x�x�5�(�	8�:�
)�>�>�@�)�1�1�(�E�B�(�:�:� '��
�
� 6�8�$*�#6�#6����z�4�<�<�QU�QY�QY�7B�K�K�\k�$m�D�L�
�.�.�0���� ��<�<��O�O�&�&�t�,��!�!�+�+�K���,H�I��4�<�<� �A�%��&�&�.�.��I�I�U�V�X��&�&�.�.�t�y�y�n�ru�vz�wC�wC�sD�E�0F�G�
�!�!�#�
�O�O�&�&�u�-��!�!�+�+�K���,I�J��I�I�3�d�h�h�>�?��"�"�*�*�4�9�9��,A�
B��x�x�5� �U�_�_�%6�%6��$�	�	�+H�!I��)�)�$7�8�:�
	
����&��U +�O��I�I� M�O�O��
�.�.�0�s2� FR1�)R�/BR1�R.�*R1�-R.�.R1�1Sc
���URR[UR55 URS:XaEURS5URS5URS5URS5/nSnO$URS5URS5/nSnURR
[U55 URRU5 [R[R-n[UR5GHbupE[R"U5u	pgp�p�p�n[R"U	5n[![#U5U5nUR%U5 URR'USU5 [)[#U55nUR%U5 URR'XBU5 URS:XdM�[)[#U55nUR%U5 URR'USU5 [)[#URUS	55nUR%U5 URR'US	U5 GMe URR+5 URR-S5 URR/S
5 URR1S5 g)Nr��Modelz
IP Addressz	Host Name�
Device URIrr	rrT)�DevicesTableWidget�setRowCountrir�r�r��setColumnCount�setHorizontalHeaderLabelsrZ�ItemIsSelectable�
ItemIsEnabled�	enumeraterr�r�normalizeModelUINamer~�str�setFlags�setItemr��resizeColumnsToContents�	selectRow�setSortingEnabled�	sortItems)r?�headers�device_uri_col�flags�row�dr�r�r�r�r�r�r�r�r��model_ui�is                 rErk�SetupDialog.loadDevicesTableRs<�����+�+�C����,=�>��8�8�u���y�y��)�4�9�9�\�+B�D�I�I�k�DZ�\`�\e�\e�fr�\s�t�G��N��y�y��)�4�9�9�\�+B�C�G��N����.�.�s�7�|�<����9�9�'�B��#�#�b�&6�&6�6������-�F�C�LR�La�La�bc�Ld�I�H�S��4�T��2�2�5�9�H�%�c�(�m�Q�7�A�
�J�J�u���#�#�+�+�C��A�6� ��Q��(�A�
�J�J�u���#�#�+�+�C��C��x�x�5� �$�S��Y�/���
�
�5�!��'�'�/�/��Q��:�$�S����a���);�%<�=���
�
�5�!��'�'�/�/��Q��:�'.�*	
���7�7�9����)�)�!�,����1�1�$�7����)�)�!�,rGc��URR5 URRS5 URRS5 gr,)rt�clearrurvrSs rErf�SetupDialog.clearDevicesTablezs<�����%�%�'����+�+�A�.����.�.�q�1rGc�r�UR5 /Ul[RSUR5 gr,)rfr�r�r�r�rSs rErN�!SetupDialog.RefreshButton_clickeds+����� �������!�T�1�1�2rGc��0UlURRRUR5 UR
RRUR5 URRRUR5 URRRUR5 URR[UR55 UR
R[UR
55 URR[UR55 UR R#[%['SS555 UR RRUR(5 UR R+UR-S55 SUlSUlSUlSUlSUlSUlg)N�folder_openrz4Browse for an alternative PPD file for this printer.FrxT)�mq�PrinterNameLineEdit�
textEditedr;�PrinterNameLineEdit_textEdited�FaxNameLineEdit�FaxNameLineEdit_textEdited�SetupPrintGroupBoxr:�SetupPrintGroupBox_clicked�SetupFaxGroupBox�SetupFaxGroupBox_clicked�setValidator�PrinterNameValidator�FaxNumberLineEdit�PhoneNumValidator�OtherPPDButtonrr!r"�OtherPPDButton_clicked�
setToolTipr��printer_fax_names_same�printer_name�fax_name�fax_setup_ok�	fax_setup�print_setuprSs rEr��SetupDialog.initAddPrinterPage�s������� � �+�+�3�3��/�/�	1�	
���'�'�/�/��+�+�	-�	
���'�'�/�/��+�+�	-����%�%�-�-�d�.K�.K�L�� � �-�-� ��!9�!9�:�	<����)�)� ��!5�!5�6�	8����+�+��d�4�4�5�	7����#�#�E�+�m�W�*M�$N�O����#�#�+�+�D�,G�,G�H����&�&��I�I�L�M�	O�',��#������
� ������ ��rGc�p�[R"5nURRS[5nURRS[
5nU[:�a�UR
5[R:wa�[R"U[:HU5upEU(d[XRS55 gU(a"UR
5[R:wa?U[:Xa[XRS55 g[XRS55 UR[5 UR!5UlUR"(a�UR$R'S5 UR$R)S5 UR*R'S5 UR*R)S5 UR-5 UR/5 OsSUlUR$R'S5 UR$R)S5 UR*R'S5 UR*R)S5 [2(Ga[4R6(a�URRS[85[8[:4;a�SUlUR>RAS5 UR>R)S5 URC5UlUR<(a!URE5 URG5 O�SUlUR>RAS5 UR>R)S5 ORUR>RAS5 UR>R)S5 S	Ul$SUl%SUlSUl&UR"(dUR<(a&URO5 URQ[R5 g[TRWS
5 URY5 g)N�pluginz
plugin-reasonzn<b>Unable to find an appropriate su/sudo utiltity to run hp-plugin.</b><p>Install kdesu, gnomesu, or gksu.</p>a	<b>The device you are trying to setup requires a binary plug-in. Some functionalities may not work as expected without plug-ins.<p> Please run 'hp-plugin' as normal user to install plug-ins.</b></p><p>Visit <u>http://hplipopensource.com</u> for more infomation.</p>z�Either you have chosen to skip the installation of the optional plug-in or that installation has failed.  Your printer may not function at optimal performance.TFzfax-typerxzExiting the setup...)-r
�PluginHandler��get�PLUGIN_NONE�PLUGIN_REASON_NONE�	getStatus�PLUGIN_INSTALLEDr�run_plugin_command�PLUGIN_REQUIREDrtr��	WarningUIr�BUTTON_ADD_PRINTER�setDefaultPrinterNamer�r��setCheckabler��SendTestPageCheckBox�findPrinterPPD�	updatePPD�	print_ppd�
fax_import_okr�r��
FAX_TYPE_NONE�FAX_TYPE_NOT_SUPPORTEDr�r�r��setDefaultFaxName�
findFaxPPD�readwriteFaxInformationr��fax_name_okr��setAddPrinterButtonr
r�r�r��close)r?�	pluginObjr��
plugin_reason�ok�sudo_oks      rE�showAddPrinterPage�SetupDialog.showAddPrinterPage�s��!�.�.�0�	������X�{�3�������O�5G�H�
��K���"�"�$�
�(F�(F�F�"�5�5��o�-�}�>�����d�I�I�I�%J�K���Y�0�0�2�m�6T�6T�T���0�!�$�	�	�3~�)�@��!�$�	�	�~�)�@�	
���-�.��5�5�7�������#�#�0�0��6��#�#�.�.�t�4��%�%�2�2�4�8��%�%�0�0��6����!��N�N��!�D�N��#�#�0�0��7��#�#�.�.�u�5��%�%�2�2�5�9��%�%�0�0��7��=�T�^�^������J�
�6�}�Nd�>e�e�!�D�N��!�!�,�,�T�2��!�!�,�,�T�2�!�3�3�5�D�N��~�~����!��,�,�.�!&����%�%�0�0��7��%�%�0�0��7�
�!�!�,�,�U�3��!�!�,�,�U�3��D�M�#�D��"�D�N� $�D�����t�~�~��$�$�&����-�.��H�H�+�,��J�J�LrGc�6�URc�[RSUR-5 URRUR
S55 URRS5 URR[S55 gURRURS5 URRS5 URRS5 g![a N�f=f![a gf=f)Nz0No appropriate print PPD file found for model %sz6(Not found. Click browse button to select a PPD file.)�background-color: yellowrxr)r�r�r�r��PPDFileLineEditrIr�rK�AttributeError�PrinterDescriptionLineEditr|rSs rEr��SetupDialog.updatePPD�s����>�>�!��I�I�H�4�:�:�U�V�� � �(�(����3k�)l�m�
��$�$�2�2�3M�N�
�+�+�3�3�C��G�<�
� � �(�(�����):�;��+�+�3�3�B�7�
��$�$�2�2�2�6��"�
��
��"�
��
�s$�C;�D�;
D�D�
D�Dc
�|�[[RXRS5[RSS5URS555nU(ac[RRU5(a>U[R"U54UlUR5 UR5 ggg)NzSelect PPD File�dirs�ppdz)PPD Files (*.ppd *.ppd.gz);;All Files (*))r�QFileDialog�getOpenFileNamer��sys_confr��os�path�existsr�getPPDDescriptionr�r�r�)r?�b�ppd_files   rEr��"SetupDialog.OtherPPDButton_clicked�s����k�9�9�$�	�	�J[�@\�:B�,�,��E�;��I�I�A�B�D�E��
������x�0�0�&��(>�(>�x�(H�I�D�N��N�N���$�$�&�1�8rGc��[R[[R55 [
R"5UlSUlUR(dn[
R"UR5n[
R"5Ul[URS-U-5UlURS4UlO;[
R"UR URUR5UlSUR;dSUR;aSUl[R#5 g![R#5 f=f)z_
for ubuntu 20.10 not able get ppd list from cups server.
so fetching ppds hplip ppds directly
rx�/�scanjet�digital_senderN)rWrXrYrZr[r�
getSystemPPDs�ppds�ppd_name�
getPpdNamer��getPPDPath1r�r|r��getPPDFile2r�ra)r?�ppdNames  rEr��SetupDialog.findPrinterPPD	s���
	�&�&�w�r�}�}�'=�>�	1��*�*�,�D�I��D�M��9�9��/�/�$�*�*�5�� �,�,�.��	� #�D�I�I��O�g�$=� >��
�"&�-�-��!4���"&�!1�!1��G�G�T�Z�Z����"4����D�J�J�&�*:�d�j�j�*H�!%���
�.�.�0��L�.�.�0�s�DE�Ec��[R[[R55 [
R"URUR5uUl	pUR(aSUl
OaSUl
[XRSU-55 SUl
URRS5 URR!S5 [R#5 g![R#5 f=f)NTFz^<b>Unable to locate the HPLIP Fax PPD file:</b><p>%s.ppd.gz</p><p>Fax setup has been disabled.)rWrXrYrZr[r�
getFaxPPDFiler�r��fax_ppdr�rtr�r�r�r�r�ra)r?�fax_ppd_name�nicks   rEr��SetupDialog.findFaxPPD&s����&�&�w�r�}�}�'=�>�
	1�/3�/A�/A�������0%�,�D�L�,��|�|�$(��!�$)��!��$�	�	�t�xD�D�!E�F�!&����%�%�0�0��7��%�%�0�0��7��.�.�0��L�.�.�0�s�B-C0�0Dc
���[R"S/5Ul[R	UR5 [
R"5Vs/sHoRPM snUl[R"UR5u	p#pEpgp�n
[R"URSS5RSS5S5nUn[R"S/5n
URUR;aX�RUR;dX�;GaURSSR!U
Vs/sHo�U;dM
UPM sn5-5n["R%UUR'5U["R(["R*-["R,5["R(:XaXSnUS
U--nUU
;a@URUR;dUURUR;a	US
U--
nOUS-
nMUSUlgS	UlUR0R3U5 [R	U5 X�lg	s snfs snf)
N�hp�seriesrx�Series�_z�<b>One or more print queues already exist for this device: %s</b>.<br> <b>Would you like to install another print queue for this device ?</b>�, rT�_%dr	F)r�getSupportedCUPSDevices�installed_print_devicesr�r�r�getPrintersrA�installed_queuesr�r�r�xstrip�replace�getSupportedCUPSPrinterNamesr��join�QMessageBox�warning�windowTitle�Yes�No�NoButton�printer_name_okr�rIr�)r?�pr�r�r�r�r�r�r�r�r��
default_modelr��installed_printer_names�printer�	warn_textr��ts                  rEr��!SetupDialog.setDefaultPrinterName7sG��'-�'E�'E�t�f�'M��$��	�	�$�.�.�/�15�1A�1A�1C� D�1C�A���1C� D���HN�H]�H]��O�O�I�E���V�t�����U�]�]��b�&�!�'�(�B�/��6�
�%��"(�"E�"E�t�f�"M���O�O�t�;�;�;��Pl�Pl�mq�m|�m|�P}�@}��6��	�	�#r�"&�)�)�D[�,w�D[��ov�_v�W�D[�,w�"x�#y�z�I��#�#�D�$(�$4�$4�$6�$-�$/�O�O�$/�N�N�%3�$/�$8�$8�:�
>I�_�_�M����$�u�q�y�0�A��!8�8�t���VZ�Vr�Vr�?r�vw�@D�@\�@\�]a�]l�]l�@m�wm�$���	�1�����F�A��(-��$��#���� � �(�(��6��	�	�,��(����I!E��-xs�I!�=	I&�
I&c
��[R"S/5Ul[R	UR5 UR
R
SS5Ul[R"UR5u	pp4pVpxn	[R"UR
SS5R
SS5S5n
U
S-n[R"S/5nURUR;aX�RUR;dX�;GaURS	S
RUV
s/sHo�U
;dM
U
PM sn
5-5n[RUUR!5U[R"[R$-[R&5[R":XaXSnUS
U--nUU;a@URUR;dUURUR;a	US
U--
nOUS-
nMUSUlgSUlUR*R-U5 X�lgs sn
f)N�hpfaxzhp:zhpfax:r�rxr�r��_faxz�<b>One or more fax queues already exist for this device: %s</b>.<br> <b>Would you like to install another fax queue for this device ?</b>r�rTr�r	F)rr��installed_fax_devicesr�r�r�r�r�r�rr�r�r�r�r�rrrrrr�r�rIr�)r?r�r�r�r�r�r�r�r�r�rr��installed_fax_names�
fax_devicer
r�rs                 rEr��SetupDialog.setDefaultFaxNameas)��%+�%C�%C�W�I�%N��"��	�	�$�,�,�-����.�.�u�h�?���HN�H]�H]��L�L�I�E���V�t�����U�]�]��b�&�!�'�(�B�/��6�
�!�6�)��$�A�A�7�)�L���L�L�D�6�6�6�8�Ga�Ga�bf�bn�bn�Go�;o��.��	�	�\��	�	�8K�f�8K�*�[e�Oe�:�8K�f�g�h�i�I��#�#�D�$(�$4�$4�$6�$-�$/�O�O�$/�N�N�%3�$/�$8�$8�:�
>I�_�_�M���� �5�1�9�,�A��!4�4�4�<�<�t�Oi�Oi�;i�mn�vz�wQ�wQ�RV�R^�R^�w_�n_� �E�A�I�-�����F�A��$)�� ��������$�$�X�.� �
���+gs�-	H<�:H<c�l�[U5UlSUlUR(d3URR	URS55 SUlGO9URUR:Xa]URS5nURR	U5 URR	U5 SUlSUlSUl	O�URUR;a2URR	URS55 SUlOvUR(aeURUR:waKSUl	SUlURR[S5URR55 UR5 UR5 g)NTz&You must enter a name for the printer.F�OThe printer name and fax name must be different. Please choose different names.zHA printer already exists with this name. Please choose a different name.ztextEdited(const QString &))rr�rr�r�r�r�r�r�r�r��emit�SIGNALrR�
setIndicatorsr��r?rrgs   rEr��*SetupDialog.PrinterNameLineEdit_textEdited�sa��&�q�M���#���� � ��$�$�/�/��	�	�B�C�
E�#(�D� �
�]�]�d�/�/�
/��	�	�a�c�A��$�$�/�/��2�� � �+�+�A�.�$�D��#(�D� �*.�D�'�
�
�
�$�"7�"7�
7��$�$�/�/��	�	�Z�1\�
]�#(�D� �
�
(�
(��}�}�� 1� 1�1�.3��+�'+��$��$�$�)�)�&�1N�*O�*.�*>�*>�*C�*C�*E�G�	
����� � �"rGc�l�[U5UlSUlUR(d3URR	URS55 SUlGO9URUR:Xa]URS5nURR	U5 URR	U5 SUlSUlSUl	O�URUR;a2URR	URS55 SUlOvUR(aeURUR:waKSUl	SUlURR[S5URR55 UR5 UR5 g)NTzYou must enter a fax name.FrzDA fax already exists with this name. Please choose a different name.ztextEdited(const QString&))rr�r�r�r�r�r�r�rr�r�rrrRrr�rs   rEr��&SetupDialog.FaxNameLineEdit_textEdited�s[��"�1�
��
�����}�}�� � �+�+��	�	�6�7�
9�$�D��
�]�]�d�/�/�
/��	�	�a�c�A��$�$�/�/��2�� � �+�+�A�.�#(�D� �$�D��*.�D�'�
�]�]�d�3�3�
3�� � �+�+�D�I�I�V�-X�
Y�$�D��
�
(�
(��}�}�� 1� 1�1�.3��+�#'�� ��(�(�-�-�f�5Q�.R�.2�.F�.F�.K�.K�.M�O�	
����� � �"rGc�<�URR5(d7URRS5 URR	S5 O6URRS5 URR	S5 UR5 gr)r�rr�r�r�r�rSs rEr��&SetupDialog.SetupPrintGroupBox_clicked�ss���&�&�0�0�2�2��%�%�2�2�5�9��%�%�0�0��7��%�%�2�2�4�8��%�%�0�0��6�� � �"rGc�$�UR5 grQ)r�rSs rEr��$SetupDialog.SetupFaxGroupBox_clicked�s��� � �"rGc�<�UR(aAURR[S55 URR	S5 OURR	S5 UR(aAURR[S55 URR	S5 gURR	S5 g![
a N{f=f![
a N�f=f![
a gf=f![
a gf=f)Nrxr�)rr�r�r|rKr�r�r�rSs rEr�SetupDialog.setIndicators�s�������$�$�/�/��B��8�
��(�(�6�6�r�:�
��(�(�6�6�.�0�
���� � �+�+�C��G�4�
��(�(�6�6�r�:�
��(�(�6�6�.�0��#"�
��
��"�
��
��"�
��
��"�
��
�sG�C�C.�%C>�D�
C+�*C+�.
C;�:C;�>
D�
D�
D�Dc�2�URS:Xa�[RRS5(d�SSKJn SSKJn URSSS9n[RS	5 [RU5 URRS
S5n[RS5 [RU5 UHHnX5R5UR5:Xa![RS
5 USUl
MH g UR$R'5(dUR(R'5(atUR*R-UR.=(a! UR0=(a UR2SL=(d UR4=(a UR65 gUR*R-S5 g![a.nU[l[R!SU-5 ["eSnAff=f)z�
If the device is on usb and os doesn't supports ipp-usb we assign new ipp uri to the printer.
this is for driverless usb printer held by ippusbxd service on ubuntu 20 and above.
For network devices follow the old code.
r�z/usr/share/ipp-usb/quirksr)�local)�detectLocalDevicesr��
)r�r�z  Detected devices from local.py r�� z current pritner is: z%Assign ipp URI to the current printer�printer_uriNz*An error occured during network probe.[%s]F)r�r�r��isdirr`r$�
base.localr%r�r�r�r��lowerr�r�r�r��ERROR_INTERNALr�rr�r�r�r�rr�r�r�)r?r$r%�detected_devices�current_printer�key�socket_errors       rEr��SetupDialog.setAddPrinterButton�s����8�8�u��R�W�W�]�]�3N�%O�%O�"�5�
%�#(�#;�#;��2�#;�#N� ��	�	�<�=��	�	�*�+�"&�*�*�"4�"4�S�#�">���	�	�1�2��	�	�/�*�+�C�'�,�2�2�4��8M�8M�8O�O��	�	�"I�J�*:�=�*I����
,��"�"�,�,�.�.�$�2G�2G�2Q�2Q�2S�2S��O�O�&�&��(8�(8�(p�T�=Q�=Q�(p�VZ�Vd�Vd�lp�Vp�(M�(,���(K�4�;K�;K�
N�
�O�O�&�&�u�-���
%�+����	�	�@�<�O�Q�$�$��	
%�s�CG�G�
H�()H�Hc��UR(a�UR5nU[R:Xd(U[R:XdU[R
:XaU[R:XaUR5 UR(aUR5 UR(GaUR5[R:Xa�URR5UR:waSUlUR R5UR":waSUlUR(dUR$(aa['UR R55Ul['URR55UlUR)S5 UR+5 g)NTF)r��setupPrinterr�
IPP_FORBIDDEN�IPP_NOT_AUTHENTICATED�IPP_NOT_AUTHORIZED�IPP_OK�
flashFirmwarer��
printTestPager��setupFaxr�rR�
fax_numberr��NameCompanyLineEdit�fax_name_companyr�rr�r�)r?�	print_stss  rE�
addPrinter�SetupDialog.addPrintersD������)�)�+�I��D�.�.�.�)�t�?Y�?Y�2Y�]f�jn�kB�kB�^B���D�K�K�'��"�"�$��#�#��"�"�$��>�>�>��}�}��$�+�+�-��)�)�.�.�0�D�O�O�C�,0�D�)��+�+�0�0�2�d�6K�6K�K�15�D�.��(�(�D�,F�,F�,6��0�0�5�5�7�-9�D�)�&0��1G�1G�1L�1L�1N�&O�D�O��0�0��7��
�
�rGc���URRSS5(aw[R"UR5nUR5(a[RS5 O[XRS55 UR5 gg![aAn[XRSUR<SUR<S355 SnAgSnAff=f)Nzfw-downloadFzFirmware download successful.
z#<b>Firmware download is Failed.</b>z<<b>Error opening device. Firmware download is Failed.</b><p>� (�).)r�r�r�Devicer��downloadFirmwarer�r�rtr�r�r��msg�opt�r?r��es   rEr8�SetupDialog.flashFirmware:s����7�7�;�;�}�e�,�,�
��M�M�$�/�/�2��
�%�%�'�'��H�H�>�?��d�I�I�=�%?�@����	�-���
n��$�	�	�^_�^c�^c�ef�ej�ej�k�!m�n�n��
n�s� B�
C%�$7C � C%c���[Rn[R[	[
R55 [RRURS5(dG[UR5URURSURSUR4nOF[UR5URURURSSUR4n[R "[R"[$SU/UQ76up[&R)[*R,"S/55 U[R.:wa2[R15 [3XR5SU-55 O0[6R8"[:URUR5 [R15 U$![R15 f=f)NrrxrUr�z0<b>Printer queue setup failed.</b> <p>Error : %s)r�IPP_BAD_REQUESTrWrXrYrZr[r�r�r�r�r
r�r��print_location�
print_desc�cups_operationr?rcr�r�rr�r7rartr�r�	sendEvent�EVENT_CUPS_QUEUES_ADDED)r?�status�
add_prnt_args�
status_strs    rEr3�SetupDialog.setupPrinterMsu���%�%���&�&�w�r�}�}�'=�>�	1��7�7�>�>�$�.�.��"3�4�4�!4�T�5F�5F�!G����!%�!4�!4�b�$�.�.��:K�T�_�_�!^�
�"5�T�5F�5F�!G����!%�!4�!4�d�n�n�Q�6G��T�_�_�!^�
�"&�!4�!4�����5�$�"H�9F�"H��F��I�I�f�4�4�d�V�<�=�����$��2�2�4��$�	�	�F��S�!U�V���� 7� $����1B�1B�D�
�.�.�0��
��
�.�.�0�s�FG � G6c��[Rn[R[	[
R55 [RRUR5(dP[R"URURURSURUR5upOO[R"URURURURSUR5up[ R#[$R&"S/55 U[R(:wa2[R+5 [-XR/SU-55 O0[0R2"[4URUR5 [R+5 U$![R+5 f=f)Nrxrz+<b>Fax queue setup failed.</b><p>Error : %s)rrLrWrXrYrZr[r�r�r�r�r?r�r��fax_location�fax_descr�r�rr�r7rartr�rrPrQ)r?rRrTs   rEr:�SetupDialog.setupFaxjsM���%�%���&�&�w�r�}�}�'=�>�	1��7�7�>�>�$�,�,�/�/�%)�_�_�T�]�]�59�\�\�4�CT�CT�VX�Z^�Zf�Zf�im�iv�iv�&x�"��
�&*�_�_�T�]�]�59�\�\�4�CT�CT�VZ�Vb�Vb�df�hl�hu�hu�&w�"��
�I�I�f�4�4�g�Y�?�@�����$��2�2�4��$�	�	�A�J�N�!P�Q���� 7� $���d�m�m�=�
�.�.�0��
��
�.�.�0�s�E-G�Gc� �[R[[R55 [
R"URSS9nUR5 SnSnUS-
nU(a>[UR55Ul[UR55Ul
O�UR!5S:Xa^Sn[#U5upgUS:XdUS:Xa&UR%5 [R'5 gUR)Xg5nUS:waS	nM[UR*(aUR-UR5 UR.(aUR1UR5 SnUR%5 U(aQU(aJURLROUR5 URPROUR5 [R'5 g! [RS5 SUlSUl
N�=f![2a� UR5S
5n	[R7[U	55 [8R;UUR=5U	[8R>[8R@-[8RB-[8RD-[8RF5[8RB:XaGMm[HRKS5 SnUS
:�aGM�Of=fGM�!UR%5 f=f![2a� UR5S5n	[R7[U	55 [8R;UUR=5U	[8R>[8R@-[8RB-[8RD-[8RF5[8RB:XaGMOf=fGM�![R'5 f=f)NT)�disable_dbusrr	zIO Errorrxz/Enter the printer's username password password
��zPInvalid Username or Password!.
Rernter the printer's username password password
zP<b>Device I/O Error</b><p>Could not communicate with device. Device may be busy.r�F�zMUnable to communicate with the device. Please check the device and try again.))rWrXrYrZr[r�getFaxDevicer��openr�getPhoneNumr;�getStationNamer=r�r��isAuthRequiredr|r�ra�getCDMTokenr��setStationNamer��setPhoneNumr�r�r�r��criticalr�Retry�Defaultr\�Escaper�time�sleepr�rIr<)
r?�readr��triesr��
promptText�username�password�respCode�
error_texts
          rEr��#SetupDialog.readwriteFaxInformation�sj��\	1��*�*�7�2�=�=�+A�B�� � ����D�A�A��S��F�F�H�>"� !��!��"�!�Q�J�E�4&�#'�%C�:D�Q�]�]�_�:U���@J�1�K[�K[�K]�@^��(=�()�'7�'7�'9�T�'A�5g�
�.2�AO�0:�B<�,>�H�/7�2�~��R��06�H���	�
�.�.�0�Y89�}�}�08�8D�H�/7�3��>R�
�08�,1�'+�'A�'A�()�(8�(8��9N�9N�(O�'+�'<�'<�()�
�
�d�o�o�(F�,&*�� %����	��d��.�.�6�6�t���G��0�0�8�8��9N�9N�O��
�.�.�0��s%C�(+�	�	�*�(=�:<���@B��(=��*$)�*�-1�Y�Y�$v�.x�
� #�	�	�*�Z�*@� A�#.�#7�#7��8<�8H�8H�8J�8B�8C�8I�8I�K�L_�L_�8_�8C�8J�8J�9K�MX�M_�M_�9`�8C�8L�8L�$N�
R]�Qc�Qc�$d�%*� $�
�
�1�
�%*��#(�2�:�$)�$.�!*��E#��t���	��W�
�!%���g�"i�J��I�I�j��4�5�"�+�+�D�,0�,<�,<�,>�,6�,7�,=�,=��@S�@S�,S�,7�,>�,>�-?�AL�AS�AS�-T�,7�,@�,@�B�
FQ�EW�EW�X��
X�	
����n
�.�.�0�s��AO7�L)� 
L�+H%�3<G;�/1H%�!O7�A4H%�:L�=A)O7�;%H"� H%�%CL�&L�*L�L�
L�L�L&�&O7�)CO1�*O7�0O1�1O7�7P
c�*�[R"UR5nUR5 UR	5(a-UR5 UR
UR5 g[XRS55 UR5 g![apnUR[:Xa[XRS55 SnAg[XRSURUR4-55 SnAgSnAff=f![a [XRS55 gf=f![aAn[XRSUR<SUR<S355 SnAgSnAff=f)NzZ<b>No CUPS queue found for device.</b><p>Please install the printer in CUPS and try again.z6<b>Printer Error</b><p>An error occured: %s (code=%d).zn<b>Printer Error.</b><p>Printer is busy, offline, or in an error state. Please check the device and try again.zG<b>Unable to print to printer.</b><p>Please check device and try again.z<b>Device error:</b><p>rBrC)rrDr�r_�isIdleAndNoErrorr�r9r�r�rG�$ERROR_NO_CUPS_QUEUE_FOUND_FOR_DEVICErtr�rFrHs   rEr9�SetupDialog.printTestPage�s^��	��
�
�d�o�o�.�A�
�����
�%�%�'�'��G�G�I�l�����(9�(9�:��d�I�I�I�%J�K��G�G�I��!�l��5�5�$H�H�%�d�I�I� |�-~���&�d�I�I� X�\]�\a�\a�cd�ch�ch�[i� i�-k�l�l��l���
`��$�	�	�]�!_�`�
`���	E��d�I�I�56�U�U�A�E�E�B�D�
E�
E��	E�sF� E�D�B � 
D�*.D�3D�D�$E�E�
F�7F
�
Fc��grQrrrSs rEr��SetupDialog.initRemovePages��rGc
�2�UR[5 URRUR	S55 UR[5 URRS5 URRS5 URR5R5 [R"SS/5Ul[ R#UR5 UR(d+[%XR	S55 UR'5 gURR)[+UR55 UR	S5UR	S5UR	S5UR	S	5/nURR-[+U55 URR/U5 [0R2[0R4-nS
nURGH�n[7UR5nUR8R;UR<5 URR?US
U5 [R@"URB5u	pgp�p�p�nURBb9URBURB:XaURE[0RF5 [I[KURL55nUROU5 URQ[0RRURL5 URRUUSU5 US:XaUR	S5nOUR	S
5n[IU5nUROU5 URRUUSU5 [I[KURB55nUROU5 URRUUSU5 US-
nGM� URRW5 g)NzStep 1 of 1Fr�rzr<b>No printers or faxes found to remove.</b><p>You must setup a least one printer or fax before you can remove it.�SelectzPrinter (Queue) Name�Typersrr	�Fax�Printerrr),r
�PAGE_REMOVE�StepTextrIr�r�
BUTTON_REMOVEr�r�r��RemoveDevicesTableWidget�verticalHeader�hider�getSupportedCUPSPrinters�installed_printersr�r�rtr�rurirvrwrZrxry�	QCheckBox�stateChangedr;�CheckBox_stateChanged�
setCellWidgetr�r��
setCheckState�Checkedr�r|rAr}�setData�UserRoler~r)r?r�r�r�r�widgetr�r�r�r�r�r�r�r�r�r��typs                 rEr��SetupDialog.showRemovePage
s������%��
�
���d�i�i�
�6�7����=�)����"�"�5�)����"�"�5�)��%�%�4�4�6�;�;�=�"(�"A�"A�BF��CQ�#R����	�	�$�)�)�*��&�&��d�I�I�E�F�
G��J�J�L���%�%�1�1�#�d�6M�6M�2N�O��9�9�X�&��	�	�"�)$�%)�Y�Y�v�%6��	�	�,�8O�Q��	
�%�%�4�4�S��\�B��%�%�?�?��H��#�#�b�&6�&6�6�����(�(�A��t�<�<�=�F����'�'��(B�(B�C��)�)�7�7��Q��G��%�%�a�l�l�3�
J�H�S��4�T����*�t���!�,�,�/N��$�$�R�Z�Z�0� ��Q�V�V��-�A�
�J�J�u��
�I�I�b�k�k�1�6�6�*��)�)�1�1�#�q�!�<��7�"��i�i��&���i�i�	�*�� ��%�A�
�J�J�u���)�)�1�1�#�q�!�<� ��Q�\�\�!2�3�A�
�J�J�u���)�)�1�1�#�q�!�<��1�H�C�;)�>	
�%�%�=�=�?rGc�D�[URR55H^nURRUS5nUR	5[
R:XdMCURRS5  g URRS5 g)NrTF)	�ranger��rowCount�
cellWidget�
checkStaterZr�r�r�)r?r�r�r�s    rEr��!SetupDialog.CheckBox_stateChangedHsw����6�6�?�?�A�B�C��2�2�=�=�c�1�E�F�� � �"�b�j�j�0����*�*�4�0��	C�
�O�O�&�&�u�-rGc
�@�URR5nU[:XGa�URR	5Ul[
URR55Ul	URR5Ul[
URR55Ul[UR R#UR R555SUlUR&R5UlUR*R	5(aN[-USSS9nUR/5 UR0[2:XaSUlUR4Ul	SUlUR*R	5(dUR95 ggU[::Xa�UR<R?5nUR<RAUS5RBUl![DRF"URB5Ul$[DRJ"URB5u	pEpgp�p�n[LRN"U5RQ5Ul)URU5 gU[V:XGa2URXR	5Ul-UR\R	5Ul/UR`R	5Ul1[e[
URfR555Ul4[e[
URjR555Ul6[e[
URnR555Ul8[e[
URrR555Ul:URw5 gU[x:XGa�[{UR|R55GH�nUR|R�US5n
U
R�5[�R�:XdMDUR|RAUS5n[
[�UR�[�R�555n[DR�"U5n[�R�SU-5 [�R�"[�R�[�SX5unnU[�R�:wac[�XR�S	U<S
U<355 U[�R�:Xd(U[�R�:XdU[�R�:Xa O$GMd[�R�"[�UU5 GM� UR�5 g[�R�S5 g)NrF)r��
standaloneTr�r	zRemoving printer: %srUz<b>Unable to delete 'z' queue. </b><p>Error : �
Invalid page!)Y�
StackedWidget�currentIndexrr�rr�rr�rRr�r��valuer�r$r��	value_intr��itemDatar�r.r�r�rry�successr�hnr�r�rmrt�
currentRow�itemr�r�queryModelByURIr�r�r�normalizeModelNamer+r�r�r�r�r�r�r�r�r�r
�PrinterLocationLineEditrMr�rN�FaxDescriptionLineEditrX�FaxLocationLineEditrWr?rr�r�r�r�r�rZr��	value_str�datar��getDeviceURIByPrinterNamer�r�rrO�
delPrinterrcr7rtr�r4r5r6rrP�EVENT_CUPS_QUEUES_REMOVEDr�r�)r?rrur�r�r�r�r�r�r�r�r�r�r�r�r	�urirRrTs                   rEr��SetupDialog.NextButton_clickedUs9�����+�+�-������-�-�7�7�9�D�K�#�D�$<�$<�$A�$A�$C�D�D�J��0�0�6�6�8�D�L�$�T�%8�%8�%=�%=�%?�@�D�K�(��)@�)@�)I�)I��'�'�4�4�6�*8� 9�9:� <�D��$(�$G�$G�$T�$T�$V�D�!��"�"�,�,�.�.�%�d�t��N���	�	���;�;�"3�3�"&�D�K�!$���D�J�$�D�H��&�&�0�0�2�2��$�$�&�3��,�
��)�)�4�4�6�C�"�5�5�:�:�3��B�M�M�D�O��,�,�T�_�_�=�D�G�LR�La�La����M!�I�H�S��4�T��2�2�5�9�?�?�A�D�J��#�#�%�
�"�
"�#'�#<�#<�#F�#F�#H�D� �#�6�6�@�@�B�D��!�2�2�<�<�>�D�N�"5��4�7�7�<�<�>�?�#A�D��1��4�:�:�?�?�A�B�D�D�O�/��4�6�6�;�;�=�>�@�D�M� 3��4�3�3�8�8�:�;�!=�D��
�O�O��
�+�
��T�:�:�C�C�E�F���6�6�A�A�#�q�I���$�$�&�"�*�*�4��8�8�=�=�c�1�E�D�(��4�9�9�R�[�[�3I�)J�K�G� �:�:�7�C�C��I�I�4�w�>�?�)-�)<�)<�����5�$�*I�&�F�J�����,�!�$�	�	�SZ�\f�g�)i�j�!�T�%7�%7�7�6�T�E_�E_�;_�ci�mq�nE�nE�dE�!�dE����5�s�G�E�#G�(
�J�J�L�
�I�I�o�&rGc���URR5nU[:Xa0UlUR	5 gU[
:XaUR
5 g[RS5 g)Nr�)	r�r�rmr�r�r�r�r�r��r?rs  rEr��SetupDialog.BackButton_clicked�sT�����+�+�-������D�L��"�"�$�
�"�
"�� � �"�
�I�I�o�&rGc�$�UR5 grQ)r�rSs rEr�� SetupDialog.CancelButton_clicked�s���
�
�rGc�\�URRU5 URU5 grQ)r�r�updateStepText)r?�pages  rEr
�SetupDialog.displayPage�s$�����*�*�4�0����D�!rGc��U[:Xa+URRURS55 gU[:Xa+URRURS55 gU[
:Xa+URRURS55 gU[:Xa+URRURS55 gg)NzAdd PrinterzNext >�Finish�Remove)r�r�rIr�r	�
BUTTON_FINISHr�)r?r�s  rEr�SetupDialog.setNextButton�s����$�$��O�O�#�#�D�I�I�m�$<�=�
�K�
��O�O�#�#�D�I�I�h�$7�8�
�M�
!��O�O�#�#�D�I�I�h�$7�8�
�M�
!��O�O�#�#�D�I�I�h�$7�8�"rGc	��URRURSUS-<SURS-<355 g)NzStep r	z of )r�rIr�r�r�s  rEr��SetupDialog.updateStepText�s5���
�
���d�i�i� ��s�D�M�M�!�O�)5�6�	7rGc�.�[RSX5$rarcrfs   rEri�SetupDialog.__tr�rkrG),r�r�r�r�r�r�r�rXrWr�r=r�r;r�r�r�r�r�rr�r�r�r�r�r�r�r�r�r�r�r�rNrMr�r�r�r�r�rr�r�r�r�r�)NFrlrQ)Armrnrorprr�r�r�r�r�r�r�r�rr!r&r)r/r�r�r�r�r�r@r�r�r�r�r�r�rkrfrNr�r�r�r�r�r�r�r�r�r�r�r�rr�r?r8r3r:r�r9r�r�r�r�r�r�r
r�rr�r�rqrrrGrErbrb�sE��1�:-�0m�^>�$�L#�
)��M�B�3�1�
0�?�
.�
�2�
�.�
�3�	���G�U'�n&-�P2�
3�!�>B�H�&	'�1�:1�"(�T'�R #�D #�D#�#��6".�P�:
�&�:�6]1�~�F
�<@�|.�G'�R
'��"�!.�9�7�3rGrb)NT)7r�r\�
subprocessr��base.gr`rrrr�prntr�
base.codes�ui_utils�	installerr
�base.sixextrrr
�PyQt5.QtCore�PyQt5.QtGuird�PyQt5.QtWidgets�setupdialog_baser�plugindialogr�wifisetupdialogrrrr�r�rrrmr�rr	r�r�r�rrr�r�r�rrrvr|r�r~rbrrrGrE�<module>r�s��.���
��,�,����#�<�<�"���(�&�?�>���M������������
����
��
��
�������A3�W�A3�H
�
� %�,�%�N3�'�9�N3��U�"���!�"���>��M��K�K�<�=�>�s$�
B/�"C
�/C�C�
C&�%C&

Filemanager

Name Type Size Permission Actions
__init__.cpython-313.pyc File 129 B 0644
aboutdialog.cpython-313.pyc File 1.67 KB 0644
aboutdialog_base.cpython-313.pyc File 12.62 KB 0644
aligndialog.cpython-313.pyc File 41.93 KB 0644
aligndialog_base.cpython-313.pyc File 40.41 KB 0644
cleandialog.cpython-313.pyc File 15.76 KB 0644
cleandialog_base.cpython-313.pyc File 17.91 KB 0644
colorcaldialog.cpython-313.pyc File 21.01 KB 0644
colorcaldialog_base.cpython-313.pyc File 36.36 KB 0644
devicesetupdialog.cpython-313.pyc File 12.45 KB 0644
devicesetupdialog_base.cpython-313.pyc File 8.12 KB 0644
deviceuricombobox.cpython-313.pyc File 6.62 KB 0644
devmgr5.cpython-313.pyc File 113.65 KB 0644
devmgr5_base.cpython-313.pyc File 39.38 KB 0644
devmgr_ext.cpython-313.pyc File 3.74 KB 0644
fabgrouptable.cpython-313.pyc File 2.54 KB 0644
fabnametable.cpython-313.pyc File 1.14 KB 0644
fabwindow.cpython-313.pyc File 38.92 KB 0644
fabwindow_base.cpython-313.pyc File 14.44 KB 0644
faxsetupdialog.cpython-313.pyc File 21.82 KB 0644
faxsetupdialog_base.cpython-313.pyc File 10.13 KB 0644
filetable.cpython-313.pyc File 22.07 KB 0644
firmwaredialog.cpython-313.pyc File 4.36 KB 0644
firmwaredialog_base.cpython-313.pyc File 6.12 KB 0644
infodialog.cpython-313.pyc File 14.75 KB 0644
infodialog_base.cpython-313.pyc File 10.15 KB 0644
linefeedcaldialog.cpython-313.pyc File 5.25 KB 0644
linefeedcaldialog_base.cpython-313.pyc File 4.81 KB 0644
loadpapergroupbox.cpython-313.pyc File 4.68 KB 0644
makecopiesdialog.cpython-313.pyc File 3.59 KB 0644
makecopiesdialog_base.cpython-313.pyc File 4.37 KB 0644
mimetypesdialog.cpython-313.pyc File 1.94 KB 0644
mimetypesdialog_base.cpython-313.pyc File 6.68 KB 0644
nodevicesdialog.cpython-313.pyc File 3.09 KB 0644
nodevicesdialog_base.cpython-313.pyc File 8.34 KB 0644
plugindiagnose.cpython-313.pyc File 4.33 KB 0644
plugindiagnose_base.cpython-313.pyc File 5.51 KB 0644
plugindialog.cpython-313.pyc File 17.44 KB 0644
plugindialog_base.cpython-313.pyc File 11.7 KB 0644
pluginlicensedialog.cpython-313.pyc File 1.28 KB 0644
pluginlicensedialog_base.cpython-313.pyc File 8.41 KB 0644
pqdiagdialog.cpython-313.pyc File 5.04 KB 0644
pqdiagdialog_base.cpython-313.pyc File 4.79 KB 0644
printdialog.cpython-313.pyc File 9.78 KB 0644
printdialog_base.cpython-313.pyc File 9.83 KB 0644
printernamecombobox.cpython-313.pyc File 6.69 KB 0644
printsettings_base.cpython-313.pyc File 139 B 0644
printsettingsdialog.cpython-313.pyc File 4.78 KB 0644
printsettingsdialog_base.cpython-313.pyc File 4.88 KB 0644
printsettingstoolbox.cpython-313.pyc File 88.52 KB 0644
printtestpagedialog.cpython-313.pyc File 7.25 KB 0644
printtestpagedialog_base.cpython-313.pyc File 7.18 KB 0644
queuesconf.cpython-313.pyc File 15.2 KB 0644
readonlyradiobutton.cpython-313.pyc File 2.24 KB 0644
scandialog.cpython-313.pyc File 123.01 KB 0644
sendfaxdialog.cpython-313.pyc File 57.92 KB 0644
sendfaxdialog_base.cpython-313.pyc File 39.46 KB 0644
settingsdialog.cpython-313.pyc File 5.55 KB 0644
settingsdialog_base.cpython-313.pyc File 25.92 KB 0644
setupdialog.cpython-313.pyc File 79.67 KB 0644
setupdialog_base.cpython-313.pyc File 38.46 KB 0644
setupdialog_base5.cpython-313.pyc File 38.43 KB 0644
systemtray.cpython-313.pyc File 41.3 KB 0644
systrayframe.cpython-313.pyc File 12.48 KB 0644
systrayframe_base.cpython-313.pyc File 10.84 KB 0644
ui_utils.cpython-313.pyc File 28.62 KB 0644
upgradedialog.cpython-313.pyc File 6.38 KB 0644
upgradedialog_base.cpython-313.pyc File 5.98 KB 0644
wifisetupdialog.cpython-313.pyc File 54.96 KB 0644
wifisetupdialog_base.cpython-313.pyc File 62.3 KB 0644
Filemanager