
    ?g&                     N    d dl Z d dlmZmZ d dlZ G d dej
                        Zy)    N)GtkGdkc                   8    e Zd Zd Zd Zd Zd Zd Zd Zd	dZ	y)

ModulePagec                    t        j                  t        t        t        t        t        t        t        t        t        	      }t        j
                  j                  | |       || _        d | _        | j                  dd       | j                  dd       | j                  dd       | j                  dd       |j                  j                  d	| j                         |j                  j                  d
| j                         | j                  j                  d       t        j                          | _        t        j$                  d      | _        | j&                  j                  d| j(                         | j"                  j+                  | j&                         t        j$                  d      }|j                  d| j,                         | j"                  j+                  |       t        j$                  d      | _        | j.                  j                  d| j0                         | j"                  j+                  | j.                         | j"                  j3                          | j                  j                  d| j4                         y )Nr   Status   Type   Name   Descriptionzsignal::extension-list-updatezstatus-changed   zView SourceactivatezReload CodezView Web Pagezbutton-press-event)r   	ListStorestrbool	pageutilsBaseListView__init__parentselected_pathcreate_text_columnlg_proxyconnectget_updateson_status_change	tree_viewset_tooltip_columnMenupopupMenuItemview_sourceon_view_sourceappendon_reload_codeview_web_pageon_view_web_pageshow_allon_button_press_event)selfr   storereload_codes       =/usr/share/cinnamon/cinnamon-looking-glass/page_extensions.pyr   zModulePage.__init__   s   c3S#sCsK''e4!8,6*6*=1 ?AQAQR 0$2G2GH))!,XXZ
<<6  T-@-@A

$**+ll=1J(;(;<

+& \\/:"":t/D/DE

$,,-

3T5O5OP    c                     | j                   j                  | j                        }| j                   j                  |d      }t	        j
                  d|z   dz          y )N   
xdg-open "" &r,   get_iterr   	get_valueossystem)r+   	menu_item	tree_iterfolders       r.   r$   zModulePage.on_view_source(   sH    JJ''(:(:;	%%i3
		-&(612r/   c                 &   | j                   j                  | j                        }| j                   j                  |d      }| j                   j                  |d      }| j                  j
                  j                  ||j                                y )N   r	   )r,   r5   r   r6   r   r   ReloadExtensionupper)r+   r9   r:   uuid	xlet_types        r.   r&   zModulePage.on_reload_code-   si    JJ''(:(:;	zz##Iq1JJ((A6	,,T9??3DEr/   c                     | j                   j                  | j                        }| j                   j                  |d      }t	        j
                  d|z   dz          y )N   r2   r3   r4   )r+   r9   r:   urls       r.   r(   zModulePage.on_view_web_page3   sH    JJ''(:(:;	jj""9a0
		-#%./r/   c                 j   t        |j                        }t        |j                        }|j                  ||      }|V|\  }}}}	|| _        |j                          |j                  ||d       | j                  j                  | j                        }
|j                  dk(  r|| j                  j                  
d      }| j                  j                  |
d      }| j                  j                  |dk7         | j                  j                  |dz          | j                  j                  d d d d |j                  |j                          y|j"                  t$        j&                  j(                  k(  r>|;| j                  j                  
d      }|r| j*                  j-                  d	       y y y y )
Nr   r   r=   rC    z (View Source)T   log)intxyget_path_at_posr   
grab_focus
set_cursorr,   r5   buttonr6   r'   set_sensitiver#   	set_labelr!   timetyper   	EventTypeDOUBLE_BUTTON_PRESSr   activate_page)r+   treevieweventrJ   rK   pthinfopathcolcellxcellyr:   r@   rD   errors                 r.   r*   z ModulePage.on_button_press_event8   so   LL**1a0&-#D#ue!%D!c1-

++D,>,>?I<<1"zz++Iq9jj**9a8""00;  **42B+BC

  tT4uzzRZZ3==<<<"

,,Y:KK--e4  # =r/   c                 *    |r| j                          y y N)r   )r+   proxyonlines      r.   r   zModulePage.on_status_changeS   s     r/   Nc                    | j                   j                  j                         \  }}|rd| j                  j	                          |D ]D  }| j                  j                  |d   |d   |d   |d   |d   |d   |d   |d   d	k(  |d
   g	       F y y )NstatusrS   namedescriptionr@   r;   rD   r^   trueerror_message)r   r   GetExtensionListr,   clearr%   )r+   ra   successdataitems        r.   r   zModulePage.get_updatesW   s    ,,==?JJ 	;

!!4>#'<#'<#'#6#'<#'>#';#'=F#:#'#8#: ;	; r/   r`   )
__name__
__module____qualname__r   r$   r&   r(   r*   r   r    r/   r.   r   r      s(    Q@3
F0
56;r/   r   )r7   gi.repositoryr   r   r   r   r   rq   r/   r.   <module>rs      s$    
 " ];'' ];r/   