3
N ŸZ  ã               @   sr   d dl Z d dlT d dlmZmZmZ d dlT ddlT d dlT d dl	T ddl
mZ ddlmZ G dd„ deeƒZdS )	é    N)Ú*)ÚdeviceÚutilsÚmainté   )Ú	Ui_Dialog)ÚDEVICEURICOMBOBOX_TYPE_FAX_ONLYc               @   sN   e Z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S )ÚLineFeedCalDialogc             C   s6   t j| |ƒ | j| ƒ || _| jƒ  tjd| jƒ d S )Nr   )ÚQDialogÚ__init__ZsetupUiÚ
device_uriÚinitUiZQTimerZ
singleShotÚupdateUi)ÚselfÚparentr   © r   ú)/usr/share/hplip/ui5/linefeedcaldialog.pyr   *   s
    
zLineFeedCalDialog.__init__c             C   s‚   | j jj| jƒ | jjj| jƒ | jjj| jƒ | jjj| jƒ | jj	dt
jdfiƒ | jttddƒƒƒ | jr~| jj| jƒ d S )Nzlinefeed-cal-typer   Zhp_logoZ128x128)ZCancelButtonZclickedZconnectÚCancelButton_clickedZCalibrateButtonÚCalibrateButton_clickedÚDeviceComboBoxÚDeviceUriComboBox_noDevicesÚ DeviceUriComboBox_currentChangedZ	setFilterÚoperatorÚgtZsetWindowIconZQIconZload_pixmapr   ZsetInitialDevice)r   r   r   r   r   2   s    zLineFeedCalDialog.initUic             C   s*   | j jƒ  | jj| jdƒƒ | jjƒ  d S )NZ	Calibrate)r   r   Z	LoadPaperZsetButtonNameÚ_LineFeedCalDialog__tr)r   r   r   r   r   A   s    
zLineFeedCalDialog.updateUic             C   s
   || _ d S )N)r   )r   r   r   r   r   r   G   s    z2LineFeedCalDialog.DeviceUriComboBox_currentChangedc             C   s   t | | jdƒƒ | jƒ  d S )NzZ<b>No devices that support line feed calibration found.</b><p>Click <i>OK</i> to exit.</p>)Z	FailureUIr   Úclose)r   r   r   r   r   L   s    z-LineFeedCalDialog.DeviceUriComboBox_noDevicesc             C   s   | j ƒ  d S )N)r   )r   r   r   r   r   Q   s    z&LineFeedCalDialog.CancelButton_clickedc             C   sÊ   d }z¦yt j| jƒ}W n tk
r2   t| ƒ d S X |j}y|jƒ  W n tk
rb   t| ƒ Y nFX |jƒ r |tkr†t	j
|dd„ ƒ q¨|tkr¨t	j|dd„ ƒ nt| ƒ W d |d k	r¼|jƒ  X | jƒ  d S )Nc               S   s   dS )NTr   r   r   r   r   Ú<lambda>h   s    z;LineFeedCalDialog.CalibrateButton_clicked.<locals>.<lambda>c               S   s   dS )NTr   r   r   r   r   r   k   s    )r   ZDevicer   ÚErrorZCheckDeviceUIZlinefeed_cal_typeÚopenZisIdleAndNoErrorZLINEFEED_CAL_TYPE_OJ_K550r   ZlinefeedCalType1ZLINEFEED_CAL_TYPE_OJ_PRO_L7XXXZlinefeedCalType2r   )r   ÚdZlinefeed_typer   r   r   r   U   s*    
z)LineFeedCalDialog.CalibrateButton_clickedNc             C   s   t jd||ƒS )Nr	   )ZqAppÚ	translate)r   ÚsÚcr   r   r   Z__trz   s    zLineFeedCalDialog.__tr)N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r   r   r   r   r	   )   s   %r	   )r   Zbase.gÚbaser   r   r   Z
base.codesZui_utilsZPyQt5.QtCoreZPyQt5.QtGuiZlinefeedcaldialog_baser   Zdeviceuricomboboxr   r
   r	   r   r   r   r   Ú<module>   s   