home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2009 June / maximum-cd-2009-06.iso / DiscContents / digsby_setup.exe / lib / gui / uberwidgets / uberbook / containers.pyo (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2009-02-26  |  2.0 KB  |  53 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.5)
  3.  
  4. from page import Page
  5. import wx
  6. from wx import BoxSizer, VERTICAL, EXPAND
  7. from cgui import SimplePanel
  8.  
  9. class PageContainer(SimplePanel):
  10.     
  11.     def __init__(self, parent):
  12.         SimplePanel.__init__(self, parent)
  13.         self.SetSizer(BoxSizer(VERTICAL))
  14.         self.Bind(wx.EVT_SIZE, self.OnSize)
  15.         self._active = None
  16.  
  17.     
  18.     def OnSize(self, event):
  19.         event.Skip()
  20.         if self._active:
  21.             (wx.CallAfter,)((lambda : wx.CallAfter(self._active.SetSize, self.Size)))
  22.         
  23.  
  24.     
  25.     def Append(self, panel_or_page):
  26.         if isinstance(panel_or_page, Page):
  27.             page = panel_or_page
  28.             page.Reparent(self)
  29.         else:
  30.             page = Page(self, panel_or_page)
  31.         page.Size = self.Size
  32.         return page
  33.  
  34.     
  35.     def GetActive(self):
  36.         return self._active
  37.  
  38.     
  39.     def SetActive(self, source):
  40.         if self._active != source:
  41.             if self._active:
  42.                 self._active.Hide()
  43.             
  44.             self._active = source
  45.             self._active.Size = self.Size
  46.             print 'calling show on', self._active
  47.             self._active.Show()
  48.             self.Layout()
  49.         
  50.  
  51.     active = property(GetActive, SetActive)
  52.  
  53.