³ò
0ŽGc           @   s[   d  d k  Z  d d
 d „  ƒ  YZ d d d „  ƒ  YZ d „  Z d d d „  ƒ  YZ d	 „  Z d S(   iÿÿÿÿNt   TabsCodeHandlerc           B   s,   e  Z d  „  Z d „  Z d „  Z d „  Z RS(   c         C   s   g  |  _  g  |  _ d  |  _ d  S(   N(   t   tabst   curr_tab_namet   Nonet
   tab_window(   t   self(    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   __init__   s    		c         C   sE   | d j o4 | i  d ƒ } | p d  Sn | |  _ g  |  _ n d  S(   Nt   tabt   window(   t   getR   R   (   R   t   namet   attrsR   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt
   start_elem   s
    	c         C   ss   | d j o |  i  | i d <t SnK | d j o= d i |  i ƒ } |  i o |  i  i | |  i f ƒ qo n t S(   NR   R   t    (   R   t
   propertiest   Truet   joinR   R   t   appendt   False(   R   R
   t   code_objt   tab_name(    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   end_elem   s    +c         C   s   |  i  i | ƒ d  S(   N(   R   R   (   R   t   data(    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt	   char_data    s    (   t   __name__t
   __module__R   R   R   R   (    (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyR    
   s   				t   PythonCodeGeneratorc           B   s   e  Z d  „  Z d „  Z RS(   c         C   sÇ  t  i d } | i } | i | ƒ \ } } g  } | i d g  ƒ } x: | D]2 \ } }	 | i d | i |	 | i | ƒ f ƒ qJ W| i i	 p d | i i }
 n d }
 | i	 o[ g  } | o | i | ƒ n | i d | i | i
 | i ƒ |
 | f ƒ | g  g  f Sn | i d ƒ } | o d | i | ƒ } n d	 } | i } | i o
 d
 } n g  } | o | i | ƒ n | i d | i | ƒ d | i |
 | | f ƒ | i | ƒ } | | | f S(   Nt   pythonR   s   self.%s.AddPage(self.%s, %s)
s   self.%sR   s   self.%s = %s(%s, %s)
t   styles
   , style=%sR   t
   wxNotebooks
   self.%s = s   (%s, %s%s)
(   t   commont   code_writersR   t   generate_code_idR	   R   R
   t	   quote_strt   parentt   is_toplevelt   without_packaget   klasst   cn_ft   previewt   cnt   generate_common_properties(   R   R   t   pygent   propt   id_namet   idt   layout_propsR   t   labelt   tab_winR"   t   lR   R%   t   initt	   props_buf(    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   get_code'   s<    	 	!
		c         C   s   | i  } t i d } g  } | i d g  ƒ } x4 | D], \ } } | i d | | i | ƒ f ƒ q5 W| i | i | ƒ ƒ | S(   NR   R   s   self.AddPage(self.%s, %s)
(   R   R   R   R	   R   R!   t   extendR)   (   R   t   objR+   R*   R3   R   R/   R   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   get_properties_codeI   s    	 	(   R   R   R4   R7   (    (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyR   &   s   	"c            sI   t  i d ‰ d d k l ‰  d ˆ i f ‡ ‡  f d †  ƒ  Y} | |  ƒ S(   Nt   XRCiÿÿÿÿ(   t   escapet   NotebookXrcObjectc              s/   e  Z ‡  f d  †  Z ‡ f d †  Z d „  Z RS(   c            sˆ   |  i  i d ƒ o |  i  d |  _ |  i  d =n
 g  |  _ d |  _ d |  i  d <d |  i  j o |  i  d =n ˆ  i i |  | | ƒ d  S(   NR   i    t   1t   usenotebooksizert   no_custom_class(   R   t   has_keyR   t   indext   DefaultXrcObjectt   write(   R   t   outfilet   ntabs(   t   xrcgen(    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyRA   ]   s    		c            se   |  i  oW d | } | i | d ƒ | i | d ˆ  |  i  |  i d ƒ ƒ |  i d 7_ n d  S(   Ns       s   <object class="notebookpage">
s   <label>%s</label>
i    i   (   R   RA   R?   (   R   t   childRB   RC   t   tab_s(   R9   (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   write_child_prologuej   s    

c         S   s'   |  i  o | i d | d ƒ n d  S(   Ns       s
   </object>
(   R   RA   (   R   RE   RB   RC   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   write_child_epiloguer   s    
(   R   R   RA   RG   RH   (    (   RD   R9   (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyR:   [   s   (   R   R   t   xml.sax.saxutilsR9   R@   (   R6   R:   (    (   R9   RD   sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt   xrc_code_generatorW   s    "t   CppCodeGeneratorc           B   sA   e  Z d d d d d g Z d g Z d „  Z d „  Z d „  Z RS(   s	   wxWindow*R"   t   intR-   s   const wxPoint&t   post   wxDefaultPositions   const wxSize&t   sizet   wxDefaultSizet   longR   t   0s   <wx/notebook.h>c         C   si  t  i d } | i } | i | ƒ \ } } | o | g } n g  } g  } | i d g  ƒ } x: | D]2 \ }	 }
 | i d | i |
 | i |	 ƒ f ƒ qd W| i i	 p d | i i } n d } | i	 o3 d | i | i
 | | f g } | | g  g  f Sn d } | i d ƒ } | o d	 | } n d
 | i | i
 | | | f g } | i | ƒ } | | | | f S(   s6           generates the C++ code for wxNotebook
        s   C++R   s   %s->AddPage(%s, %s);
s   %st   thiss   %s = new %s(%s, %s);
R   R   s&   , wxDefaultPosition, wxDefaultSize, %ss   %s = new %s(%s, %s%s);
(   R   R   R   R    R	   R   R
   R!   R"   R#   R%   R)   (   R   R   t   cppgenR+   R,   R-   t   idsR.   R   R/   R0   R"   R1   t   extraR   R2   R3   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyR4      s2    	 		!
c         C   s   | i  } t i d } g  } | i d g  ƒ } x4 | D], \ } } | i d | | i | ƒ f ƒ q5 W| i | i | ƒ ƒ | S(   Ns   C++R   s   AddPage(%s, %s);
(   R   R   R   R	   R   R!   R5   R)   (   R   R6   R+   RT   R3   R   R/   R   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyR7   ¢   s    	 	c         C   s   t  i d } | i | d ƒ S(   Ns   C++t   wxNotebookEvent(   R   R   t   get_events_with_type(   R   R6   RT   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt
   get_events­   s    (   s	   wxWindow*s   parent(   s   ints   id(   s   const wxPoint&s   poss   wxDefaultPosition(   s   const wxSize&s   sizes   wxDefaultSize(   s   longs   styleRR   (   R   R   t   constructort   extra_headersR4   R7   RY   (    (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyRK   y   s   			!	c          C   sþ   d t  i d <d t  i d <d t  i d <d t  i d <t  i i d ƒ }  |  o* |  i d t ƒ  ƒ |  i d t d ƒ n t  i i d ƒ } | o' | i d t	 ƒ | i d t d ƒ n t  i i d	 ƒ } | o* | i d t
 ƒ  ƒ | i d t d ƒ n d  S(
   NR   t   EditNotebookt   wxPanelt   NotebookPanei   R   R   R8   s   C++(   R   t   class_namest	   toplevelsR   R	   t   add_widget_handlerR   t   add_property_handlerR    RJ   RK   (   R*   RD   RT   (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pyt
   initialize´   s     (    (    (    (   R   R    R   RJ   RK   Rc   (    (    (    sN   C:\Python25\Lib\site-packages\_spe\plugins\wxGlade\widgets\notebook\codegen.pys   <module>   s
   1	";