
0Gc           @   s  d  d k  Z  d  d k Td  d k l Z l Z d  d k Z d  d k Z d  d k Z d  d k Z d  d k	 Z	 d  d k
 Z
 d  d k Z d  d k l Z d e f d     YZ d e f d     YZ d	 e f d
     YZ d f  d     YZ d e e f d     YZ d S(   iN(   t   *(   t   Treet
   WidgetTree(   t   EventsMixint   EditBasec           B   s   e  Z d  Z e e d  Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d   Z e i d	  Z d
   Z e i d  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   s=       Base class of every window available in the builder.
    c            s!  h    _  |   _ |   _ |   _ |   _ |   _ |   _ t   _ h    f d     i	 f d <  f d     i
 f d <  _ t   d d  d t d    _ t   d d  d | d t d    _ | o t d    i _ n t   d t  o d	   _   f d
   }   f d   }	 | |	 f   i d <t   d d t d t }
   i  d <t d  |
 _ t d  |
 _ n d    _ |   _ d    _ d    _ | o+   i t  | i d  | i t  n t i    d d  k } | i       i  d <| i!      i  d <d  S(   Nc              s     i  S(    (   t   name(    (   t   self(    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   <lambda>/   s    R   c              s     i  S(    (   t   klass(    (   R   (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   0   s    t   classt   labelt   readonlys   If you change the default value, it will be interpreted as the name of the subclass of the widget. How this name affects code generation depends on the kind (i.e. language) of output. See the docs for more details.t   _custom_base_classest    c              s     i  S(   N(   t   custom_base(    (   R   (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   get_custom_baseD   s    c            s   |    _  d  S(   N(   R   (   t   val(   R   (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   set_custom_baseE   s    R   t   can_disablet   enableds   Base class(es)s   A comma-separated list of custom base classes. The first will be invoked with the same parameters as this class, while for the others the default constructor will be used. You should probably not use this if "overwrite existing sources" is not set.i   iT  it	   extracodet   extraproperties(   i   iT  ("   t
   propertiest   parentt   idR   R   t   baset   custom_classt   Falset   _dont_destroyt   set_namet	   set_klasst   access_functionst   TextPropertyt   Nonet   _t	   name_propt
   klass_propt   tooltipt   getattrR   t   TrueR
   t   notebookt   property_windowt   _rmenut   widgett   show_widgett   SetSizet   ShowR   t   __init__t   code_propertyt   CodePropertyt   ExtraPropertiesProperty(   R   R   R   R   R   R)   t   showR   R   R   t   pR0   (    (   R   sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR/      sN    								 !		#				c         C   sQ   | o( |  i  d  j o |  i   |  i   n |  i  o |  i  i |  n d  S(   N(   R+   R!   t   create_widgett   finish_widget_creationR.   (   R   t   yes(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR,   h   s    
c         C   s
   t   d S(   s5           Initializes self.widget and shows it
        N(   t   NotImplementedError(   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR5   n   s    c         O   s   t  i |  i |  i  d S(   sX           Creates the popup menu and connects some event handlers to self.widgets
        N(   t   wxt   EVT_RIGHT_DOWNR+   t
   popup_menu(   R   t   argst   kwds(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR6   t   s    c         C   s   t  i d j o |  i o |  i i   q/ n |  i oE |  i i } |  i i   |  i i   | d j	 o | i   q~ n |  i o |  i	 o |  i i   n t
 i |  j o d t
 _ n d S(   s           Destructor. Deallocates the popup menu, the notebook and all the
        properties. Why we need explicit deallocation? Well, basically because
        otherwise we get a lot of memory leaks... :)
        t	   __WXMAC__N(   R9   t   PlatformR*   t   DestroyR(   t   sizert   DeleteAllPagesR!   R+   R   t   misct   focused_widget(   R   t   nb_szr(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   deletez   s    
c         C   s   t  i |  i d  |  _ t i d d d  p" t  i |  i  } | |  i _ n d |  i _ |  i i	 t
  |  i i   t  i |  i d d t  i t  i B|  _ } |  i i |  |  i i |  t |  d t  o |  i d i |  n d S(   sA           Creates the notebook with the properties of self
        ii   i   t   styleR   R   N(   R9   t   NotebookR)   R(   RC   t   check_wx_versiont   NotebookSizerRA   R!   t   SetAutoLayoutR'   t   Hidet   ScrolledWindowt   TAB_TRAVERSALt   FULL_REPAINT_ON_RESIZEt   _common_panelR#   t   displayR$   R&   R   R   (   R   t   nb_sizert   panel(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   create_properties   s    &c         C   s   |  i  | S(   N(   R   (   R   t   value(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   __getitem__   s    c         C   s:  d | } t  i i oq |  i og t i i | |  i  oN t i	 t
 i t d  | t d  t
 i t
 i B |  i i |  i  d  Sn t i |  i |  p |  i i |  i  n |  i } | |  _ |  i o |  i i |  i  n y t i i |  i |  Wn t j
 o n X|  i i t d  |  i  d  S(   Ns   %ss:   Name "%s" is already in use.
Please enter a different one.t   Errors   Properties - <%s>(   t   configt   preferencest   allow_duplicate_namesR+   t   commont   app_treet   has_namet   nodeRC   t   wxCallAfterR9   t
   MessageBoxR"   t   OKt
   ICON_ERRORR#   t	   set_valueR   t   ret   matcht   set_name_patternR*   t   SetTitlet   refresh_namet   AttributeErrorR)   (   R   RU   t   oldname(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR      s"    
#		!s   ^[a-zA-Z_]+[\w-]*(\[\w*\])*$c         C   sq   d | } t  i |  i |  p |  i i |  i  n7 | |  _ y t i i |  i	  Wn t
 j
 o n Xd  S(   Ns   %s(   Rd   Re   t   set_klass_patternR$   Rc   R   R[   R\   Rh   R^   Ri   (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR      s    
	s   ^[a-zA-Z_]+[\w:.0-9-]*$c   	      C   s  |  i  o|  i pog  } t d  D] } | t i   q% ~ \ } } } t i |  i  |  _ t i |  i | t	 d  t i
  t i |  i | t	 d  t i  t i |  i | t	 d  t i  |  i i   t i   } t i |  i | t	 d   d   } t i |  i  | | |  i   t i |  i  | | |  i   t i |  i  | | |  i   t i |  i  | | |  i   n |  i   |  i  i |  i | i    n d  S(   Ni   s
   Remove	Dels   Copy	Ctrl+Cs
   Cut	Ctrl+Xt   Previewc            s     f d   S(   Nc            s   t  i    S(    (   RC   R_   (   t   e(   t   method(    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR      s    (    (   Rn   (    (   Rn   sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   bind   s    (   R+   R*   t   rangeR9   t   NewIdRC   t   wxGladePopupMenuR   t   append_itemR"   t
   ART_DELETEt   ART_COPYt   ART_CUTt   AppendSeparatort   EVT_MENUt   removet   clipboard_copyt   clipboard_cutt   preview_parentt   setup_preview_menut	   PopupMenut   GetPosition(	   R   t   eventt   _[1]t   it   COPY_IDt	   REMOVE_IDt   CUT_IDt
   PREVIEW_IDRo   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR;      s(    

6


	#
c         G   s    t  |  _ t i i |  i  d  S(   N(   R   R   R[   R\   Ry   R^   (   R   R<   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRy      s    	c         C   s   t  i |   } | d  j	 oj t |  i i    d } | i   o" | i t d  d | i	  q | i t d  d | i	  n d  S(   Nis   Close previews    (%s)	Ctrl+PRl   (
   RC   t   get_toplevel_widgetR!   t   listR*   t   GetMenuItemst   preview_is_visiblet   SetTextR"   R   (   R   R4   t   item(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR}      s    "c         C   s1   t  i |   } | d  j	 o | i d   n d  S(   N(   RC   R   R!   t   preview(   R   R+   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR|      s    c         G   s  |  i  d j o |  i o |  i i  d j o |  i } | i ov d } xm | i D]^ \ } } y2 | o' |  i | i j o | i i |  n Wn t j
 o n X| d } qP Wq q n |  i o |  i i  d j o |  i i o |  i i i  d j o |  i i } | i oy d } xp | i D]a \ } } y5 | o* |  i i | i j o | i i |  n Wn t j
 o n X| d } q$Wqqn |  i   p d Sn |  i d j o" |  i
   |  i   |  i   n |  i i   } | i   d } | i   } | |  i j o d Sn yc d }	 | i | i    }
 xA t |  i i    D]* } |  i i |  |
 j o | }	 PqSqSWWn t j
 o } d }	 n X| i   d |	 j o |  i i   j  n o |  i i |	  n |  i i |  i  | i |  i  | i t i  |  i i   |  i i |  i i    |  i i   |  i i t d  |  i  y t  i! i" |  i#  Wn t j
 o n X|  i i$   d S(   sJ           Updates property_window to display the properties of self
        t   wxPanelt
   wxNotebooki    i   Nis   Properties - <%s>(%   R   R   R+   t   tabsR   t   SetSelectionRi   t
   is_visibleR(   R!   RT   t   create_events_propertyt   create_extracode_propertyR)   t   GetSizert   GetChildrent	   GetWindowt   GetPageTextt   GetSelectionRp   t   GetPageCountRL   t   Reparentt	   SetWindowRC   t   hidden_property_panelR.   R-   t   GetClientSizet   LayoutRg   R"   R[   R\   t   select_itemR^   t   SetFocus(   R   R<   t   nbR   t   tnt   ept	   sizer_tmpt   childt   wt   indext   titleRm   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   show_properties   st    	

 #

 

 
'c         C   s   |  i    |  t _ d S(   s           Event handler called when a window receives the focus: this in fact is
        connected to a EVT_LEFT_DOWN and not to an EVT_FOCUS, but the effect
        is the same
        N(   R   RC   RD   (   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   on_set_focus?  s    
c         C   s   t  i |  |  S(   s           returns a custom handler function for the property 'prop_name', used
        when loading this object from an xml file. handler must provide
        three methods: 'start_elem', 'end_elem' and 'char_data'
        (   R   t   get_property_handler(   R   t	   prop_name(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   I  s    c         G   s   d d k  } | i |   d S(   sG           returns a copy of self to be inserted in the clipboard
        iN(   t	   clipboardt   copy(   R   R<   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRz   R  s    c         G   s   d d  k  } | i |   d  S(   Ni(   R   t   cut(   R   R<   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR{   Y  s    c         C   sv   |  i  p t Sn |  i  i   p t Sn |  i  i   o |  i  i   Sn |  i } | o | i   Sn |  i  i   S(   N(   R+   R   t   IsShownt
   IsTopLevelR   R   (   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   ]  s    	c         C   s   d S(   s           updates the widget's view to reflect its state, i.e. shows which widget
        is currently selected; the default implementation does nothing.
        N(    (   R   t   selected(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   update_viewf  s    c         C   s   d S(   s           Called after the loading of an app from an XML file, before showing
        the hierarchy of widget for the first time. The default implementation
        does nothing.
        N(    (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt	   post_loadm  s    c         C   sL   y2 |  i  d i |  i  |  i  d i |  i  Wn t j
 o n Xd  S(   NR   R   (   R   t   _showR(   t   KeyError(   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   v  s
    (   t   __name__t
   __module__t   __doc__R'   R/   R,   R5   R6   RF   RT   RV   R   Rd   t   compileRf   R   Rk   R;   Ry   R}   R|   R   R   R   Rz   R{   R   R   R   R   (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR      s4   Q														O	
									t
   WindowBasec           B   s   e  Z d  Z e d  Z d   Z d   Z d   Z d   Z d   Z	 d   Z
 d   Z d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   s       Extends EditBase with the addition of the common properties available to
    almost every window: size, background and foreground colors, and font
    c      
      s6  t  i   | | | | | d t d   _   f d   }   d  | f   i d <d   _   i   i f   i d <d   _   i	   i
 f   i d	 <d   _   i   i f   i d
 <t   _   i t i t i     _ d   i d <  i   i f   i d <d   _   i   i f   i d <t i t i  } t i t i  }	 t i t i  }
 t i t i  } h  d  d	 <d  d
 <d  d <  _   i  } t!   d d  d t" | d <t!   d d  d t" d t# d  | d <t$   d	 d  d t# d	  | d	 <t$   d
 d  d t# d
  | d
 <t%   d d  d t# d  | d <t!   d d  d t" d t# d  | d <t   _&   i'   i( f   i d <t)   d d  t# d   | d <t   _*   i+   i, f   i d <t)   d d  t# d   | d <t   _-   i.   i/ f   i d <t)   d d  t# d   | d <d  S(   NR3   ic            s   |    _  d  S(   N(   t	   window_id(   RU   (   R   (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   set_id  s    c         S   s   |  i  S(    (   R   (   t   s(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    R   s   -1, -1t   sizeR   t
   backgroundt
   foregroundt   defaulti   t   fontR%   R   R
   t   disabledt   focusedt   hidden(0   R   R/   R   R   R   R   t   get_sizet   set_sizeR   t   get_backgroundt   set_backgroundR   t   get_foregroundt   set_foregroundt   _font_changedt   _build_from_fontR9   t   SystemSettings_GetFontt   SYS_DEFAULT_GUI_FONTR   t   get_fontt   set_fontR%   t   get_tooltipt   set_tooltipt   SystemSettings_GetMetrict   SYS_WINDOWMIN_Xt   SYS_WINDOWMIN_Yt   SYS_SCREEN_Xt   SYS_SCREEN_YR!   t	   _originalR   R    R'   R"   t   ColorDialogPropertyt   FontDialogPropertyt
   disabled_pt   get_disabledt   set_disabledt   CheckBoxPropertyt	   focused_pt   get_focusedt   set_focusedt   hidden_pt
   get_hiddent
   set_hidden(   R   R   R   R   R   R)   R3   R   t   min_xt   min_yt   max_xt   max_yt   prop(    (   R   sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR/     sV    							("""(			c         O   s  |  i  i   |  i d <|  i  i   |  i d <|  i  i   } | i   p t i t i  } n | |  i d <|  i	 } | d i
   } | o |  i |  n% | d i d t |  i  i     | d i   o |  i | d i
    n3 t i |  i  i    } | |  _ | d i |  | d i   o |  i | d i
    n3 t i |  i  i    } | |  _ | d i |  | d i   o |  i | d i
    n t i |   t i |  i  |  i  |  i  i   d   } t i |  i  |  d  S(   NR   R   R   R   s   %s, %sc         S   s   d } |  i    o t i } n |  i   } t } xL t i D]A \ } } } | | j o% | | j o t i |  t } Pq< q< W| p |  i	   n d  S(   Ni    (
   t   ControlDownR9   t
   ACCEL_CTRLt
   GetKeyCodeR   RC   t   accel_tableR_   R'   t   Skip(   R   t	   evt_flagst   evt_keyt   donet   flagst   keyt   function(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   on_key_down  s    
 	(   R+   t   GetBackgroundColourR   t   GetForegroundColourt   GetFontt   OkR9   R   R   R   t	   get_valueR   Rc   t   tuplet   GetSizet	   is_activeR   RC   t   color_to_stringR   R   R   R   R   R6   t   EVT_SIZEt   on_sizet   Refresht   EVT_KEY_DOWN(   R   R<   R=   t   fntR   R   t   colorR   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR6     s8    	$			c   
      C   sM  t  i |   t i t i  } t i t i  } t i t i  } t i t i  } |  i } |  i	 } | d i
 |  | d i
 |  | d i
 |  | d i
 |  y | d i
 |  Wn t j
 o n X| d i
 |  | d i
 |  | d i
 |  | d	 i
 |  t i t i  } | i |  i i d
 t i  | i |  i i d
 t i  t |  d t  o! | i | d i d
 t i  n | i | d i d
 t i  | i | d i d
 t i  | i | d i d
 t i  | i | d i d
 t i  y! | i | d i d
 t i  Wn t j
 o n X| i | d i d
 t i  | i | d i d
 t i  | i | d i d
 t i  | i | d	 i d
 t i  | i d  | i |  | i   | i |  | i   \ } }	 |  i i | t d   |  i i   | i d d d t t  i! |	 d    d  S(   NR   R   R   R   R   R%   R   R   R   i    R   R   i   t   Commoni   g      @("   R   RT   R9   R   R   R   R   R   RP   R   RQ   R   t   BoxSizert   VERTICALt   AddR#   RS   t   EXPANDR$   R&   R   RK   t   SetSizerR   t   FitR   R(   t   AddPageR"   R)   t   SetScrollbarst   intt   matht   ceil(
   R   R   R   R   R   RS   R   R   R   t   h(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRT     sP    		!$
c         C   s  y~d \ } } |  i  d } | i   o y  | i   i   d d j } Wn t j
 o t } n X| i   } | o | d  } n g  } | i d  D] } | t |  q ~ \ } } n t i	 i
 } | o% |  i i |  i i    \ }	 }
 n |  i i   \ }	 }
 | d j o
 d }	 n | d j o
 d }
 n d |	 |
 f } | o | d 7} n | |  _ |  i  d i |  Wn t j
 o n X| i   d S(	   s8           update the value of the 'size' property
        i    R   it   dt   ,s   %s, %sN(   i    i    (   R   R   R   t   stript
   IndexErrorR   t   splitR  RX   RY   t   use_dialog_unitsR+   t   ConvertPixelSizeToDialogR   R   Rc   R   R   (   R   R   t   w_1t   h_1t   szR  R   R   t   tR   R  R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR  )  s.    #:		c         C   s   |  i  S(   N(   R%   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   H  s    c         C   s   t  i |  |  _ d  S(   N(   RC   t   wxstrR%   (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   K  s    c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   N  s    c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   Q  s    c         C   s   |  i  } | |  _  |  i p d  Sn | i   } | t i j o$ |  i i t i t i |   nU y# t i	 |  } |  i i |  Wn. | |  _  |  i
 d i |  i    d  Sn X|  i i   d  S(   NR   (   R   R+   R  R   t   str_to_colorst   SetBackgroundColourR9   t   SystemSettings_GetColourRC   t   string_to_colorR   Rc   R   R  (   R   RU   t   oldvalR  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   T  s    			c         C   s   |  i  } | |  _  |  i p d  Sn | i   } | t i j o$ |  i i t i t i |   nU y# t i	 |  } |  i i |  Wn. | |  _  |  i
 d i |  i    d  Sn X| |  _  |  i i   d  S(   NR   (   R   R+   R  R   R!  t   SetForegroundColourR9   R#  RC   R$  R   Rc   R   R  (   R   RU   R%  R  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   f  s     				c         C   s   t  |  i  S(   N(   t   strR   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   y  s    c         C   s   t  i } t  i } t  i } t | i    | i | i   d  | i | i   d  | i | i	   d  t t
 | i     | i   g S(   NR   t   normal(   R   t   font_families_fromt   font_styles_fromt   font_weights_fromR'  t   GetPointSizet   gett	   GetFamilyt   GetStylet	   GetWeightR  t   GetUnderlinedt   GetFaceName(   R   R   t   familiest   stylest   weights(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   |  s    			c         C   s  t  i } t  i } t  i } y^ t |  } t i t | d  | | d | | d | | d t | d  | d  } Wn! |  i d i	 |  i
    np X| |  _ |  i o\ |  i i   } |  i i |  |  i i   } | | j o |  i i |  i d | qn d  S(	   Ni    i   i   i   i   i   R   R   (   R   t   font_families_tot   font_styles_tot   font_weights_tot   evalR9   t   FontR  R   Rc   R   R   R+   R   t   SetFontRA   t   set_itemt   pos(   R   RU   R3  R4  R5  t   ft   old_sizeR   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s     			))	
c         C   s   |  i  t |  d f  d  S(   Ni(   R   R  (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt	   set_width  s    c         C   s   |  i  d t |  f  d  S(   Ni(   R   R  (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt
   set_height  s    c         C   s  |  i  d i   o4 |  i  d i   i   } | o | d d j } n t i i } y d | Wn t j
 o n4 X| o+ | i   d d j o t } | d  } n y= g  } | i	 d d  D] } | t
 | i    q ~ } Wn |  i  d i |  i  n X| o | d d j o | d 7} n | |  _ |  i o | o t i |  i |  } n t i d d  o |  i i |  n |  i i |  y |  i i |  i d | Wqt j
 o qXn d  S(	   NR   iR  R   R  i   i   i   (   R   R   R   R  RX   RY   R  t	   TypeErrorR'   R  R  Rc   R   R+   R9   t   DLG_SZERC   RI   t
   SetMinSizeR-   RA   R<  R=  Ri   (   R   RU   t   vR  R   R  R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s0    =&	
 c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   sh   | d j o! d d d     Y} | |   Sn+ | d j o d d  k  } | i |   Sn t i |  |  S(   NR   t   FontHandlerc           B   s,   e  Z d    Z d   Z d   Z d   Z RS(   c         S   s@   | |  _  g  } t d  D] } | d q ~ |  _ d |  _ d  S(   Ni   R   i    (   t   ownerRp   t   propsR   (   R   RG  R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR/     s    	*c         S   sU   h  d d <d d <d d <d d <d	 d
 <d d <} | i  | d  |  _ d  S(   Ni    R   i   t   familyi   RG   i   t   weighti   t
   underlinedi   t   face(   R-  R   (   R   R   t   attrsR   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt
   start_elem  s    (c         S   si   | d j oX |  i  i d i t |  i   |  i  i d i t  |  i  i t |  i   t Sn d  S(   NR   (   RG  R   Rc   t   reprRH  t   toggle_activeR'   R   (   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt   end_elem  s    c         S   s    t  | i    |  i |  i <d  S(   N(   R'  R  RH  R   (   R   t   data(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt	   char_data  s    (   R   R   R/   RN  RQ  RS  (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRF    s   			R   i(    (   R0   t   ExtraPropertiesPropertyHandlerR   R   (   R   R   RF  R0   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s3   y t  t |   |  _ Wn t j
 o n Xd  S(   N(   t   boolR  R   t
   ValueError(   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s3   y t  t |   |  _ Wn t j
 o n Xd  S(   N(   RU  R  R   RV  (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s3   y t  t |   |  _ Wn t j
 o n Xd  S(   N(   RU  R  R   RV  (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    (   R   R   R   R'   R/   R6   RT   R  R   R   R   R   R   R   R   R   R   R@  RA  R   R   R   R   R   R   R   R   R   (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s2   ?	1	4									
											t   ManagedBasec           B   s   e  Z d  Z e d  Z d d  Z d   Z d   Z d   Z	 d   Z
 d   Z d   Z d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   s       Base class for every managed window used by the builder: extends WindowBase
    with the addition of properties relative to the layout of the window:
    option, flag, and border
    c	         C   sI  t  i |  | | | | | d | | i   |  _ d  |  _ h  |  _ d |  _ d |  _ d |  _	 | |  _
 | |  _ |  i |  i f |  i d <|  i |  i f |  i d <|  i |  i f |  i d <|  i |  i f |  i d <t i t i t i t i t i t i t i t i t i t i t i  t i! f |  _" d t# d  d	 d
 d d d d t# d  d d d d d d d f }	 t$ i% d d d  o/ t i! |  _ |  i" t i& f 7_" |	 d 7}	 n | i' |  |  |  i }
 d d k( l) } l* } | |  |  |
 d <t+ |  d d  |	  |
 d <t, |  d d  d d d t# d  |
 d <| |  |  |
 d <d  S(   NR3   i    t   optiont   flagt   borderR=  u	   #section#t   Bordert   wxALLt   wxLEFTt   wxRIGHTt   wxTOPt   wxBOTTOMt	   Alignmentt   wxEXPANDt   wxALIGN_RIGHTt   wxALIGN_BOTTOMt   wxALIGN_CENTER_HORIZONTALt   wxALIGN_CENTER_VERTICALt   wxSHAPEDt   wxADJUST_MINSIZEi   i   t   wxFIXED_MINSIZEi(   t   LayoutOptionPropertyt   LayoutPosPropertyi  R
   (   s   wxFIXED_MINSIZE(   i    i  (-   R   R/   t
   is_virtualt   _has_layoutR!   t
   sel_markert   sizer_propertiesRX  RY  RZ  RA   R=  t
   get_optiont
   set_optionR   t   get_flagt   set_flagt
   get_bordert
   set_bordert   get_post   set_posR9   t   ALLt   LEFTt   RIGHTt   TOPt   BOTTOMR  t   ALIGN_RIGHTt   ALIGN_BOTTOMt   ALIGN_CENTER_HORIZONTALt   ALIGN_CENTER_VERTICALt   SHAPEDt   ADJUST_MINSIZEt	   flags_posR"   RC   RI   t   FIXED_MINSIZEt   add_itemt   layout_option_propertyRj  Rk  t   CheckListPropertyt   SpinProperty(   R   R   R   R   R   RA   R=  R)   R3   t   flag_labelst   szpropRj  Rk  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR/     sL    									(c         C   s  | d  j o |  i i } n t i |  i |  |  _ t i |   t i	 |  i |  i
  t i |  i |  i  |  i i |  |  i |  i |  i |  i |  i i    |  i } | d i |  i    | d i |  i    | d i |  i    | d i |  i d  d  S(   NRX  RY  RZ  R=  i   (   R!   R   R+   RC   t   SelectionMarkerRn  R   R6   R9   t   EVT_LEFT_DOWNR   t   EVT_MOVEt   on_moveRA   R  R=  RX  RY  RZ  R   Ro  Rc   Rp  Rr  Rt  (   R   t   sel_marker_parentt   szp(    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR6   4  s    	c   
      C   s  t  i |   |  i p d  Sn t i |  i d d t i t i B} t i t i	  } t i t i
  } t i t i  } t i t i  } |  i } | d i |  | d i |  | d i |  | d i |  t i t i  } | i | d i d t i  | i | d i d t i  | i | d i d t i  | i | d i d t i d  | i t  | i |  | i   | i |  | i   \ } }	 |  i i | t d	   | i d
 d d
 t t i |	 d    d  S(   NiRG   R=  RX  RZ  RY  i    i   R   i   g      @(    R   RT   Rm  R9   RM   R(   RN   RO   R   R   R   R   R   Ro  RQ   R	  R
  R  RS   R  RK   R'   R  R   R  R   R  R"   R  R  R  R  (
   R   RS   R   R   R   R   R  R   R   R  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRT   F  s2    	 
c         C   s"   |  i  o |  i  i |  n d  S(   N(   Rn  R.   (   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   e  s    c         C   s   |  i  i   d  S(   N(   Rn  t   update(   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR  h  s    c         C   s   |  i  } t i |  |  |  i d } | i   oN t |  i    d j p |  i   t i	 @o! |  i d i
 |  | |  _  n |  i i   d  S(   NR   i    (   R   R   R  R   R   R  Rp  t   get_int_flagR9   R  Rc   Rn  R  (   R   R   t   oldR  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR  k  s    	&c   
      C   s_  t  |  |  _ } |  i p d  Sn y|  i d } | p | i   o | i   i   } | d d j o | d  } t } n t } g  } | i	 d  D] } | t  |  q ~ \ } } | o% t
 i |  i | | f  \ } } n | o d \ } } qn |  i i   \ } } |  i i |  i d | d | | f Wn t j
 o }	 |	 GHn Xd  S(   NR   iR  R  i   RX  (   i   i   (   R  RX  R+   R   R   R   R  R'   R   R  R9   RC  t   GetBestSizeRA   R<  R=  Ri   (
   R   RU   R  R   R  R   RE  R   R  Rm   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRq  u  s&    

6%)c         C   sj   |  i  d i |  } d } x: t t |   D]& } | | o | |  i | O} q/ q/ W|  i |  d  S(   NRY  i    (   Ro  t   prepare_valueRp   t   lenR  t   set_int_flag(   R   RU   R   RE  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRs    s     c         C   s  | |  _  |  i p d  Sn y8y |  i d } | i   i   } | d d j o | d  } t } n t } g  } | i d  D] } | t |  q ~ \ } } | o% t	 i
 |  i | | f  \ } } n | | g } Wn t j
 o d  } n X| t	 i @o. |  i d i   o t |  i i    } n |  i i |  i d | d | Wn+ t j
 o }	 d d  k }
 |
 i   n Xd  S(   NR   iR  R  RY  (   RY  R+   R   R   R  R'   R   R  R  R9   RC  RV  R!   R  R   R   R  RA   R<  R=  Ri   t	   tracebackt	   print_exc(   R   R   t   spR   R  R   RE  R   R  Rm   R  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s,    	

6%#c         C   sv  t  |  |  _ |  i p d  Sn y#|  i d } | i   i   } | d d j o | d  } t } n t } g  } | i d  D] } | t  |  q ~ \ } } | o% t	 i
 |  i | | f  \ } } n | d j o |  i i   d } n | d j o |  i i   d } n |  i i |  i d t  |  d | | f Wn+ t j
 o }	 d d  k }
 |
 i   n Xd  S(   NR   iR  R  i    i   RZ  (   R  RZ  R+   R   R   R  R'   R   R  R9   RC  R   RA   R<  R=  Ri   R  R  (   R   RU   R  R   R  R   RE  R   R  Rm   R  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRu    s"    

6%$$/c         C   s   |  i  S(   N(   RX  (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRp    s    c         C   s   d g t  |  i  } y x@ t t  |  i   D]) } |  i |  i | @o d | | <q/ q/ W| d d !d d d d g j o' d | d <d d d d g | d d +n d | d <Wn t j
 o n X| S(   Ni    i   i   (   R  R  Rp   RY  Ri   (   R   t   retvalR   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRr    s      'c         C   s   |  i  S(   N(   RY  (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s    c         C   s   |  i  S(   N(   RZ  (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRt    s    c         C   s,   |  i  o |  i  i   n t i |   d  S(   N(   Rn  R@   R   RF   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRF     s    
c         G   s$   |  i  i |  i  t i |   d  S(   N(   RA   t	   free_slotR=  R   Ry   (   R   R<   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRy     s    c         C   s   |  i  d S(   Ni   (   R=  (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRv    s    c         C   s4   |  i  i |  t | d t |  i  i  d   d S(   s?   setter for the 'pos' property: calls self.sizer.change_item_posi   N(   RA   t   change_item_post   minR  t   children(   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRw    s    c         C   s%   |  i  d i | d  | |  _ d S(   sx           called by self.sizer.change_item_pos to update the item's position
        when another widget is moved
        R=  i   N(   Ro  Rc   R=  (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt
   update_pos  s    N(   R   R   R   R'   R/   R!   R6   RT   R   R  R  Rq  Rs  R  Ru  Rp  Rr  R  Rt  RF   Ry   Rv  Rw  R  (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRW    s(   7				
												t   PreviewMixinc           B   s2   e  Z d  Z d   Z d   Z d   Z d   Z RS(   s+   Mixin class used to add preview to a widgetc         C   s   d  |  _ d  |  _ d  S(   N(   R!   t   preview_buttont   preview_widget(   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR/     s    	c      	   C   s   |  i  i d  } | i   } t i | d t d   |  _ } t i | d |  i  | i	 | d t i
 t i Bd  | i   | i |  | i   \ } } |  i i   d d  k } | i d d d t | i | d    d  S(   Ni    iRl   i   i   g      @(   R(   t   GetPageR   R9   t   ButtonR"   R  t
   EVT_BUTTONR   R  Rx  R  R   R  R   R)   R  R  R  R  (   R   RS   R   t   btnR   R  R  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRT     s    " 
c         C   sS   |  i  d  j o2 t i i i |   |  _  |  i i t d   n |  i  i	   d  S(   Ns   Close Preview(
   R  R!   R[   R\   t   appR   R  t   SetLabelR"   t   Close(   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         C   s   |  i  d  j	 S(   N(   R  R!   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    (   R   R   R   R/   RT   R   R   (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s
   			
t   TopLevelBasec           B   s   e  Z d  Z e Z e Z e e d d  Z d   Z d   Z	 d   Z
 d   Z d   Z d   Z d   Z d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z RS(   sK       Base class for every non-managed window (i.e. Frames and Dialogs).
    c	   	   	   C   s   t  i |  | | | | | d | | |  _ |  i oe | d  j o |  i } n | |  _ |  i |  i f |  i d <t	 |  d d  d t
 d  |  i d <n d  |  _ t i |   d  S(   NR3   R   R
   (   R   R/   t	   has_titleR!   R   R   t	   get_titlet	   set_titleR   R    R"   R   RA   R  (	   R   R   R   R   R   R)   R3   R  R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR/     s    	
	)	c         O   s  t  i |   |  i i |  i _ |  i o* |  i i t i |  i	 d i
     n4 t |  i d  o  |  i i t i |  i   n t i |  i |  i  t i |  i |  i  t i |  i |  i  t i d j o |  i i   n |  i i t i i  d  S(   NR   Rg   t	   __WXMSW__(   R   R6   R+   R-   RD  R  Rg   RC   t   design_titleR   R   t   hasattrR   R9   R  t
   drop_sizert   EVT_ENTER_WINDOWt   on_entert	   EVT_CLOSEt   hide_widgetR?   t   Centert   SetAcceleratorTableR[   t   paletteR   (   R   R<   R=   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR6   )  s    
 c         C   s   t  i |  |  | o t i d j o| |  i d i   oI |  i i   \ } } |  i i d | d f  |  i i d | f  q |  i	 o |  i	 i
   q n d  S(   NR  R   ii   (   R   R,   R9   R?   R   R   R+   R   R-   RA   t
   fit_parent(   R   R7   R   R  (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR,   ;  s    
c   	      C   s  |  i  o|  i prg  } t d  D] } | t i   q% ~ \ } } t i |  i  |  _ t i |  i | t	 d  t i
  t i |  i | t	 d   d   } t i |  i  | | |  i   t i |  i  | | |  i   t i   } t i |  i | t	 d  t i  t i |  i  | | |  i   t i   } |  i i   t i |  i | t	 d   t i |  i  | | |  i   n |  i   |  i  i |  i | i    n d  S(   Ni   s
   Remove	DelRL   c            s     f d   S(   Nc            s   t  i    S(    (   RC   R_   (   Rm   (   Rn   (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR   P  s    (    (   Rn   (    (   Rn   sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRo   O  s    s   Paste	Ctrl+VRl   (   R+   R*   Rp   R9   Rq   RC   Rr   R   Rs   R"   Rt   Rx   Ry   R  t	   ART_PASTEt   clipboard_pasteRw   R|   R}   R~   R   (	   R   R   R   R   R   t   HIDE_IDRo   t   PASTE_IDR   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR;   G  s(    

3
	
#
c      	   G   s   |  i  d  j	 o t d  GHd  Sn d d  k } d d  k } |  i i   } y= | i |  d  d  o# t t	 i
 i _ |  i i |  n Wn# | i j
 o } t d  GHn Xd  S(   Ns3   
wxGlade-WARNING: sizer already set for this windowii    s0   
wxGlade-WARNING: only sizers can be pasted here(   RA   R!   R"   R   t	   xml_parseR+   R   t   pasteR   R[   R\   R  t   savedR-   t   XmlParsingError(   R   R<   R   R  R   Rm   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR  `  s    c         C   s   t  i |   t i |   d  S(   N(   R   RT   R  (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRT   m  s    c         C   s   |  i  S(   N(   R   (   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR  x  s    c         C   s=   t  i |  |  _ |  i o |  i i t  i |   n d  S(   N(   RC   R   R   R+   Rg   R  (   R   RU   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR  {  s    
c         C   se   | |  _  |  i  oN |  i  i oA |  i o7 |  i i t  |  i i |  i  i  |  i i   n d  S(   N(   RA   R+   RK   R'   R  R   (   R   RA   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyt	   set_sizer  s
    	!c         C   sC   |  i  o! t i o |  i i t i  n |  i i t i  d  S(   N(   RA   R[   t   adding_sizerR+   t	   SetCursorR9   t   CROSS_CURSORt   STANDARD_CURSOR(   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s    c         C   st   |  i  p t i o |  i |  d  Sn t t _ t _ |  i i t i	  t i
 t i |  d  d   d  t _ d  S(   N(   RA   R[   R  R   R   t   adding_widgetR+   R  R9   R  t   widgetst   widget_to_addR!   (   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s    c         G   sM   |  i  i   t i i |  i t  t i i |  i i  t i i	 i
   d  S(   N(   R+   RL   R[   R\   t   expandR^   R   R   R   R  R   (   R   R<   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s    c         C   s9   t  i |  |  |  i o |  i o |  i i   n d  S(   N(   R   R  RA   R+   t   refresh(   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s    c         C   sG   t  i |  i |  p t i i i |  i |  n t i |  |  d  S(   N(	   RC   t   streqR   R[   R\   R  t   update_top_window_nameR   R   (   R   R   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR     s    c         G   s>   |  i  d  j	 o |  i  i   d  |  _  n t i |  |  d  S(   N(   R  R!   R@   R   RF   (   R   R<   (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyRF     s    N(   R   R   R   R'   t   _is_toplevelR   R!   R/   R6   R,   R;   R  RT   R  R  R  R  R  R  R  R   RF   (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pyR    s&   														(   R9   t   widget_propertiest   treeR   R   R  RC   R[   t   sysRX   t   osRd   t   events_mixinR   R   R   RW  R  R  (    (    (    sB   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\edit_windows.pys   <module>   s   
< o w$