
B3IHc           @   s  yU d  d k  Z  d  d k Z  e  i i   Z d e d <e d <d e d <e d e Z Wn d Z n Xd  d k Z d  d k Z d  d k Z d  d k Z d  d	 k	 l
 Z
 d  d k Z d  d k Z e i 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 h  e e <e e <e e <e e <e e <e e <e e <e e <e e <d  e <Z e i  Z! e! i" d  Z# e! i" d  Z$ e# p e$ Z% e$ o d e GHn e i& Z& dc Z' dd Z( e) Z* e i+ Z, e& e i- Be i. BZ/ e i+ Z0 e i1 Z2 e i3 e i. Be i4 Be i5 BZ6 d! Z7 d" Z8 d# Z9 d$   Z: d%   Z; d& d'  Z< d(   Z= e i> Z? d) de d*     YZ> d+ e i@ f d,     YZA d- e iB f d.     YZC d/ e i f d0     YZD e i  i" d1  o
 eC ZE n eD ZE d2 df d3     YZF d4 eF f d5     YZG d6 eG f d7     YZH d8 eG f d9     YZI e! d: j o
 eH ZJ n eI ZJ d; eF f d<     YZK d= eK e iL f d>     YZM d? eJ eM f d@     YZN dA eM f dB     YZO dC eJ eO f dD     YZP dE eK e iQ f dF     YZR dG eJ eK e iQ f dH     YZS dI eF f dJ     YZT dK eT e iU f dL     YZV dM eV eT f dN     YZW dO eJ eV eT f dP     YZX dQ eT e iY f dR     YZZ dS eJ eT e iQ f dT     YZ[ dU e i\ f dV     YZ] dW e i^ f dX     YZ_ e i` e ia e ib e ic e id e ie g Zf dY e ig f dZ     YZh d[ e ii f d\     YZj d] e ii f d^     YZk e d_  Zl em d` j o el da d db e  n d S(g   iNs   Sdi/Mdi Frameworkt   titlet	   titleFulls[   Framework which makes it easy to switch between Sdi (Linux/Mac)
    and Mdi (Windows).
    t   descriptiont   docs3   Stani's Multiple Document Interface (c)www.stani.be(   t   eventManageri    i   i   i   i   i   s&   single with tabs (mac, linux, windows)s   multiple with sash (windows)s!   multiple with sash & tabs (linux)s+   multiple with sash & tabs (windows default)s   multiple with palette (windows)s   single with palette (mac)s   multiple with tabs (linux)s   multiple with tabs (windows)s   single with tabs (mac)s=   multiple with sash & tabs (mac default,linux default,windows)s	   <default>t   wint   darwinsD   If spe is unstable, try this interface from the preferences:
  "%s"
i
   iX  i  i   s   www.stani.bet   unnamedc         C   s   t  o |  Sn |  Sd  S(   N(   t   DARWIN(   t   x(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   _   s    c         C   sX   |  i  d d  i  d d  i  d d  i  d d  i  d d  i  d d  i  d	 d  S(
   Nt    R
   t   -s   && t    t   &t   .t   (t   )(   t   replace(   R	   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   _strip   s    s   menu.txtc   	   
   C   sW  g  } x t  |  i    D]q } |  i |  } |  i |  } xJ | i   D]< } t | i    } | o | i | | i   f  qJ qJ Wq Wd } x> | D]6 } t | d  } | d | i   | i	   f 7} q W| d 7} x6 | D]. } | d t | d i	    d | f 7} q W| GHt
 i   GH| GHt | d  } | i |  | i   d  S(   Ns   	def __smdi__(self):
i   s$   		wx.EVT_MENU(self,%s,self.menu_%s)
s   
s'   	def menu_%s(self):
		"""%s"""
		pass

s   %s > %st   w(   t   ranget   GetMenuCountt   GetMenut   GetLabelTopt   GetMenuItemsR   t   GetLabelt   appendt   uppert   lowert   ost   getcwdt   opent   writet   close(	   t   menuBart   ft   labelst   mt   menut	   menuLabelt   itemt   labelt   result(    (    s   C:\py\_spe\sm\wxp\smdi.pyt	   menuWrite   s2      % $
 ,c          C   s    d d  k  }  t t i    d  S(   Ni(   R'   R,   t   wxgMenut   Bar(   R'   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   test_menuWrite   s    t   Bitmapc           B   s    e  Z d    Z e i d  Z RS(   c         C   s   | |  _  | |  _ d  S(   N(   t   patht   app(   t   selfR1   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   __init__   s    	c         C   s1   t  i i |  i t  i i |   } t | |  S(   N(   R   R1   t   joint   basenamet	   WX_BITMAP(   R3   R	   t   tR1   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   __call__   s    $(   t   __name__t
   __module__R4   t   wxt   BITMAP_TYPE_ANYR9   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR0      s   	t	   DummyPagec           B   s   e  Z d  Z d   Z RS(   s0   Page to fill the tabs (not meant to be visible).c         C   s    t  i i |  | t  i d  d  S(   Ns"   SPE bug: This shouldn't be visible(   R<   t
   StaticTextR4   t   ID_ANY(   R3   t   tabs(    (    s   C:\py\_spe\sm\wxp\smdi.pyR4      s    (   R:   R;   t   __doc__R4   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR>      s   t   NativeNotebookPlusc           B   sM   e  Z d  Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 RS(   s   Fall back for linuxc         O   sO   t  i i |  | |  | |  _ |  i t  i |  i  |  i t  i |  i  d  S(   N(   R<   t   NotebookR4   R2   t   Bindt   EVT_MIDDLE_UPt   onFrameMiddleClickt   EVT_LEFT_DCLICK(   R3   R2   t   argst   keyw(    (    s   C:\py\_spe\sm\wxp\smdi.pyR4      s    	c         C   s~   | i    } |  i |  \ } } |  i i t t g j o
 d } n d } | | j o# |  i i | | d i i   n d S(   s6   When a tab is middle clicked (EVT_MOUSE_LEFT&HitTest).i    ii   N(	   t   GetPositiont   HitTestR2   t   mdit   SDIt   MDI_TABSt   childrent   framet   onFrameClose(   R3   t   eventt   mousePost   indext   othert   zero(    (    s   C:\py\_spe\sm\wxp\smdi.pyRG      s    
c         O   s   d  S(   N(    (   R3   RI   RJ   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   EnableToolTip   s    c         O   s   d  S(   N(    (   R3   RI   RJ   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   SetPageToolTip   s    c         O   s   d  S(   N(    (   R3   RI   RJ   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   Tile   s    c         C   s   |  i  t i | |   d  S(   N(   RE   R<   t   EVT_NOTEBOOK_PAGE_CHANGED(   R3   t   method(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   BindPageChange   s    c         C   s   |  i  t i  d  S(   N(   t   UnbindR<   R[   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   UnbindPageChange   s    (
   R:   R;   RB   R4   RG   RX   RY   RZ   R]   R_   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyRC      s   						t   AndreaNotebookPlusc           B   sP   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 RS(   c         O   s  | |  _  t i d d  | d <d | d <| i d  o | d =n t i i |  | |  t i   |  _ t o' |  i	 t i
  |  i i t d  n |  i t  |  i i t  |  i |  i  t o |  i d  n |  i d  |  i t d  |  i t i d d   |  i t  |  i t  |  i t  |  i t i d	 d
 d	   |  i t i |  i  |  i t i |  i  d  S(   Ni   t   sizei    t   margint   stylei   i   i   i   i   (    R2   R<   t   Sizet   has_keyt   NotebookCtrlR4   t
   ThemeStylet   tabstyleR   t   SetControlBackgroundColourt
   NullColourt   EnableAquaThemet   Truet   SetHighlightSelectiont   EnableSilverThemet   ApplyTabThemet   GTKt   SetTabHeightt   SetDrawXt
   SetPaddingt   Pointt   SetUseFocusIndicatort   Falset   EnableChildFocust   EnableDragAndDropt   SetToolTipBackgroundColourt   ColourRE   t   EVT_NOTEBOOKCTRL_PAGE_CLOSINGt	   onClosingt   EVT_NOTEBOOKCTRL_PAGE_DNDt   onDragAndDrop(   R3   R2   RI   RJ   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4      s0    	
c         C   sL   | i    } |  i   } | | j o# |  i i | | d i i   n d S(   s6   When a tab is middle clicked (EVT_MOUSE_LEFT&HitTest).i   N(   t   GetSelectiont   getZeroR2   RP   RQ   RR   (   R3   RS   RU   RW   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR|     s    c         C   s   | i    } | i   } |  i   } | | j oQ |  i i } | | | d } | i |  | i | | d |  | i   n d  S(   Ni   (   t   GetOldPositiont   GetNewPositionR   R2   RP   t   removet   insertt   Skip(   R3   RS   t   oldt   newRW   RP   t   child(    (    s   C:\py\_spe\sm\wxp\smdi.pyR~   !  s    c         C   s)   |  i  i t t g j o d Sn d Sd  S(   Ni    i(   R2   RM   RN   RO   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   ,  s    c         C   s\   g  } x* | D]" } |  i  i |  i i |   q Wt i d d  |  _ |  i |  i  d  S(   Ni   (   t	   pageIconsR   t   notebookIconst   AddR<   t	   ImageListt   AssignImageList(   R3   t   bitmapsR   t   bitmap(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   setIcons2  s      c         C   s*   | i    } |  i | t  | i   d  S(   N(   R   t   ReparentToFrameRv   R   (   R3   RS   t   nPage(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   OnLeftDClick;  s    c         C   s   |  i  t i |  d  S(   N(   RE   Rf   t   EVT_NOTEBOOKCTRL_PAGE_CHANGED(   R3   R\   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR]   B  s    c         C   s   |  i  t i  d  S(   N(   R^   Rf   R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR_   E  s    (
   R:   R;   R4   R|   R~   R   R   R   R]   R_   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR`      s   	!							t   linuxt	   Frameworkc           B   s   e  Z d  Z d d d  Z d   Z d   Z d   Z d   Z d   Z d   Z	 d	   Z
 d d
  Z d   Z d   Z d   Z d d d  Z d d  Z d d  Z d   Z d   Z d   Z d   Z RS(   s!   Foundation class for every frame.R   c         K   s   |  i    |  i d | d | d | d | d |  |  i d | d | |  |  i   |  i   |  i |  |  i   |  i   |  i   |  i	   |  i
 t  d  S(   NR2   t   Panelt   parentFramet   paget   extra(   t   Freezet
   __before__t	   __stage__t	   __after__t   __menu__t   __tool__t   __statusBar__t
   __finish__t
   __events__t   Thawt   ShowRl   (   R3   R2   R   R   R   R   t   options(    (    s   C:\py\_spe\sm\wxp\smdi.pyR4   U  s"    






c         C   sW   | |  _  | |  _ | |  _ t |  _ t |  d  p t |  _ n | |  _ | |  _ d S(   s-   Reference frame attributes (not overwritten).t   isSdiParentN(	   R2   R   R   Rv   t   deadt   hasattrR   R   R   (   R3   R2   R   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   l  s    					c         K   s   |  i  d |  |  |  _ d S(   sY   Create notebook (to switch between documents) & panel
        This is mostly overwritten.t   parentN(   R   t   panel(   R3   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   x  s    c         C   sF   |  i  } |  i | _ |  | _ |  i | _ |  i i  | _ t | _ d S(   s.   Reference panel attributes  (not overwritten).N(   R   R2   RQ   R   t   parentPanelRv   t   changed(   R3   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   }  s    		c         C   s   |  i  } | i o |  i o | i o	 d  GHn | i o |  i  } n |  } | i d |  i  d |  |  _ } |  i |  | | _  |  | _ |  i | _ |  i i	 | _
 t |  d  o" | |  i i	 _  | |  i i	 _ q n
 d |  _ d S(   s   Create: Framework: menu.R2   RQ   t   paletteN(   R2   t   MenuBart   noMenut   DEBUGRM   R#   t
   SetMenuBarRQ   R   R   R   R   R   t   None(   R3   R2   RQ   R#   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s"    	
	
"		c      	   C   s   |  i  i o |  i p |  i o |  i  i o	 d GHn |  i  i d |  d | d t i d t  |  _ |  i  |  i _  |  |  i _	 |  i
 o" |  i
 |  i _
 |  i |  i
 _ q n$ d |  _ |  i
 o d |  i
 _ n d S(   s   Create toolbar

        Very important: in the custom wx.ToolBar class after the
        wx.ToolBar.__init__ the following code must be written:
            parent.SetToolBar(self)s   Create: Framework: toolbar.R   R2   t   idRc   N(   R2   t   ToolBarR   R   R   R<   R@   t   STYLE_TOOLBARt   toolBarRQ   R#   R   (   R3   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    "	
	
c         C   s   |  i  o( |  i i |  i _ |  i i |  i _ nh |  i |  i _ |  i i oK |  i i o	 d GHn |  i i d |  d t i	  |  _ |  i
 |  i  n d S(   s%   Create statusbar (to be overwritten).s   Create: Framework: statusbar.R   R   N(   R   R   t   SetStatusTextR   t	   statusBarR2   t	   StatusBarR   R<   R@   t   SetStatusBar(   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    
	!c         C   s>   |  i  |  i |  i  t |  i d  o |  i i   n d  S(   NR   (   t   setTitleR   R   R   R   R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   sq   | p
 |  } n t  i t  i  } | i |  i d t  i d  | i t  | i |  | i	   |  i
   d S(   s   Not for mdi childreni   i    N(   R<   t   BoxSizert   VERTICALR   RA   t   EXPANDt   SetAutoLayoutRl   t   SetSizert   Layoutt   bindTabs(   R3   R   t   sizer(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   __layoutTabs__  s     

c         C   s(   | d  j p t | d  p
 | i   S(   Nt	   GetActive(   R   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   _isActiveEvent  s    c         C   s   t  i |  i t i |   t  i |  i t i |   t  i |  i t i |   t  i |  i	 t i
 |   |  i o |  i i   n |  i o |  i i   n d S(   s   Initialize events.N(   R   t   Registert   onFrameActivateR<   t   EVT_ACTIVATERR   t	   EVT_CLOSEt   onFrameMovet   EVT_MOVEt   onFrameSizet   EVT_SIZER#   R   R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    
 
 c         C   s   |  i  |  } | oN |  i i o d |  i | f GHn t |  i d  o |  i i |  q n( t |  i d  o |  i i |  n |  i i o d |  i | f GHn | o | i   n d S(   s#   Activate event (to be overwritten).s"   Event<: Framework: %s.Activate(%s)t
   onActivatet   onDeactivates"   Event>: Framework: %s.Activate(%s)N(	   R   R2   R   t	   __class__R   R   R   R   R   (   R3   RS   t	   getActive(    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s     i   c         C   s   |  i  i } | o d |  i GHn t |  i d  o |  i i   |  _ n
 t |  _ |  i oV | o0 t i	 |   |  i
   | o | i   q n | o d |  i GHn t Sn | o d |  i GHn t Sd S(   s)   Close event (to be overwritten/extended).s   Event<: Framework: %s.Closet   onCloses(   Event>: Framework: %s.Close returns Trues)   Event>: Framework: %s.Close returns FalseN(   R2   R   R   R   R   R   R   Rl   R   t   DeregisterWindowt   DestroyR   Rv   (   R3   RS   t   destroyt   debug(    (    s   C:\py\_spe\sm\wxp\smdi.pyRR     s$    	

 c         C   sz   |  i  i o d |  i GHn | o | i   n t |  i d  o |  i i |  n |  i  i o d |  i GHn d S(   s   Move event (to be overwritten).s   Event<: Framework: %s.Movet   onMoves   Event>: Framework: %s.MoveN(   R2   R   R   R   R   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s     c         C   sz   |  i  i o d |  i GHn t |  i d  o |  i i |  n |  i  i o d |  i GHn | o | i   n d S(   s   Size event (to be overwritten).s   Event<: Framework: %s.Sizet   onSizes   Event>: Framework: %s.SizeN(   R2   R   R   R   R   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s     c         C   s6   |  i  p( t |  i d  o |  i i   q2 n d S(   s   To be overwritten.t   onIdleN(   R   R   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   onFrameIdle  s    
c         C   s   d S(   s0   Bind events to notebook tabs (to be overwriten).N(    (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   $  s    c         C   s   d S(   s2   Unbind events to notebook tabs (to be overwriten).N(    (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt
   unbindTabs(  s    c         C   s8   y |  i  i i |  i  SWn t j
 o d Sn Xd S(   s   Get index of current child.iN(   R2   RP   RU   R   t
   ValueError(   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   getIndex,  s    N(   R:   R;   RB   R4   R   R   R   R   R   R   R   R   R   R   R   R   RR   R   R   R   R   R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   S  s(   														t   Tabsc           B   s#   e  Z d    Z d   Z d   Z RS(   c         C   s    |  i  i |  i i |  i  d  S(   N(   RA   RE   R2   t   EVENT_NOTEBOOKt
   onFrameTab(   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   6  s    c         C   s   |  i  i |  i i  d  S(   N(   RA   R^   R2   R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   :  s    c         C   s   | d j o |  i  } | i o d |  i | f GHn | i t t g j } | d j o1 | o* |  i } t | d  o | i } q n" |  i  i	 | d d g | i
 } | i o d | GH| i GHn | i   | i o d |  i | f GHq n d  S(   Nis    Event<: Tab:   %s.onFrameTab(%s)i    t
   panelFramei   s
   %s.Raise()s    Event>: Tab:   %s.onFrameTab(%s)(   R2   R   R   RM   RN   RO   R   R   R   RP   RQ   t   Raise(   R3   RU   R2   R   t   window(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   raiseTab>  s     	
	!
	

(   R:   R;   R   R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   4  s   		t   TabWin32c           B   s   e  Z d  Z d   Z RS(   s4   SDI Implementation for windows (see also App.SetMdi)c         C   s!   |  i  | i    | i   d  S(   N(   R   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   Z  s    (   R:   R;   RB   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   R  s   t   TabUnixc           B   s   e  Z d  Z d   Z RS(   s4   SDI Implementation for windows (see also App.SetMdi)c         C   s'   | i    } | i   |  i |  d S(   s.   When a tab is changed (EVT_NOTEBOOK_CHANGING).N(   R   t   VetoR   (   R3   RS   RU   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   `  s    
(   R:   R;   RB   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   ^  s   t   win32t   Parentc           B   sh   e  Z d  d  Z d   Z d	 d  Z d	 d  Z d	 d  Z d   Z d   Z	 d  d  e
 d	 d  Z RS(
   R   c         K   sA   | |  _  t |  _ t i |  d | d | i d | d |  | d  S(   NR2   R   R   R   (   R   Rv   R   R   R4   t   ParentPanel(   R3   R2   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4   n  s    			c         C   s   t  i |   d  S(   N(   R   R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   x  s    c         C   s   t  i |  | d d |  _ |  i p d  Sn xL |  i i D]> } | o1 t | d  o t i | i  n d | _ q: q: W|  i	   | o | i
   n d  S(   NR   i    RQ   i   (   R   RR   R   R2   RP   R   R   R   RQ   R   R   (   R3   RS   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyRR   |  s    
  
 c         C   s   |  i    d  S(   N(   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   menu_new  s    c         C   s6   |  i  i o% |  i  i } | o | i   q2 n d  S(   N(   R2   RP   t   childActiveRR   (   R3   RS   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt
   menu_close  s    c         O   s   |  i  |  | |  d  S(   N(   t
   ChildFrame(   R3   RI   RJ   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   sZ   |  i  i t j o t Sn d } d } x, |  i  i D] } | i i   o t Sq4 q4 Wt S(   Ni    (   R2   RM   t	   MDI_SPLITRl   RP   RQ   t   IsMaximizedRv   (   R3   t   iR&   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   maximize  s     c         C   sC   | o8 |  i  i } | o d | | f } n |  i |  n d  S(   Ns   %s - %s(   R2   R    t   SetTitle(   R3   R   R   t   drawt   colourR8   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s
    N(   R:   R;   R4   R   R   RR   R   R   R   R   Rl   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   l  s   
			t   MdiParentFramec           B   sS   e  Z d  Z e i d d e e e d  Z	 d   Z
 d   Z d d e d d  Z RS(   sW   Uniformed parent Mdi/Sdi class based on Mdi.

    self.Panel is defined by joined classR   c   	      K   s   t  i i |  d | d | d | d | d | t Bd | d | | t  i @o y |  i d  Wqk qk Xn t i |  d	 | d
 | | d  S(   NR   t   nameR   Ra   Rc   R    t   posi   R2   R   (   R<   t   MDIParentFrameR4   t   FULL_REPAINT_ON_RESIZEt   MAXIMIZEt   MaximizeR   (	   R3   R2   R   R   R   Ra   Rc   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s    
c         K   s   t  i d |  d t  i  |  _ |  i i |  i i  |  i d |  i |  |  _ t	 i
 |  i t  i |  i  |  i i o2 |  i i d |  d t  i  |  _ |  i i   n d  S(   NR   R   (   R<   t   MDIChildFrameR@   R   R   R2   t   panelFrameTitleR   R   R   R   t   onSashCloseR   t   PaletteR   R   (   R3   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    !c         C   s+   t  |  i d  o |  i i |  n d  S(   Nt   onClosePanelFrame(   R   R   R  (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s    R   c         C   s"   | o |  i  |  i i  n d  S(   N(   R   R2   R    (   R3   R   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    N(   R:   R;   RB   R<   R@   R   t   SIZEt   STYLE_PARENTFRAMEt   POSR4   R   R  Rl   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s   		t   MdiTabsParentFramec           B   s   e  Z d    Z RS(   c      	   K   s  |  i  } t i d |  d t i  |  _ |  i i | i  |  i i |  i _ t	 d | d |  i
 d t i d t  |  _ |  i d |  i |  |  _ |  i i |  i |  |  i   t i |  i t i |  i  | i o2 |  i  i d |  d t i  |  _ |  i i   n d  S(   NR   R   R2   Rc   (   R2   R<   R   R@   R   R   R   t   ActivateR   t   NotebookPlusR   t   STYLE_NOTEBOOKRA   R   R   t   AddPageR   R   R   R  R   R  R   R   (   R3   R   R   R   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    	

!(   R:   R;   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s   t   MdiSashParentFramec           B   s2   e  Z d  Z d   Z d   Z d   Z d   Z RS(   sW   Uniformed parent Mdi/Sdi class based on Mdi.

    self.Panel is defined by joined classc      	   K   s]  |  i  i o d |  i f GHn t i   |  _ t i d |  i d d d |  d t i  |  _ |  i i	 t i
 d d   |  i i t i  |  i i t i  |  i i t i d	  |  i i d	  t i |  i t i |  i  |  i d |  i |  |  _ t i t i  |  _ |  i i |  i d	 t i t i Bd
  |  i i d	  |  i i |  i  d S(   sA   Create tabs to switch between documents as an wx.SashLayoutWindows   Create: Mdi:   %s.tabsR   R   t   sashR   Rc   i  i   i   i    N(    R2   R   R   R<   t   NewIdt   sashIdt   SashLayoutWindowt	   NO_BORDERR  t   SetDefaultSizeRd   t   SetOrientationt   LAYOUT_HORIZONTALt   SetAlignmentt   LAYOUT_BOTTOMt   SetSashVisiblet   SASH_TOPt   SetMinimumSizeYR   R   t   onFrameSashDraggedt   EVT_SASH_DRAGGEDR   R   R   R   t
   panelSizerR   t   ALLR   R   R   (   R3   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s     &c         C   s$   t  i |   t i   i |   d  S(   N(   R   R   R<   t   LayoutAlgorithmt   LayoutMDIFrame(   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   sz   | i    t i j o d Sn | i   } | |  i j o) |  i i t i d | i   i	   n t i
   i |   d S(   s'   Called when the shashwindow is dragged.Ni  (   t   GetDragStatusR<   t   SASH_STATUS_OUT_OF_RANGEt   GetIdR  R  R  Rd   t   GetDragRectt   heightR  R  (   R3   RS   t   eID(    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s    )c         C   s$   t  i |   t i   i |   d S(   s   Overwritten for sash dragging.N(   R   R   R<   R  R  (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    (   R:   R;   RB   R   R   R  R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s
   				t   MdiSashTabsParentFramec           B   s   e  Z d    Z d   Z RS(   c      	   K   s   |  i  i o d |  i f GHn t i d t i d d d |  d t i  |  _ |  i i t i	  |  i i
 t i  |  i i t i d t   t d |  i  d t i d |  i d t  |  _ |  i |  i  t i |  | |  d	 S(
   sA   Create tabs to switch between documents as an wx.SashLayoutWindows   Create: Mdi: %s.tabsR   R   RA   R   Rc   i  R2   N(   R2   R   R   R<   R  R@   t   CLIP_CHILDRENt   tabsSashR  R  R  t
   LAYOUT_TOPR  Rd   t   TABSASH_HEIGHTR	  R
  RA   R   R  R   (   R3   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    -c         C   s   t  i |  |  | i   d S(   s/   When a tab is changed (EVT_MOUSE_LEFT&HitTest).N(   t   TabPlatformR   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   )  s    (   R:   R;   R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR&    s   	t   MdiSplitParentFramec           B   sh   e  Z d  Z e i d d	 e e e d  Z	 d   Z
 d	 d  Z d   Z d   Z d d e d	 d  Z RS(
   s   Default on Linux.R   c   	      K   s   t  i i |  d | d | d | d | d | t Bd | d | | t  i @o y |  i d  Wqk qk Xn t i |  d	 | d
 | | d  S(   NR   R   R   Ra   Rc   R    R   i   R2   R   (   R<   t   FrameR4   R   R   R   R   (	   R3   R2   R   R   R   Ra   Rc   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4   0  s    
c      	   K   s   t  i |  t  i d t |  _ } t d |  i d | d t  i d t  |  _ |  i	 d | |  |  _
 | i d  |  i   } |  i | d | d d f  |  i | d | d f  | i   t i i d  o% | i |  i |  i
 | d d  n | i |  i |  i
 d	  |  i   d  S(
   NRc   R2   R   R   i   i    i   R   i8(   R<   t   SplitterWindowR@   t   STYLE_SPLITt   splitR	  R2   R
  RA   R   R   t   SetMinimumPaneSizet   GetSizet   SetSizet
   UpdateSizet   syst   platformt
   startswitht   SplitHorizontallyR   (   R3   R   R   R   R0  Ra   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   H  s    "
%c         C   s   |  i  i |  i  d  S(   N(   RA   R]   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   Z  s    c         C   s   |  i  i   d  S(   N(   RA   R_   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   ]  s    c         C   si   |  i  pQ | i   } | d j o4 | t |  i i  j  o |  i i | i i   q[ n | i   d  S(   Ni(   R   R   t   lenR2   RP   RQ   R   R   (   R3   RS   RU   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   `  s
    
&R   c         C   sR   | oG |  i  i } | o# d | t i i |  | f } n |  i |  n d  S(   Ns   %s - %s - %s(   R2   R    R   R1   t   dirnameR   (   R3   R   R   R   R   R8   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   h  s
    #N(   R:   R;   RB   R<   R@   R   R  R  R  R4   R   R   R   R   Rl   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR,  .  s   			t   SdiParentFramec           B   sJ   e  Z d  Z e i d d e e e d  Z	 d   Z
 d d e d d  Z RS(   s,   Uniformed parent Mdi/Sdi class based on Sdi.R   c   	      K   s   t  i i |  d | d | d | d | d | t Bd | d | | t  i @o y |  i d  Wqk qk Xn t |  _ t i |  d	 | d
 | | d  S(   NR   R   R   Ra   Rc   R    R   i   R2   R   (	   R<   R-  R4   R   R   R   Rl   R   R   (	   R3   R2   R   R   R   Ra   Rc   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4   q  s    
	c      	   K   s   |  i  i o d |  i f GHn t d |  i  d |  d t i d t  |  _ |  i d |  i |  |  _	 |  i i
 |  i	 |  |  i   d S(   s9   Create tabs to switch between documents as an wx.Notebooks   Create: Sdi:   %s.tabsR2   R   R   Rc   N(   R2   R   R   R	  R<   R@   R
  RA   R   R   R  R   (   R3   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    R   c         C   s"   | o |  i  |  i i  n d  S(   N(   R   R2   R    (   R3   R   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    N(   R:   R;   RB   R<   R@   R   R  R  R  R4   R   Rl   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR;  o  s   	
t   Childc           B   se   e  Z d  d  d d  Z d   Z d   Z d d  Z d d  Z d  d  e e d d  Z	 d   Z
 RS(	   R   c         K   sk   | i  } d |  _ d |  _ g  |  _ d |  _ d |  _ t i |  d | d | i d | d | d | | d  S(   NR   t   ?R2   R   R   R   R   (	   R2   t	   pageTitlet
   _pageTitleR   t
   extraTitlet   _extraTitleR   R4   t
   ChildPanel(   R3   R   R   R   R   R   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s    							c         C   sO   |  i  } |  i } | | _ | i i |  |  i | | i  t i |   d  S(   N(	   R2   R   R   RP   R   t   addPageToParentRM   R   R   (   R3   R2   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    			c      	   C   sG   |  i  } | i } | i d t |  d |  i d | t t g j  d S(   sA   "Add page with childs title to parent
        Can be overwritten.R   t   textt   selectN(   R   RA   R  R>   R   RN   RO   (   R3   R   RM   R   RA   (    (    s   C:\py\_spe\sm\wxp\smdi.pyRC    s    		c         C   sS   |  i  |  o/ |  i i o d |  i n |  i |  i _ n t i |  |  d S(   s   Activate event.s   Event:  Child: %s.ActivateN(   R   R2   R   R   R   R   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s
    c         C   s  |  i  } | i } |  i   } |  i } | i } t } |  i } | o d |  i GHn t i	 |  d d |  _
 |  i
 p | o d |  i GHn t Sn | o | i   n | t t g j o
 d }	 n d }	 | i }
 |
 i |  | t t g j o |
 } t i |   | o t i |  i  n t | d  o | |	 } | i   | i i |  t } | i i   } | i   | ov d } xm |
 D]a } | i i   | i i } | i |  | | j o | i |  n | i i   | d 7} qWn | i i   } n d } |
 o! |
 | | _ | i i i   n
 d | _ | o | t j o |  i   n |
 p | i    n | o d |  i GHn t S(	   sL   Close event.
        Try to avoid self here once DeletePage has been called.s   Event<: Child: %s.CloseR   i    s%   Event>: Child: %s.Close returns Falsei   RA   s$   Event>: Child: %s.Close returns TrueN(!   R2   R   R   R   RM   Rv   R   R   R   RR   R   R   RN   RO   RP   R   R   R   RA   R   R   t
   DeletePageRl   R   R   RQ   t   SetSelectionR   R  R   R   R   R   (   R3   RS   R2   R   RU   R   RM   t	   destroyedR   t   deltaRP   t   sdit   currentt   selectedt   cR   RA   (    (    s   C:\py\_spe\sm\wxp\smdi.pyRR     sp    					
  
	


 	 c         C   s   | oz | o | |  _  n | o | |  _ n |  i  o; d d g |  i i o |  i } d |  i  | f |  _ q d |  _ n | o` |  i i t j p t	 o |  i
 |  i  n% t |  d  o |  i
 |  i   n |  i   n d  S(   NR   s    *s   %s%sR   (   R>  R@  R   R   R   R?  R2   t   mdiNameRN   t   WINR   R   t   setIcon(   R3   R   R   R   R   R   R&   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s      
!c         C   s   d  S(   N(    (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyRP    s    N(   R:   R;   R   R4   R   RC  R   RR   Rl   R   RP  (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR<    s   			Ct   MdiSashTabsChildFramec           B   sM   e  Z e i e d  e d d  Z d   Z d  d  e	 e	 d d  Z
 d   Z RS(   R   c   	      K   s   t  |  _ | i } | i o d |  i GHn | d  j o | i   } n | o | t i O} n t i	 i
 |  d | d | d | d | t Bd | |  i   |  i |  _ t i
 |  d | d | d	 | | d  S(
   Ns   Create: Mdi: %sR   R   R   Rc   R    R   R   R   (   Rl   R   R2   R   R   R   R   R<   R   R   R4   R   R   R  R   R<  (	   R3   R   R   R   R   Rc   R   R   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s*    		


c         C   s    |  i  i |  _ t i |   d  S(   N(   R   RA   R<  R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   ;  s    c         C   s   t  i |  | | | |  |  i i |  i d | | od | o] |  i   } |  i i | |  i  | d  j	 o* t |  i d  o |  i i	 | |  q n d  S(   NR   t   SetPageColour(
   R<  R   R   R?  R   RA   t   SetPageTextR   R   RR  (   R3   R   R   R   R   R   RU   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   ?  s     c         C   sQ   |  i  |  o- |  i d t  |  i i i |  i    n t i |  |  d  S(   NR   (	   R   R   Rv   R   RA   RG  R   R<  R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   H  s    N(   R:   R;   R<   R@   t   UNNAMEDt   STYLE_CHILDFRAMER   R4   R   Rl   R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyRQ    s   		t   MdiChildFramec           B   sA   e  Z d  Z d   Z d d e e d d  Z d   Z d   Z RS(   s   Mdi Child frame without tabs.c         C   s   d  S(   N(    (   R3   R   RM   (    (    s   C:\py\_spe\sm\wxp\smdi.pyRC  P  s    R   c         C   s6   t  i |  | | | |  |  i i |  i d | d  S(   NR   (   R<  R   R   R?  (   R3   R   R   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   S  s    c         C   s   t  i |   d  S(   N(   R<  R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   W  s    c         C   s8   |  i  |  o |  i d t  n t i |  |  d  S(   NR   (   R   R   Rv   R<  R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   Z  s    N(	   R:   R;   RB   RC  Rl   R   R   R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyRV  N  s
   		t   MdiTabsChildFramec           B   s;   e  Z d    Z d   Z d d e e d d  Z d   Z RS(   c      	   K   s  |  i  i o d |  i f GHn t d |  i  d |  d t i d t  } |  _ |  i d | |  } |  _	 | i
 d t |  d |  i  i  x^ |  i  i D]P } | i i } | i
 d t |  d | i i  | i
 d t |  d |  q W| i
 d | d | d t  |  i   d	 S(
   sA   Create tabs to switch between documents as an wx.SashLayoutWindows   Create: Sdi:   %s.tabsR2   R   R   Rc   R   RD  RE  N(   R2   R   R   R	  R<   R@   R
  RA   R   R   R  R>   R    RP   RQ   R?  Rl   R   (   R3   R   R   R   RA   R   R   t	   childTabs(    (    s   C:\py\_spe\sm\wxp\smdi.pyR   `  s    " " c         C   s   t  i |   d  S(   N(   R<  R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   r  s    R   c         C   s   t  i |  | | |  | oh | oa |  i   d } |  i i | |  i  | d  j	 o* t |  i d  o |  i i | |  q n d  S(   Ni   RR  (	   R<  R   R   RA   RS  R?  R   R   RR  (   R3   R   R   R   R   R   RU   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   u  s     c         C   sU   |  i  |  o1 |  i d t  |  i i i |  i   d  n t i |  |  d  S(   NR   i   (	   R   R   Rv   R   RA   RG  R   R<  R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   }  s    !N(   R:   R;   R   R   Rl   R   R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyRW  _  s   		t   MdiSplitChildFramec           B   s}   e  Z e i e d  d  d
 d  Z d   Z d   Z d  d  e	 e	 d
 d  Z
 d   Z d   Z d   Z d   Z d
 d	  Z RS(   R   c   	      K   s   t  |  _ | i } | i o d |  i G| G| GHn t i i |  d | d | d | i d t i	 d d  d | t
 Bt i |  d	 | d
 | d | | t i |  i t i |   d  S(   Ns   Create: MdiSplit: %sR   R   R   Ra   iX  i  Rc   R   R   R   (   Rl   R   R2   R   R   R<   R   R4   RA   Rd   R   R<  R   R   R   t   EVT_SET_FOCUS(	   R3   R   R   Rc   R   R   R   R   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s     		
	c         K   s   |  i  i o d |  i f GHn |  i d |  d | |  |  _ t i t i  } | i |  i d t i	 d  |  i
 t  |  i |  |  i   d S(   sA   Create tabs to switch between documents as an wx.SashLayoutWindows   Create: Sdi:   %s.tabsR   R   i   i    N(   R2   R   R   R   R   R<   R   R   R   R   R   Rl   R   R   (   R3   R   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c      	   C   s\   |  i  } | i } |  _ | i   | i d |  d |  i d | t t g j  | i   d S(   sA   "Add page with childs title to parent
        Can be overwritten.R   RD  RE  N(   R   RA   R   R  R   RN   RO   R   (   R3   R   RM   R   RA   (    (    s   C:\py\_spe\sm\wxp\smdi.pyRC    s
    	
+c         C   s   t  i |  | | |  |  i i |  i d |  i d | | od | o] |  i   } |  i i | |  i  | d  j	 o* t	 |  i d  o |  i i
 | |  q n d  S(   NR   R   RR  (   R<  R   R   R?  R@  R   RA   RS  R   R   RR  (   R3   R   R   R   R   R   RU   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    " c         O   s   d  S(   N(    (   R3   RI   RJ   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   SetIcon  s    c         C   s   t  S(   N(   Rl   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   s'   |  i    |  i i i |  i    d  S(   N(   R   R   RA   RG  R   (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s    
c         C   s   |  i    d  S(   N(   R  (   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   s8   |  i  |  o |  i d t  n t i |  |  d  S(   NR   (   R   R   Rv   R<  R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    N(   R:   R;   R<   R@   RU  R   R4   R   RC  Rl   R   R[  R   R  R   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyRY    s   								t   SdiChildFramec           B   sD   e  Z e i e d  d  d d  Z d   Z d  d  e e d d  Z	 RS(   R   c   	      K   s	  t  |  _ | i } | i o d |  i G| G| GHn | d  j o | i   } n | o | t i O} n t i	 i
 |  d | d | d | d t i d d  d | t Bd	 | | o/ t d
 j o |  i   q |  i | i  n t i
 |  d | d | d | | d  S(   Ns   Create: Sdi: %sR   R   R   Ra   iX  i  Rc   R    R   R   R   R   (   Rv   R   R2   R   R   R   R   R<   R   R-  R4   Rd   R   t   PLATFORMR   R3  Ra   R<  (	   R3   R   R   Rc   R   R   R   R   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s0    		

c      	   K   s  |  i  i o d |  i f GHn t d |  i  d |  d t i d t  } |  _ |  i d | |  } |  _	 | i
 d t |  d |  i  i  x^ |  i  i D]P } | i i } | i
 d t |  d | i i  | i
 d t |  d |  q W| i
 d | d | d t  |  i   d	 S(
   sA   Create tabs to switch between documents as an wx.SashLayoutWindows   Create: Sdi:   %s.tabsR2   R   R   Rc   R   RD  RE  N(   R2   R   R   R	  R<   R@   R
  RA   R   R   R  R>   R    RP   RQ   R?  Rl   R   (   R3   R   R   R   RA   R   R   RX  (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    " " c         C   sL   t  i |  | | |  | o+ | o$ |  i i |  i   d |  i  n d  S(   Ni   (   R<  R   RA   RS  R   R?  (   R3   R   R   R   R   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR   
  s    N(
   R:   R;   R<   R@   RU  R   R4   R   Rl   R   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR\    s   	t   Appc           B   sk   e  Z d	 e d  d d e i d d  d	 e i e i e i  e e	 d 
 Z
 d   Z d   Z e d  Z RS(
   i    R   R   i   i  c         K   su  | |  _  | |  _ a | |  _ | |  _ | |  _ | |  _ |  i |  | |  _ |	 |  _	 |
 |  _
 | |  _ | |  _ | |  _ | |  _ t |  _ | |  _ g  |  _ d  |  _ |  i o t | |   |  _ t _ n t i |  _ | |  _ x? | D]7 } t |  |  o d | GHq t |  | | |  q W| o& d GHt i i |  d | d |	 n d GHt i i |  d | d  S(   Ns1   Warning: Application can't accept attribute '%s'.s?   Launching single instance application (with xml-rpc server) ...t   redirectR   s   Launching application...(   R   RB  t
   CHILDPANELR   R   R   R  t   SetMdiR   R    R   Ra   t	   imagePathR   t   singleInstanceRl   t   activeRc   RP   R   R   R0   R   R<   t
   attributesR   t   setattrt	   singleAppt   SingleInstanceAppR4   R^  (   R3   R   RB  R   R   R   R  RM   R   R    R   Ra   Rb  R   Rc  Rc   Re  t   key(    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s@    																
	 !c         C   sQ   t  |  i d  o |  i i | i  n |  i   i   |  i   i t  d  S(   Nt   onArgs(   R   R   Rj  t   datat   GetTopWindowR   t   IconizeRv   (   R3   t   evt(    (    s   C:\py\_spe\sm\wxp\smdi.pyt   OnArgsA  s    c         C   s   |  i  o, |  i o t Sn |  i t i |  i  n t i   |  i	 |  d |  i
 d |  i d |  i d |  i |  i |  _ |  i i |  _ |  i i t  |  i |  i  t S(   NRa   R   R   Rc   (   Rc  Rd  Rv   RE   Rg  t   EVT_POST_ARGSRo  R<   t   InitAllImageHandlerst   ParentFrameRa   R    R   Rc   Re  R   R   R   R   Rl   t   SetTopWindow(   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   OnInitG  s    


			c         C   s]  | |  _  t i |  p
 t } n | t j o, t o
 t } q\ t o
 t } q\ t } n t | |  _ |  i t	 j o t
 |  _ t |  _ n |  i t j o t |  _ t |  _ n |  i t j o t |  _ t |  _ ns |  i t j o t |  _ t |  _ nM |  i t j o t |  _ t |  _ n' |  i t j o t |  _ t |  _ n t i |  _ d S(   s*   Defines parent and children frame classes.N(   RN  t   DIRe   t   DEFAULTRO  t   MDI_SASH_TABS_WINR   t   MDI_SPLIT_ALLRM   RN   R;  Rr  R\  R   t   MDI_SASHR  RV  t   MDI_SASH_TABSR&  RQ  t   MDIR   RO   R  RW  R   R,  RY  Rf   R   R   (   R3   RN  (    (    s   C:\py\_spe\sm\wxp\smdi.pyRa  X  s:    	



						N(   R:   R;   R   Rv  R<   Rd   Rt   R@   Rv   R  R4   Ro  Rt  Ra  (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR^    s   *		t   TestMenuBarc           B   s>   e  Z d    Z d   Z d d  Z d d  Z d d  Z RS(   c         O   s   t  i i |  | |  t  i   |  _ |  i i t  i t d  d t  i  |  i i t  i	 t d  d t  i  |  i i t  i
 t d  d t  i  |  i |  i d  d  S(   Ns   &New	Ctrl+NR   s   &Close	Ctrl+Ws   &Exit	Alt+F4s   &File(   R<   R   R4   t   Menut   filet   Appendt   ID_NEWR
   t   ITEM_NORMALt   ID_CLOSEt   ID_EXIT(   R3   R2   RQ   RI   t   kwds(    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s    %%%c         C   sX   t  i |  i t  i |  i  t  i |  i t  i |  i  t  i |  i t  i |  i  d  S(   N(	   R<   t   EVT_MENURQ   R  R   R  R   R  t	   menu_exit(   R3   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   s   |  i  i   d  S(   N(   R   R   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   s   |  i  i   d  S(   N(   R   R"   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   s   |  i  i   d  S(   N(   R   RR   (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s    N(   R:   R;   R4   R   R   R   R   R  (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR|    s
   		t   TestToolBarc           B   s2   e  Z d e i d d d   Z d   Z d   Z RS(   c      	   K   s   | |  _  t i i |  d | d | | | i |   g  |  _ xg t D]_ } t i   } t i | t i	 d  } |  i
 | d | t i t i d d  |  i i |  qE W|  i   d  S(   NR   R   i   R   t   info(   i   i   (   R2   R<   R   R4   t
   SetToolBart   toolst   ArtIDsR  t   ArtProvider_GetBitmapt   ART_TOOLBARt   AddLabelToolt
   NullBitmapR  R   t   Realize(   R3   R   R   R'   R2   R  t   toolIdt   bmp(    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s    		 %c         C   s.   x' |  i  D] } t i |  | |  i  q
 Wd  S(   N(   R  R<   t   EVT_TOOLt   test(   R3   R   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    
 c         C   s	   d GHd  S(   Ns   test seems ok(    (   R3   RS   (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s    N(   R:   R;   R   R<   R@   R4   R   R  (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s   	t   TestParentPanelc           B   s#   e  Z d    Z d   Z d   Z RS(   c      	   K   s5   t  i i |  d | d t  i d d | d |  _ d  S(   NR   R   t   valuei    (   R<   t   TextCtrlR4   R@   t
   test_child(   R3   R   R  (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s    (c         C   s?   d |  i  } |  i i |  i d | d | |  i  d 7_  d  S(   Ns	   child%02dR   R  i   (   R  R2   R   RQ   (   R3   R  (    (    s   C:\py\_spe\sm\wxp\smdi.pyR     s    c         C   s9   |  i  i o( |  i  i } | o | i i   q5 n d  S(   N(   R2   RP   R   RQ   RR   (   R3   Rd  (    (    s   C:\py\_spe\sm\wxp\smdi.pyR"     s     (   R:   R;   R4   R   R"   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s   		t   TestChildPanelc           B   s   e  Z d    Z RS(   c         K   s&   t  i i |  d | d t  i | d  S(   NR   R   (   R<   R  R4   R@   (   R3   R   R  (    (    s   C:\py\_spe\sm\wxp\smdi.pyR4     s    (   R:   R;   R4   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pyR    s   c         C   s;   t  t t t t t i d | d d d |  } | i   d  S(   NRM   R    R   R   (   R^  R  R  R|  R  R<   R   t   MainLoop(   R   RM   R2   (    (    s   C:\py\_spe\sm\wxp\smdi.pyt   __test__  s    		t   __main__R   RM   (   i
   i
   (   iX  i  (    (    (n   t   smt   sm.osxt   INFOt   copyRB   R   R5  t   pprintR<   t   wx.lib.evtmgrR   Rg  Rf   t   wx_NotebookRN   Ry  Rz  R{  RO   R   t   SDI_MACt   MDI_SASH_WINt   MDI_SASH_TABS_LINUXRw  t   MDI_WINt   MDI_MACt   MDI_TABS_LINUXt   MDI_TABS_WINt   MDI_TABS_MACRx  Rv  Ru  R6  R]  R7  RO  R   Rp   R   R  R  Rv   t   SINGLE_INSTANCE_APPt   DEFAULT_FRAME_STYLERU  R'  R  R
  R  t   SP_NOBORDERR/  t   TB_HORIZONTALt   TB_FLATt   TB_TEXTR   R*  t   TITLERT  R
   R   R,   R/   R0   R7   R?   R>   RD   RC   R`   R	  R   R   R   R   R+  R   R   R   R  R  R&  R-  R,  R;  R<  R   RQ  RV  RW  R   RY  R\  Rh  R^  R   R|  t   ART_FILE_OPENt	   ART_PRINTt   ART_ADD_BOOKMARKt   ART_REPORT_VIEWt   ART_LIST_VIEWt   ART_HELPR  R   R  R  R  R  R  R:   (    (    (    s   C:\py\_spe\sm\wxp\smdi.pys   <module>   s   

O$																		
"U

>/.A*3$P>v