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

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.6)
  3.  
  4. import wx
  5. from gui.uberwidgets.UberButton import UberButton
  6. from util.primitives.funcs 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.         self.prevb.Show(False)
  57.         self.nextb.Show(False)
  58.         self.upb.Show(False)
  59.         self.downb.Show(False)
  60.         self.Sizer.Detach(self.vsizer)
  61.         if not type:
  62.             self.Sizer.Detach(self.closebutton)
  63.             self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  64.             self.prevb.Show(False)
  65.             self.nextb.Show(False)
  66.         elif type == 1:
  67.             self.Sizer.Detach(self.closebutton)
  68.             self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  69.             self.Sizer.SetOrientation(wx.HORIZONTAL)
  70.             self.prevb.Show(True)
  71.             self.nextb.Show(True)
  72.         elif type == 3:
  73.             self.Sizer.Detach(self.closebutton)
  74.             self.Sizer.Add(self.closebutton, 0, wx.CENTER | wx.ALL, 5)
  75.             self.Sizer.SetOrientation(wx.VERTICAL)
  76.             self.Sizer.Add(self.vsizer, 1, wx.EXPAND)
  77.             self.upb.Show(True)
  78.             self.downb.Show(True)
  79.         elif type == 4:
  80.             self.prevb.Show(False)
  81.             self.nextb.Show(False)
  82.             self.Sizer.Detach(self.closebutton)
  83.             self.Sizer.Add(self.closebutton, 0, wx.CENTER)
  84.         
  85.         self.type = type
  86.  
  87.     
  88.     def OnButton(self, event):
  89.         if event.GetId() == CLOSEID:
  90.             self.Parent.Parent.pagecontainer.active.tab.Close()
  91.         elif event.GetId() == PREVID:
  92.             if self.Parent.tabindex > 0:
  93.                 self.Parent.tabindex -= 1
  94.                 self.Parent.Regenerate(True)
  95.             
  96.         elif event.GetId() == NEXTID:
  97.             endex = self.Parent.tabendex
  98.             if endex < self.Parent.GetTabCount() - 1:
  99.                 while self.Parent.tabendex == endex:
  100.                     self.Parent.tabindex += 1
  101.                     self.Parent.Regenerate(True)
  102.                     continue
  103.                     self.Parent
  104.             
  105.         elif event.GetId() == UPID:
  106.             if self.Parent.rowindex > 0:
  107.                 self.Parent.rowindex -= 1
  108.                 self.Parent.Regenerate(True)
  109.             
  110.         elif event.GetId() == DOWNID:
  111.             if self.Parent.rowindex < len(self.Parent.rows) - pref('tabs.rows', 2):
  112.                 self.Parent.rowindex += 1
  113.                 self.Parent.Regenerate(True)
  114.             
  115.         
  116.         self.Enabler()
  117.         self.Parent.Refresh()
  118.         self.Parent.UpdateNotify()
  119.  
  120.     
  121.     def OnPaint(self, event):
  122.         dc = wx.PaintDC(self)
  123.         rect = wx.RectS(self.Size)
  124.         dc.Brush = wx.WHITE_BRUSH
  125.         dc.Pen = wx.TRANSPARENT_PEN
  126.         dc.DrawRectangleRect(rect)
  127.  
  128.  
  129.