3
NZL*                 @   s   d dl Z d dlZ d dlZd dlZd dlT d dlmZ d dlmZ d dl	T d dlm
Z
 ddlT d dlT d dlT d dlT dZG dd	 d	eZG d
d deeZdS )    N)*)utils)cups)
validation   z+http://hplip.sourceforge.net/hplip_web.confc               @   s   e Zd Zdd Zdd ZdS )	Ui_Dialogc             C   sn  |j d |jdd || _|| _|| _t|| _| jj d t|| _| jj d t	 | _
| j
j d t| j
| _| jj d t| j
| _t }|jd | jj| | jj d	 | jj| jd
d
dd t| j
| _| jjtj | jjtj | jj d | jj| jdd
dd t| j
| _| jjd | jj d | jj| jdd
dd tddtjtj}tddtjtj}| jj|dddd | jj| j
 | jj| jd
d
dd t|| _| jjtj | jjtj | jj d | jj| jdd
dd t || _!| j!j d | jj| j!dddd t || _"| j"j d | jj| j"dddd | j#| | jj$d
 t%j&| d S )NDialogi     
gridlayoutStackedWidgetpagegridlayout1   labelr   r   line   T
TitleLabel   (      3      line_2   
NextButton   CancelButton)'ZsetObjectNameZresizeprinterName
device_uri	Error_msgZQGridLayoutr
   ZQStackedWidgetr   ZQWidgetr   r   ZQLabelr   ZQFontZsetPointSizeZsetFontZ	addWidgetZQFramer   ZsetFrameShapeZHLineZsetFrameShadowZSunkenr   ZsetWordWrapZQSpacerItemZQSizePolicyZMinimumZ	ExpandingZaddItemr   ZQPushButtonr   r   retranslateUisetCurrentIndexZQMetaObjectZconnectSlotsByName)selfr   r   r   r   ZfontZ
spacerItemZspacerItem2 r#   "/usr/share/hplip/ui5/queuesconf.pysetupUi,   s^    







zUi_Dialog.setupUic             C   s  | j tkr |jtjddd  n|jtjddd  | j tkrV| jjtjddd  n8| j tkrx| jjtjddd  n| jjtjddd  | j tkrd| j d }nL| j t	krd	| j d
 }n2| j tkrd	| j d }n| j t
krd	| j d }| j tkr| jjtjd|d  | j tks.| j t	kr\| jjtjddd  | jjtjddd  nf| j tkr| jjtjddd  | jjtjddd  n,| jjtjddd  | jjtjddd  d S )Nr   z%HP SmartInstall/Mass storage Disablerz#HP Device Manager - Queues diagnosezPrint/Fax Queue is Pausedz Smart Install Device(s) DetectedzQueue needs to be reconfiguredzSmart Install is enabled in za device(s). 
Do you want to download and disable smart install to perform device functionalities?'zK' is using incorrect PPD file. Do you want to remove and reconfigure queue?z)' is paused. Do you want to enable queue?ze' is not configured using hp-setup utility. Click 'Remove and Setup' to remove and reconfigure queue.YesNozDownload and DisableZCancelzRemove and Setup)r   QUEUES_SMART_INSTALL_ENABLEDZsetWindowTitleZQApplication	translateQUEUES_PAUSEDr   ZsetTextr   ZQUEUES_INCORRECT_PPDZQUEUES_CONFIG_ERRORZQUEUES_MSG_SENDINGr   r   r   )r"   r   textr#   r#   r$   r    ^   s4    






zUi_Dialog.retranslateUiN)__name__
__module____qualname__r%   r    r#   r#   r#   r$   r   +   s   2r   c               @   s`   e Zd ZdddZdd Zdd Zdd	 Zd
d Zdd Zdd Z	dd Z
dddZdd ZdS )QueuesDiagnoseNc             C   sh   t j| | d| _|| _|| _|| _|| _| j| | j| j| j t | _	| j	j
  | j	j  | j  d S )NF)QDialog__init__resultr   r   r   passwordObjr%   UserSettingsuser_settingsloaddebuginitUi)r"   parentr   r   r   r4   r#   r#   r$   r2      s    

zQueuesDiagnose.__init__c             C   sV   t j| d  || _|| _|| _| j| ||| t | _| jj  | jj	  | j
  d S )N)r1   r2   r   r   r   r%   r5   r6   r7   r8   r9   )r"   r   r   r   r#   r#   r$   init   s    

zQueuesDiagnose.initc             C   sH   | j jj| j | jjj| j tjtjtj | j	t
tdd d S )NZhp_logoZ128x128)r   ZclickedZconnectCancelButton_clickedr   NextButton_clickedsignalSIGINTSIG_DFLZsetWindowIconZQIconZload_pixmap)r"   r#   r#   r$   r9      s    zQueuesDiagnose.initUic             C   s   | j | | jj| d S )N)ZupdateStepTextr   r!   )r"   r   r#   r#   r$   displayPage   s    
zQueuesDiagnose.displayPagec             C   s   | j   d S )N)close)r"   r#   r#   r$   r<      s    z#QueuesDiagnose.CancelButton_clickedc             C   s   t   z| jtkr| j  n| jtkrRtj| j d| j d }t| | j	| n~tj
tjtd| | j\}}|tjkrd| j d }t| | j	| n:d| j d }tj| tjd}|rtjd	 tjd
 W d t  X d| _| j  d S )Nr&   z' is enabled successfullyZqt4zFailed to remove ' z$ ' queue.
Remove using hp-toolbox...z' zC ' removed successfully.
Re-configuring this printer by hp-setup...zhp-setupzStarting hp-setupzhp-setup --guiT)ZbeginWaitCursorr   r)   disable_smart_installr+   r   ZenablePrinterr   	SuccessUI_QueuesDiagnose__trZcups_operationZ
delPrinterZGUI_MODEZIPP_OK	FailureUIlogr8   r   ZwhichrunZendWaitCursorr3   rB   )r"   msgZstatusZ
status_strpathr#   r#   r$   r=      s*    






z!QueuesDiagnose.NextButton_clickedc             C   s   t | | j| d S )N)rF   rE   )r"   rI   r#   r#   r$   showMessage   s    zQueuesDiagnose.showMessagec             C   s   t | | j| d S )N)rD   rE   )r"   rI   r#   r#   r$   showSuccessMessage   s    z!QueuesDiagnose.showSuccessMessagec             C   s   t jd||S )NZPluginDialog)ZqAppr*   )r"   scr#   r#   r$   Z__tr   s    zQueuesDiagnose.__trc             C   s8  t j st| tt nt jt\}}|dkr`t|}|jddd}|s`t| tt	dt d S t j|\}}t j|d \}}|dko|dkrt
j }	|	j||\}
}t|
krt jd| \}}n<tj| d| jd| tjtjB tjkr4t jd| \}}n0|r"t| tt	d|d  nt| tt	d| d S )	Nr   ZSMART_INSTALLZurl z.asczsh %s z<b>%s</b><p>Without this, it is not possible to authenticate and validate this tool prior to installation.</p>Do you still want to run Smart Install disabler?)r   Zcheck_network_connectionrF   ZqueryStringZERROR_NO_NETWORKZdownload_from_networkHPLIP_INFO_SITEZ
ConfigBasegetZERROR_FAILED_TO_DOWNLOAD_FILEr   ZGPG_VerificationZvalidateZERROR_SUCCESSrH   ZQMessageBoxZquestionrE   r'   r(   )r"   stsZ
HPLIP_fileZhplip_si_confsourceZresponse_fileZsmart_install_runZresponse_ascZsmart_install_ascZgpg_objZ
digsig_stsZ	error_stroutr#   r#   r$   rC      s.    z$QueuesDiagnose.disable_smart_install)N)N)r-   r.   r/   r2   r;   r9   rA   r<   r=   rK   rL   rE   rC   r#   r#   r#   r$   r0      s   

r0   )osos.pathsysr>   Zbase.gbaser   Zprntr   Z
base.codesr   Zui_utilsZPyQt5.QtCoreZPyQt5.QtGuiZPyQt5.QtWidgetsrQ   objectr   r1   r0   r#   r#   r#   r$   <module>   s   Z