
    =	f                     p    d dl  ddl d dlmZ d dlmZ d dl d dl d dl d Z	dZ
dZ G d de      Zy)	    )*   )device)
to_unicode   c                   X    e Zd Z eee      Z e       Zd Zd Zd Z	d Z
d Zd Zd	dZy)
PrinterNameComboBoxc                 2   t         j                  | |       d| _        d| _        i | _        d | _        d| _        t        | _        t               | _
        | j                  j                          | j                  j                          | j                          y )N F)QWidget__init__printer_name
device_uriprinter_indexinitial_printerupdating%PRINTERNAMECOMBOBOX_TYPE_PRINTER_ONLYtypUserSettingsuser_settingsloaddebuginitUi)selfparents     +/usr/share/hplip/ui5/printernamecombobox.pyr   zPrinterNameComboBox.__init__/   sv    v&#8)^!  "    c                    t        |       }|j                  d       t        |       | _        | j                  j                  d       |j	                  | j                         t        ddt        j                  t        j                        }|j                  |       t        |       | _
        t        t        j                  t        j                        }|j                  d       |j                  d       |j                  | j                  j!                         j#                                | j                  j%                  |       | j                  j                  d       |j	                  | j                         | j                  j'                  | j)                  d             | j                  j*                  d   j-                  | j.                         y )N
HBoxLayout	NameLabel   r   ComboBoxzPrinter:zconst QString &)QHBoxLayoutsetObjectNameQLabelr    	addWidgetQSpacerItemQSizePolicyMinimumaddItem	QComboBoxr"   	Expanding	PreferredsetHorizontalStretchsetVerticalStretchsetHeightForWidth
sizePolicyhasHeightForWidthsetSizePolicysetText_PrinterNameComboBox__trcurrentIndexChangedconnectComboBox_currentIndexChanged)r   r   
SpacerItemr1   s       r   r   zPrinterNameComboBox.initUi?   sM    &
  .$$[1T^^, R)<)<k>Q>QR
:&!$ !6!68M8MN
''*%%a($$T]]%=%=%?%Q%Q%ST##J/##J/T]]+tyy45 	))*;<DDTEfEfgr   c                 :    |t         t        t        fv r|| _        y y N)r   !PRINTERNAMECOMBOBOX_TYPE_FAX_ONLY(PRINTERNAMECOMBOBOX_TYPE_PRINTER_AND_FAXr   )r   r   s     r   setTypezPrinterNameComboBox.setType]   s&    84;= = DH=r   c                     || _         y r;   )r   )r   r   s     r   setInitialPrinterz%PrinterNameComboBox.setInitialPrinterd   s
    +r   c                    | j                   t        k(  r.| j                  j                  | j	                  d             dg}no| j                   t
        k(  r.| j                  j                  | j	                  d             dg}n.| j                  j                  | j	                  d             ddg}t        j                  |      | _        | j                  j                          | j                  r3| j                  | j                  j                  | _        d| _        	 d}t        | j                        D ]  \  }}|j                   | j                  |j"                  <   | j$                  j'                  ||j"                         | j                  \t)        |j"                        j+                         t)        | j                        j+                         k(  sd | _        |} | j$                  j-                  d       d	| _        | j$                  j-                  |       y | j.                  j1                          y # d	| _        w xY w)
NzPrinter Name:hpz	Fax Name:hpfaxzPrinter/Fax Name:Tr   F)r   r   r    r4   r5   r<   r   getSupportedCUPSPrintersprintersr   clearr   r   last_used_printerr   	enumerater   namer"   
insertItemr   lowersetCurrentIndexPrinterNameComboBox_noPrintersemit)r   	be_filterkips        r   updateUizPrinterNameComboBox.updateUih   s   88<<NN""499_#=>IXX::NN""499[#9: 	I NN""499-@#ABwI77	B  "==##+'+'9'9'K'K$ DM&%dmm4 DAq12D&&qvv.MM,,Q7++7Jqvv<N<T<T<VZdeieyeyZz  [A  [A  [C  =C/3, --b1 !&MM))!, //446 !&s   !A2I  AI  &I   	I	c                 D   t        |      | _        | j                  ry | j                  | j                     | _        | j                  | j
                  _        | j
                  j                          | j                  j                  | j                  | j                         y r;   )
r   r   r   r   r   r   rH   save"PrinterNameComboBox_currentChangedrO   )r   ts     r   r8   z0PrinterNameComboBox.ComboBox_currentIndexChanged   sx    &qM==,,T->->?/3/@/@,! 	//44T__dFWFWXr   Nc                 0    t         j                  d||      S )Nr	   )qApp	translate)r   scs      r   __trzPrinterNameComboBox.__tr   s    ~~3Aa88r   r;   )__name__
__module____qualname__
pyqtSignalstrrW   rN   r   r   r>   r@   rT   r8   r5    r   r   r	   r	   *   s=    )3C)=&%/\" h<,)7XY9r   r	   N)base.gui_utilsbaser   base.sixextr   PyQt5.QtCorePyQt5.QtGuiPyQt5.QtWidgetsr   r<   r=   r   r	   rd   r   r   <module>rl      s@   4    "    )* %$% !+, (y9' y9r   