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

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.5)
  3.  
  4. import wx
  5. from gui.uberwidgets.UberButton import UberButton
  6. from util import do
  7. from common import pref
  8. CLOSEID = wx.NewId()
  9. PREVID = wx.NewId()
  10. NEXTID = wx.NewId()
  11. UPID = wx.NewId()
  12. DOWNID = wx.NewId()
  13.  
  14. class Navi(wx.Panel):
  15.     
  16.     def __init__(self, parent):
  17.         wx.Panel.__init__(self, parent, style = 0)
  18.         events = [
  19.             (wx.EVT_PAINT, self.OnPaint),
  20.             (wx.EVT_ERASE_BACKGROUND, (lambda e: pass)),
  21.             (wx.EVT_BUTTON, self.OnButton)]
  22.         (do,)((lambda .0: for event, method in .0:
  23. self.Bind(event, method))(events))
  24.         self.Sizer = wx.BoxSizer(wx.HORIZONTAL)
  25.         self.hsizer = wx.BoxSizer(wx.HORIZONTAL)
  26.         self.vsizer = wx.BoxSizer(wx.VERTICAL)
  27.         self.closebutton = UberButton(self, CLOSEID, skin = self.Parent.closebuttonskin, icon = self.Parent.closeicon)
  28.         self.prevb = UberButton(self, PREVID, skin = self.Parent.scrollbuttonskin, icon = self.Parent.lefticon)
  29.         self.nextb = UberButton(self, NEXTID, skin = self.Parent.scrollbuttonskin, icon = self.Parent.righticon)
  30.         self.upb = UberButton(self, UPID, skin = self.Parent.scrollbuttonskin, icon = self.Parent.upicon)
  31.         self.downb = UberButton(self, DOWNID, skin = self.Parent.scrollbuttonskin, icon = self.Parent.downicon)
  32.         self.hsizer.Add(self.prevb, 0, wx.EXPAND)
  33.         self.hsizer.Add(self.nextb, 0, wx.EXPAND)
  34.         self.vsizer.Add(self.upb, 1, wx.EXPAND)
  35.         self.vsizer.Add(self.downb, 1, wx.EXPAND)
  36.         self.Sizer.Add(self.hsizer, 0, wx.EXPAND)
  37.         self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  38.         self.prevb.Show(False)
  39.         self.nextb.Show(False)
  40.         self.upb.Show(False)
  41.         self.downb.Show(False)
  42.         self.closebutton.Show(pref('tabs.tabbar_x', False))
  43.         self.type = None
  44.  
  45.     
  46.     def Enabler(self):
  47.         self.prevb.Enable(self.Parent.tabindex > 0)
  48.         self.nextb.Enable(self.Parent.tabendex < self.Parent.GetTabCount() - 1)
  49.         self.upb.Enable(self.Parent.rowindex > 0)
  50.         self.downb.Enable(self.Parent.rowindex < len(self.Parent.rows) - pref('tabs.rows', 2))
  51.  
  52.     
  53.     def ShowNav(self, type = None):
  54.         if self.type == type:
  55.             return None
  56.         
  57.         self.prevb.Show(False)
  58.         self.nextb.Show(False)
  59.         self.upb.Show(False)
  60.         self.downb.Show(False)
  61.         self.Sizer.Detach(self.vsizer)
  62.         if not type:
  63.             self.Sizer.Detach(self.closebutton)
  64.             self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  65.             self.prevb.Show(False)
  66.             self.nextb.Show(False)
  67.         elif type == 1:
  68.             self.Sizer.Detach(self.closebutton)
  69.             self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  70.             self.Sizer.SetOrientation(wx.HORIZONTAL)
  71.             self.prevb.Show(True)
  72.             self.nextb.Show(True)
  73.         elif type == 3:
  74.             self.Sizer.Detach(self.closebutton)
  75.             self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  76.             self.Sizer.SetOrientation(wx.VERTICAL)
  77.             self.Sizer.Add(self.vsizer, 1, wx.EXPAND)
  78.             self.upb.Show(True)
  79.             self.downb.Show(True)
  80.         elif type == 4:
  81.             self.prevb.Show(False)
  82.             self.nextb.Show(False)
  83.             self.Sizer.Detach(self.closebutton)
  84.             self.Sizer.Add(self.closebutton, 0, wx.CENTER)
  85.         
  86.         self.type = type
  87.  
  88.     
  89.     def OnButton(self, event):
  90.         if event.GetId() == CLOSEID:
  91.             self.Parent.Parent.pagecontainer.active.tab.Close()
  92.         elif event.GetId() == PREVID:
  93.             if self.Parent.tabindex > 0:
  94.                 self.Parent.tabindex -= 1
  95.                 self.Parent.Regenerate(True)
  96.             
  97.         elif event.GetId() == NEXTID:
  98.             endex = self.Parent.tabendex
  99.             if endex < self.Parent.GetTabCount() - 1:
  100.                 while self.Parent.tabendex == endex:
  101.                     self.Parent.tabindex += 1
  102.                     self.Parent.Regenerate(True)
  103.                     continue
  104.                     self.Parent
  105.             
  106.         elif event.GetId() == UPID:
  107.             if self.Parent.rowindex > 0:
  108.                 self.Parent.rowindex -= 1
  109.                 self.Parent.Regenerate(True)
  110.             
  111.         elif event.GetId() == DOWNID:
  112.             if self.Parent.rowindex < len(self.Parent.rows) - pref('tabs.rows', 2):
  113.                 self.Parent.rowindex += 1
  114.                 self.Parent.Regenerate(True)
  115.             
  116.         
  117.         self.Enabler()
  118.         self.Parent.Refresh()
  119.         self.Parent.UpdateNotify()
  120.  
  121.     
  122.     def OnPaint(self, event):
  123.         dc = wx.PaintDC(self)
  124.         rect = wx.RectS(self.Size)
  125.         dc.Brush = wx.WHITE_BRUSH
  126.         dc.Pen = wx.TRANSPARENT_PEN
  127.         dc.DrawRectangleRect(rect)
  128.  
  129.  
  130.