
^;Tc           @   s   d  d l  m Z d  d l Z e j d  d  d l Z d  d l Z d  d l Z d  d l Te j j	 d d  e j j
 d  d e f d     YZ d S(	   i(   t   frontendNs   2.0(   t   *s   apt-listchangess   /usr/share/localet   gtk2c           B   sG   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   c         C   s!   x t  j   r t  j   q Wd  S(   N(   t   gtkt   events_pendingt   main_iteration(   t   self(    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   flush_interface   s    c         C   s3   |  j  j d  t k r% t j   n  t j   d  S(   Nt	   sensitive(   t   button_closet   get_propertyt   Falset   syst   exitR   t	   main_quit(   R   t   widget(    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   cb_close   s    c         C   s   t  j |  | |  y) t d  j   t j j d  |  _ Wn t j j d  |  _ n X|  j j d  |  _ |  j j	 d |  j
  |  j j d |  j
  |  j j d  |  _ |  j j d  |  _ |  j   d  S(   Ns%   apt-listchanges/apt-listchanges.glades0   /usr/share/apt-listchanges/apt-listchanges.gladet   window_maint   destroyt   on_button_close_clickedt   progressbar_mainR	   (   R    t   __init__t   filet   closeR   t   gladet   XMLt
   get_widgetR   t   connectR   t   signal_connectR   R	   R   (   R   t   packagest   config(    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyR      s    c         C   sL   |  j  j t  |  j j d  j   } | j |  j |   t j	   d  S(   Nt   textview_main(
   R	   t   set_sensitivet   TrueR   R   t
   get_buffert   set_textt   _renderR   t   main(   R   t   textt   buf(    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   display_output*   s    c         C   s   t  |  d  s( d |  _ |  j j   n  |  j d 7_ |  j j |  j |  j  |  j j d |  j d |  j  |  j   d  S(   Nt   progressg        g      ?s   %i%%id   (   t   hasattrR)   R   t   showt   set_fractionR   R#   R   (   R   (    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   update_progress0   s    	"c         C   s   |  j  j   |  j   d  S(   N(   R   t   hideR   (   R   (    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   progress_done:   s    c         C   st   t  j |  j t  j t  j t  j  } | j t  j  | j d t	 d  t	 d  f  | j
   t  j k rp t St S(   Ns   <big><b>%s</b></big>

%ss   Continue Installation?s2   You can abort the installation if you select 'no'.(   R   t   MessageDialogR   t   DIALOG_MODALt   MESSAGE_QUESTIONt   BUTTONS_YES_NOt   set_default_responset   RESPONSE_YESt
   set_markupt   _t   runt   RESPONSE_NOR   R!   (   R   t   m(    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   confirm>   s    #(	   t   __name__t
   __module__R   R   R   R(   R-   R/   R;   (    (    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyR      s   					
	(   t   apt_listchangesR    t   pygtkt   requireR   t   gobjectt	   gtk.gladet   ALChacksR   t   bindtextdomaint
   textdomainR   (    (    (    s/   /usr/share/apt-listchanges/AptListChangesGtk.pyt   <module>   s   
