
    =	f;                     6   d dl Z d dlZd dl d dlmZmZ d dlmZ d dl ddl	 d dl
mZ d dl d dl d dl ddlmZ ddlmZ ej(                  Zer	 d d	lmZ esej3                  d        G d de      Zd ZddZ G d dee      Zy# e$ r d
ZY ;w xY w)    N)*)deviceutils)cups   )
to_unicode)	Ui_Dialog)DEVICEURICOMBOBOX_TYPE_FAX_ONLY)faxFzFax disabled.c                   6    e Zd ZddZd	dZd Zd Zd Zd
dZy)PasswordDialogNc                    t         j                  | |       | j                  t        t	        dd                   || _        t        |       }|j                  dddd       |j                  d       t        |       | _
        |j                  | j                  dddd       t        |       | _        |j                  | j                  dd       t        |       | _        | j                  j                  t        j                          |j                  | j                  dddd       t        |       | _        |j                  | j"                  dd       t        |       | _        | j$                  j                  t        j&                         |j                  | j$                  dddd       t)        |       | _        |j                  | j*                  dd       t)        |       | _        |j                  | j,                  dd       | j/                          | j1                  t3        d	d
      j5                  | j7                                      | j*                  j8                  j;                  | j<                         | j,                  j8                  j;                  | j>                         | j$                  j@                  j;                  | j<                         y )Nhp_logo128x128      r   r         i     )!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/faxsetupdialog.pyr   zPasswordDialog.__init__8   s)   v&5Y	!BCDT"!!"b"b1!%d|--q!Q:!'//A6 )$)))*:*:;..1a;!'//A6 )$)))*<*<=..1a;'-**Aq1 +D 1..15E#sO..t/C/C/EFG!!))$++6%%--dkk:++33DKK@    c                     | j                   j                  |       |s7| j                   j                  d       | j                   j                  d       y y )NTz'QLineEdit {background-color: lightgray})r$   setTextsetReadOnlysetStyleSheet)r7   defUserallowUsernameEdits      r=   setDefaultUsernamez!PasswordDialog.setDefaultUsernamea   sI    %%g. !!--d3!!//9; !r>   c                 H    t        | j                  j                               S N)r   r$   textr7   s    r=   getUsernamezPasswordDialog.getUsernameh       $//44677r>   c                 H    t        | j                  j                               S rG   )r   r(   rH   rI   s    r=   getPasswordzPasswordDialog.getPasswordk   rK   r>   c                    | j                  | j                  d             | j                  j                  | j                  | j                               | j
                  j                  | j                  d             | j                  j                  | j                  d             | j                  j                  | j                  d             | j                  j                  | j                  d             y )Nz+HP Device Manager - Enter Username/Passwordz	Username:z	Password:OKCancel)	setWindowTitle_PasswordDialog__trr    r@   r   r"   r'   r+   r,   rI   s    r=   r-   zPasswordDialog.languageChangen   s    IICD	F$$TYYt{{%;<&&tyy'=>&&tyy'=>!!$))D/2%%dii&9:r>   c                 0    t         j                  d||      S )NSetupDialogqApp	translater7   scs      r=   __trzPasswordDialog.__trw   s    ~~mQ22r>   )NNr   r   )TrG   )	__name__
__module____qualname__r   rE   rJ   rM   r-   rR    r>   r=   r   r   7   s"    'AR;88;3r>   r   c                 @    	 t        | d       }t        ||        y # w xY wrG   )r   	FailureUI)r   dlgs     r=   FailureMessageUIrc   {   s$    VT*#vs    c                     	 t        | d       }|d k7  r|j                  ||       |j                         t        j                  k(  r |j                         |j                         fS 	 	 y# w xY w)N) re   )r   rE   exec_r   AcceptedrJ   rM   )r   userNamerD   rb   s       r=   showPasswordUIri      so    
VT*t""8->?99;'***OO%s'89 		 + 	 	s   A#A) )A+c                       e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Zd Zd Zd Zd Zd Zd Zd Zd ZddZd Zd Zd ZddZy)FaxSetupDialogc                 ~   t         j                  | |       | j                  |        || _        | j	                          d | _        d| _        d| _        d| _        t               | _
        | j                  j                          | j                  j                          t        j                  d| j                         y )Nre   Tr   )r   r   setupUi
device_uriinitUidev
fax_numberfax_company_namecall_password_uiUserSettingsuser_settingsloaddebugQTimer
singleShotupdateUi)r7   r8   rn   s      r=   r   zFaxSetupDialog.__init__   s    v&T$ " $)^!  "!T]]+r>   c                 "   | j                   j                  j                  | j                         | j                  j                  j                  | j
                         | j                  j                  j                  | j                         | j                  j                  j                  | j                         | j                  j                  t               t        j                  t        j                  t        j                         | j!                  t#        t%        dd                   | j&                  r%| j                  j)                  | j&                         | j*                  j-                  d       | j.                  j-                  d       | j.                  j1                  t3        | j.                               | j4                  j-                  d       | j4                  j1                  t3        | j4                               | j6                  j-                  d       t9        | j.                  j;                               | _        t9        | j*                  j;                               | _        	 | j4                  j@                  j                  | jB                         | j4                  jD                  d   j                  | jF                         | j6                  j@                  j                  | jH                         | j6                  jD                  d   j                  | jJ                         | jL                  jN                  tP           j                  | jR                         d| _*        d| _+        d| _,        d| _-        y )Nr   r   2   zconst QString &F).CancelButtonr2   r3   CancelButton_clickedSaveBtnSaveBtn_ClickedFaxComboBoxDeviceUriComboBox_noDevicesFaxComboBox_noDevices DeviceUriComboBox_currentChangedFaxComboBox_currentChangedsetTyper
   signalSIGINTSIG_DFLr   r   r   rn   setInitialDeviceNameCompanyLineEditsetMaxLengthFaxNumberLineEditsetValidatorPhoneNumValidatorVoiceNumberLineEditEmailLineEditr   rH   rq   rr   editingFinished#VoiceNumberLineEdit_editingFinishedtextChangedVoiceNumberLineEdit_textChangedEmailLineEdit_editingFinishedEmailLineEdit_textChanged	tabWidgetcurrentChangedintTabs_currentChangedname_company_dirtyfax_number_dirtyvoice_number_dirtyemail_dirtyrI   s    r=   ro   zFaxSetupDialog.initUi   s   !!))$*C*CD$$T%9%9:44<<&&	(99AA++	-  !@AfmmV^^4 	5Y	!BCD??--doo>  --b1++B/++d445	7  --b1  --d667	9''+$T%;%;%@%@%BC *4+C+C+H+H+J K	 	  008844	6 	  ,,->?GG00	2 	**22..	0 	&&'89AA**	, 	%%c*2243K3KL"' %"' r>   c                 r   t         s,t        | | j                  d             | j                          y | j                  j                          | j                  j                  d       t        | j                  j                               | _        t        | j                  j                               | _        y )Nz<b>PC send fax support is not enabled.</b><p>Re-install HPLIP with fax support or use the device front panel to send a fax.</p><p>Click <i>OK</i> to exit.</p>r   )fax_enabledra   _FaxSetupDialog__trcloser   rz   r   setCurrentIndexr   r   rH   rq   r   rr   rI   s    r=   rz   zFaxSetupDialog.updateUi   s    dDII qr sJJL!!#&&q)$T%;%;%@%@%BC *4+C+C+H+H+J Kr>   c                    || _         | j                          | j                  | j                  j                          	 t	        j
                  | j                         | _        | j                          y # t        $ r t        |        Y y w xY wrG   )	rn   updateCoverpageTabrp   r   r   getFaxDeviceErrorCheckDeviceUIupdateHeaderTab)r7   rn   s     r=   r   z)FaxSetupDialog.FaxComboBox_currentChanged   sr    $!88HHNN	''8DH
 		  	$	s   $A4 4B
Bc                 Z    t        | | j                  d             | j                          y )Nz/<b>No devices that require fax setup found.</b>)ra   r   r   rI   s    r=   r   z$FaxSetupDialog.FaxComboBox_noDevices   s$    $		=? 	@

r>   c                 h    | j                  t        | j                  j                                      y rG   )saveNameCompanyr   r   rH   rI   s    r=   #NameCompanyLineEdit_editingFinishedz2FaxSetupDialog.NameCompanyLineEdit_editingFinished  $    Z(@(@(E(E(GHIr>   c                     d| _         y NT)r   r7   rY   s     r=   NameCompanyLineEdit_textChangedz.FaxSetupDialog.NameCompanyLineEdit_textChanged  
    "&r>   c                    d| _         d}t                	 	 t        j                  d|z         | j                  j                         dk(  r\| j                  dk(  rMd}	 t        |      \  }}|dk(  s|dk(  r	 t                |S | j                  j                  ||      }|dk7  rd}J	 | j                  j                  |       d}t                |S # t        $ r t        |        Y "w xY w# t                |c cY S xY w)NFz Saving station name %s to deviceT/Enter the printer's username password password
re      PInvalid Username or Password!.
Rernter the printer's username password password
)r   beginWaitCursorlogrw   rp   isAuthRequiredrs   ri   endWaitCursorgetCDMTokensetStationNamer   r   r7   rY   retn
promptTextusernamepasswordrespCodes          r=   r   zFaxSetupDialog.saveNameCompany  s    "'	$		<q@A88**,49N9NRV9V!SJ-;J-G*(#r>X^#( OK $(88#7#7(#K#s?)}J$''* OK	  $d#$ OKs+   AC AC C'$C* &C''C* *C;c                 h    | j                  t        | j                  j                                      y rG   )saveFaxNumberr   r   rH   rI   s    r=   !FaxNumberLineEdit_editingFinishedz0FaxSetupDialog.FaxNumberLineEdit_editingFinished%  s$    :d&<&<&A&A&CDEr>   c                     d| _         y r   )r   r   s     r=   FaxNumberLineEdit_textChangedz,FaxSetupDialog.FaxNumberLineEdit_textChanged(  s
     $r>   c                     d| _         d}t                	 	 t        j                  d|z         | j                  j                         dk(  r^| j                  dk(  rOd}	 t        |      \  }}|dk(  s|dk(  r|t                |c S | j                  j                  ||      }|dk7  rd}L	 | j                  j                  |       d}t                |S # t        $ r t        |        Y "w xY w# t                |c cY S xY w)NFzSaving fax number %s to deviceTr   re   r   r   )r   r   r   rw   rp   r   rs   ri   r   r   setPhoneNumr   r   r   s          r=   r   zFaxSetupDialog.saveFaxNumber+  s     %	$		:Q>?88**,49N9NRV9V!SJ-;J-G*(#r>X^#' OK $(88#7#7(#K#s?)}J$$$Q' OK	  $d#$ OKs+   A C AC C)&C, (C))C, ,C=c                 h    | j                  t        | j                  j                                      y rG   )saveVoiceNumberr   r   rH   rI   s    r=   r   z2FaxSetupDialog.VoiceNumberLineEdit_editingFinishedI  r   r>   c                     d| _         y r   )r   r   s     r=   r   z.FaxSetupDialog.VoiceNumberLineEdit_textChangedL  r   r>   c                     t         j                  d|z         d| _        || j                  _        | j                  j                          y )Nz/Saving voice number (%s) to ~/.hplip/hplip.confF)r   rw   r   ru   voice_phonesaver   s     r=   r   zFaxSetupDialog.saveVoiceNumberO  s<    		CaGH"')*&!r>   c                 h    | j                  t        | j                  j                                      y rG   )	saveEmailr   r   rH   rI   s    r=   r   z,FaxSetupDialog.EmailLineEdit_editingFinishedZ  s"    z$"4"4"9"9";<=r>   c                     d| _         y r   )r   r   s     r=   r   z(FaxSetupDialog.EmailLineEdit_textChanged]  s
    r>   c                     t         j                  d|z         d| _        || j                  _        | j                  j                          y )Nz0Saving email address (%s) to ~/.hplip/hplip.confF)r   rw   r   ru   email_addressr   r   s     r=   r   zFaxSetupDialog.saveEmail`  s<    		DqHI +,(!r>   c                 $    | j                          y rG   )r   rI   s    r=   r~   z#FaxSetupDialog.CancelButton_clickedk  s    

r>   c                    t        | j                  j                               x}| _        t        | j                  j                               }|| j                  k7  ri| j                  | j                        dk(  r| j                  j                  |       n(t        | j                  j                               | _        d| _        || j                  k7  rj| j                  | j                        dk(  r| j                  j                  |       n(t        | j                  j                               | _        d| _        y y )NF)
r   r   rH   rq   r   r   r@   rs   rr   r   )r7   current_fax_numcurrent_fax_companys      r=   r   zFaxSetupDialog.SaveBtn_Clickedn  s    ,6t7M7M7R7R7T,UU$/()A)A)F)F)HIdoo-!!$//2e;&&..?",T-C-C-H-H-J"K$)D!4#8#88##D$9$9:eC((001DE(243K3K3P3P3R(S%$)D! 9r>   c                 \    |dk(  r| j                          y|dk(  r| j                          yy)zU Called when the active tab changes.
            Update newly displayed tab.
        r   r   N)r   r   )r7   tabs     r=   r   z"FaxSetupDialog.Tabs_currentChanged  s/     !8  "AX##% r>   c                    t                	 	 t        | j                  j                               }t        j                  d|z         | j                  j                  |       t        | j                  j                               }t        j                  d|z         | j                  j                  |       t                y # t        $ r t        |        Y !w xY w# t                w xY w)Nzname_company = '%s'zfax_number = '%s')r   r   rp   getStationNamer   rw   r   r@   strgetPhoneNumr   r   r   r   )r7   name_companyrq   s      r=   r   zFaxSetupDialog.updateHeaderTab  s    	$)$((*A*A*CD		/,>?((00> !5!5!78
		-
:;&&..z: O  $d#$ Os$   B,C CC CC C*c                 (   | j                   j                  }t        j                  d|z         | j                  j                  |       | j                   j                  }t        j                  d|z         | j                  j                  |       y )Nzvoice_phone = '%s'zemail_address = '%s')ru   r   r   rw   r   r@   r   r   )r7   r   r   s      r=   r   z!FaxSetupDialog.updateCoverpageTab  sp    ((44		&45  ((5**88		(=89""=1r>   c                    | j                   r$| j                  j                  j                          | j                  r$| j
                  j                  j                          | j                  r$| j                  j                  j                          | j                  r$| j                  j                  j                          | j                  | j                  j                          |j                          y rG   )r   r   r   emitr   r   r   r   r   r   rp   r   r4   )r7   es     r=   
closeEventzFaxSetupDialog.closeEvent  s    ""$$4499;""$$4499;..335  ""2277988HHNN	
r>   Nc                 0    t         j                  d||      S )Nrk   rU   rX   s      r=   r[   zFaxSetupDialog.__tr  s    ~~.155r>   )r   rG   )r\   r]   r^   r   ro   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r~   r   r   r   r   r   r   r_   r>   r=   rk   rk      s    ,9!v
LJ'<F%<J'"> "*&&2$6r>   rk   r   )operatorr   base.gbaser   r   prntr   
base.codesui_utilsbase.sixextr   PyQt5.QtCorePyQt5.QtGuiPyQt5.QtWidgetsfaxsetupdialog_baser	   deviceuricomboboxr
   prop	fax_buildr   r   ImportErrorr   warnr   r   rc   ri   rk   r_   r>   r=   <module>r      s   .        "    + >nn HH_A3W A3Hd6Wi d6G   s   B BB