
£à[]  ã               @   sÀ   d  d l  Z  d  d l m Z d Z y  d  d l m Z m Z d Z Wn6 e k
 rz Z z e  j	 d e ƒ WYd d Z [ Xn XGd d „  d e
 ƒ Z Gd	 d
 „  d
 e ƒ Z e r¶ e Z n e Z d S)é    N)ÚgettextF)ÚDbusmenuÚUnityTzcan not import unity GI %sc               @   sI   e  Z d  Z d Z d d d „ Z d d „  Z d d „  Z d	 d
 „  Z d S)ÚIUnitySupportz interface for unity support Nc             C   s   d  S)N© )ÚselfÚparentr   r   ú</usr/lib/python3/dist-packages/UpdateManager/UnitySupport.pyÚ__init__%   s    zIUnitySupport.__init__c             C   s   d  S)Nr   )r   Úurgentr   r   r	   Úset_urgency(   s    zIUnitySupport.set_urgencyc             C   s   d  S)Nr   )r   Úvisibler   r   r	   Úset_install_menuitem_visible+   s    z*IUnitySupport.set_install_menuitem_visiblec             C   s   d  S)Nr   )r   Úprogressr   r   r	   Úset_progress.   s    zIUnitySupport.set_progress)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r
   r   r   r   r   r   r   r	   r   #   s
   r   c               @   sU   e  Z d  Z d Z d d d „ Z d d „  Z d d „  Z d	 d
 „  Z d d „  Z d S)ÚUnitySupportImplz9 implementation of unity support (if unity is available) Nc             C   s2   t  j j d ƒ } | |  _ | r. |  j | ƒ d  S)Nzupdate-manager.desktop)r   ZLauncherEntryZget_for_desktop_idÚ_unityÚ_add_quicklist)r   r   Zum_launcher_entryr   r   r	   r
   5   s
    			zUnitySupportImpl.__init__c             C   s“   t  j j ƒ  } t  j j ƒ  |  _ |  j j t  j t d ƒ ƒ |  j j t  j d ƒ |  j j	 d | j
 d  ƒ | j |  j ƒ |  j j d | ƒ d  S)NzInstall All Available UpdatesTzitem-activatedÚ	quicklist)r   ZMenuitemÚnewÚinstall_dbusmenuitemZproperty_setZMENUITEM_PROP_LABELÚ_Úproperty_set_boolÚMENUITEM_PROP_VISIBLEZconnectZinstall_all_updatesZchild_appendr   Úset_property)r   r   r   r   r   r	   r   =   s    			zUnitySupportImpl._add_quicklistc             C   s\   |  j  j d | d ƒ | d k  s/ | d k rE |  j  j d d ƒ n |  j  j d d ƒ d S)	z set the progress [0,100] r   g      Y@r   éd   Zprogress_visibleFTN)r   r   )r   r   r   r   r	   r   L   s    zUnitySupportImpl.set_progressc             C   s   |  j  j d | ƒ d  S)Nr   )r   r   )r   r   r   r   r	   r   U   s    zUnitySupportImpl.set_urgencyc             C   s   |  j  j t j | ƒ d  S)N)r   r   r   r   )r   r   r   r   r	   r   X   s    	z-UnitySupportImpl.set_install_menuitem_visible)	r   r   r   r   r
   r   r   r   r   r   r   r   r	   r   2   s   	r   )Zloggingr   r   ZHAVE_UNITY_SUPPORTZgi.repositoryr   r   ÚImportErrorÚeZwarningÚobjectr   r   ZUnitySupportr   r   r   r	   Ú<module>   s   
$,	