root/trunk/RBSkinning/RBSkinning/wxTools/__init__.py

Revision 479, 1.4 kB (checked in by sholloway, 6 years ago)

Finished up the docking tools
Cleaned up a rarely seen bug in the layouts when resizing
Added the docking test harness as the first RBSkinning demo :)

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 #~ Definitions
24 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25
26 def SetLayoutContainerSizeHints(layout, parent):
27     minsize = layout.GetMinSize().asTuple()
28     clientsize = parent.GetClientSizeTuple()
29     if clientsize[0]<minsize[0] or clientsize[1]<minsize[1]:
30         clientsize = max(clientsize[0], minsize[0]), max(clientsize[1], minsize[1])
31         parent.SetClientSize(clientsize)
32     size = parent.GetSizeTuple()
33     sizew = minsize[0] + (size[0] - clientsize[0])
34     sizeh = minsize[1] + (size[1] - clientsize[1])
35     parent.SetSizeHints(sizew, sizeh)
36
Note: See TracBrowser for help on using the browser.