Changeset 475
- Timestamp:
- 03/15/03 01:00:36 (6 years ago)
- Files:
-
- trunk/RBSkinning/RBSkinning/InheritableSettings.py (modified) (1 diff)
- trunk/RBSkinning/RBSkinning/SkinObject.py (modified) (3 diffs)
- trunk/RBSkinning/RBSkinning/wxPythonSkin/dockzone.py (added)
- trunk/RBSkinning/RBSkinning/wxPythonSkin/layout.py (modified) (7 diffs)
- trunk/RBSkinning/RBSkinning/wxPythonSkin/layout_algorithm.py (modified) (1 diff)
- trunk/RBSkinning/RBSkinning/wxPythonSkin/sash_layout.py (modified) (1 diff)
- trunk/RBSkinning/RBSkinning/wxPythonSkin/wxSkinLayoutObject.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/RBSkinning/RBSkinning/InheritableSettings.py
r472 r475 63 63 except AttributeError: 64 64 if not Resilliant: raise 65 else: InheritedSettings=None 65 66 if InheritedSettings is not None: 66 67 settings.update(InheritedSettings) trunk/RBSkinning/RBSkinning/SkinObject.py
r472 r475 29 29 import SkinContext 30 30 import weakref 31 import warnings 31 32 32 33 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ … … 116 117 value = self.settings['contextnode'] 117 118 self.settings['ctxnode'] = value 118 import warnings119 119 warnings.warn('"contextnode" attribute will be renamed to "ctxnode" in future releases.', DeprecationWarning) 120 120 except KeyError: pass … … 130 130 value = self.settings['contextvar'] 131 131 self.settings['ctxvar'] = value 132 import warnings133 132 warnings.warn('"contextvar" attribute will be renamed to "ctxvar" in future releases.', DeprecationWarning) 134 133 except KeyError: pass trunk/RBSkinning/RBSkinning/wxPythonSkin/layout.py
r472 r475 24 24 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 25 25 26 import warnings 26 27 from wxSkinLayoutObject import wx, wxSkinLayoutObject, wxSkinObjectNoData 28 29 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 30 #~ Definitions 31 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 32 33 def SetLayoutContainerSizeHints(layout, container, force=False): 34 """Tool to update container's size hints to layout's minsize, 35 accounting for client area""" 36 minsize = layout.GetMinSize().asTuple() 37 size = container.GetSizeTuple() 38 clientsize = container.GetClientSizeTuple() 39 sizew = minsize[0] + (size[0] - clientsize[0]) 40 sizeh = minsize[1] + (size[1] - clientsize[1]) 41 if force or sizew > 0 or sizeh > 0: 42 container.SetSizeHints(sizew, sizeh) 43 return True 44 else: return False 27 45 28 46 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ … … 38 56 default_settings.update({ 39 57 'orientation': 'opposite', 40 #'sizerAuto': '1', 41 #'sizerFit': '0', 58 #'autosize': '1', 59 #'sethints': '1', 60 #'fit': '0', 61 62 #'sizerAuto': '1', # Note: Depreciated, use autosize instead 63 #'sizerHints': '1', # Note: Depreciated, use sethints instead 64 #'sizerFit': '0', # Note: Depreciated, use fit instead 65 42 66 #'args': '()', 43 67 }) … … 61 85 62 86 def SkinInitialize(self): 87 88 # XXX: Depreciate these out... 89 sizerAuto = self.settings.get('sizerAuto', self) 90 if sizerAuto is not self: 91 self.settings['autosize'] = sizerAuto 92 warnings.warn('"sizerAuto" attribute should be replaced with "autosize"', DeprecationWarning) 93 sizerHints = self.settings.get('sizerHints', self) 94 if sizerHints is not self: 95 self.settings['sethints'] = sizerHints 96 warnings.warn('"sizerHints" attribute should be replaced with "sethints"', DeprecationWarning) 97 sizerFit = self.settings.get('sizerFit', self) 98 if sizerFit is not self: 99 self.settings['fit'] = sizerFit 100 warnings.warn('"sizerFit" attribute should be replaced with "fit"', DeprecationWarning) 101 63 102 self.PushContext() 64 103 self.winParent = self.wxGetParentObject((wx.wxWindowPtr, layout)) … … 82 121 83 122 def SkinFinalize(self): 84 minsize = self.wxEvalCond('minsize', None) 85 if minsize is None: 86 minsize = self.wxEvalCond('sizehints', (-1, -1))[:2] 87 if minsize == (-1,-1): minsize = None 88 if minsize is None: 89 minsize = self.object.GetMinSize().asTuple() 90 if minsize is not None: 123 minsize = self.wxEvalCond('sizehints', (-1, -1))[:2] 124 if minsize == (-1,-1): 91 125 self.object.SetMinSize(minsize) 92 126 … … 95 129 parent = self.wxGetParentObject((wx.wxSizerPtr, wx.wxWindowPtr)) 96 130 if parent is self.winParent: 97 parentLayout = getattr(self.parent().context, 'layout', None) 98 if parentLayout: 99 sizew, sizeh = self.object.GetMinSize().asTuple() 100 parentLayout.SetItemMinSize(self.winParent, sizew, sizeh) 131 self.winParent.SetSizer(self.object) 132 self.winParent.SetAutoLayout(self.wxEvalCond('autosize', 1)) 101 133 102 self.winParent.SetSizer(self.object) 134 # Set size hints 135 if self.wxEvalCond('sethints', 1): 136 SetLayoutContainerSizeHints(self.object, self.winParent) 103 137 104 if self.wxEvalCond('sizerAuto', 1): 105 self.winParent.SetAutoLayout(1) 106 if self.wxEvalCond('sizerFit', 1): 107 self.object.SetSizeHints(self.winParent) # Be sure to set size hints after setting sizer! 138 if self.wxEvalCond('fit', 1): 108 139 self.object.Fit(self.winParent) 109 140 del self.winParent … … 119 150 return super(layout, self).wxAddChild(ChildNode) 120 151 121 sizerargs = ChildNode.wxEvalCond(' layout', None)152 sizerargs = ChildNode.wxEvalCond('sizercfg', None) 122 153 if sizerargs is None: 123 154 sizerargs = [ChildNode.wxEvalCond(*evalargs) for evalargs in (('sizerOption', 0), ('sizerFlag', 0), ('sizerBorder', 0))] 155 if sizerargs != (0,0,0): 156 warnings.warn('"sizerOption", "sizerFlag", and "sizerBorder" attributes should be replaced with "sizercfg"', DeprecationWarning) 124 157 args = args + tuple(sizerargs) 125 158 … … 129 162 # Check for minsize directives... 130 163 if not isinstance(ChildNode.object, tuple): 131 minsize = ChildNode.wxEvalCond('minsize', None) 132 if minsize is None: 133 minsize = ChildNode.wxEvalCond('sizehints', (-1, -1))[:2] 134 if minsize == (-1,-1): minsize = None 135 if minsize is not None: 164 minsize = ChildNode.wxEvalCond('sizehints', (-1, -1))[:2] 165 if minsize != (-1,-1): 136 166 self.object.SetItemMinSize(ChildNode.object, *minsize) 137 167 trunk/RBSkinning/RBSkinning/wxPythonSkin/layout_algorithm.py
r472 r475 37 37 default_settings = wxSkinObject.default_settings.copy() 38 38 default_settings.update({ 39 'events': 'wxEVT_SIZE, '39 'events': 'wxEVT_SIZE,wxEVT_MOVE' 40 40 }) 41 41 trunk/RBSkinning/RBSkinning/wxPythonSkin/sash_layout.py
r388 r475 53 53 kwSettings = self.wxSettingDict(['wxid', 'style', 'pos', 'size'], ['name']) 54 54 self.object = wx.wxSashLayoutWindow(winParent, **kwSettings) 55 self.wxInitialStandardOptions() 55 56 if self.wxEval('autodrag'): 56 57 wx.EVT_SASH_DRAGGED(self.object, self.object.GetId(), self.OnSashDrag) 58 59 def SkinFinalize(self): 60 self.SetSashSettings() 61 self.wxFinalStandardOptions() 62 self.context[-1].layout_algorithm.OnLayout(None) 57 63 58 64 def SetSashSettings(self): trunk/RBSkinning/RBSkinning/wxPythonSkin/wxSkinLayoutObject.py
r472 r475 37 37 default_settings = wxSkinObject.default_settings.copy() 38 38 default_settings.update({ 39 #'sizerOption': '0', 40 #'sizerFlag': '0', 41 #'sizerBorder': '0', 42 #' minsize': '0',39 #'sizerOption': '0', # Note: Depreciated, use sizercfg instead 40 #'sizerFlag': '0', # Note: Depreciated, use sizercfg instead 41 #'sizerBorder': '0', # Note: Depreciated, use sizercfg instead 42 #'sizercfg': '0,0,0', 43 43 }) 44 44 default_settings[SkinObject.BaseSettingsInherit] += 'wxDefLayout,'
