root/trunk/RBSkinning/RBSkinning/wxPythonSkin/layout_table.py

Revision 689, 2.5 kB (checked in by sholloway, 5 years ago)

*** empty log message ***

Line 
1 #!/usr/bin/env python
2 ##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 ##~ License
4 ##~
5 ##- The RuneBlade Foundation library is intended to ease some
6 ##- aspects of writing intricate Jabber, XML, and User Interface (wxPython, etc.)
7 ##- applications, while providing the flexibility to modularly change the
8 ##- architecture. Enjoy.
9 ##~
10 ##~ Copyright (C) 2002  TechGame Networks, LLC.
11 ##~
12 ##~ This library is free software; you can redistribute it and/or
13 ##~ modify it under the terms of the BSD style License as found in the
14 ##~ LICENSE file included with this distribution.
15 ##~
16 ##~ TechGame Networks, LLC can be reached at:
17 ##~ 3578 E. Hartsel Drive #211
18 ##~ Colorado Springs, Colorado, USA, 80920
19 ##~
20 ##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21
22 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23 #~ Imports
24 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25
26 from layout import wx, layout
27 from RBSkinning.wxTools.wxRBRowColSizer import wxRBRowColSizer
28
29 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30 #~ Class
31 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32
33 class layout_table(layout):
34     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
35     #~ Constants / Variables / Etc.
36     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37
38     default_settings = layout.default_settings.copy()
39     default_settings.update({
40         #'expandrows': '[]',
41         #'expandrowrange': '(None, None)',
42         #'expandcols': '[]',
43         #'expandcolrange': '(None, None)',
44         #'cellsize': '(10, 22)',
45         })
46
47     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
48     #~ Public
49     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50
51     def SkinInitialize(self):
52         self.winParent = self.wxGetParentObject((wx.wxWindowPtr, layout))
53         if not isinstance(self.winParent, wx.wxWindowPtr): self.winParent = None
54
55         cellsize = self.wxEvalCond('cellsize', wx.wxDefaultSize)
56
57         # Create the layout sizer
58         self.object = wxRBRowColSizer(cellsize)
59         self.wxInitialStandardOptions()
60
61         self.PushContext()
62
63     def SkinFinalize(self):
64         layout.SkinFinalize(self)
65
66         self.object.AddGrowableRow(self.wxEvalCond('expandrows', []))
67         expandrowrange = self.wxEvalCond('expandrowrange', None)
68         if expandrowrange:
69             self.object.SetGrowableRowRange(*expandrowrange)
70
71         self.object.AddGrowableCol(self.wxEvalCond('expandcols', []))
72         expandcolrange = self.wxEvalCond('expandcolrange', None)
73         if expandcolrange:
74             self.object.SetGrowableColRange(*expandcolrange)
75
Note: See TracBrowser for help on using the browser.