Changeset 718

Show
Ignore:
Timestamp:
10/13/03 12:30:34 (5 years ago)
Author:
sholloway
Message:

*** empty log message ***

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/RBSkinning/RBSkinning/wxPythonSkin/label.py

    r472 r718  
    3838    default_settings.update({ 
    3939        'name':     __name__, 
    40         'label':    '', 
     40        #'label':    '', 
    4141        }) 
    4242 
  • trunk/RBSkinning/RBSkinning/wxPythonSkin/layout.py

    r674 r718  
    4646        #'fit': '0', 
    4747 
    48         #'sizerAuto': '1',  # Note: Depreciated, use autosize instead 
    49         #'sizerHints': '1', # Note: Depreciated, use sethints instead 
    50         #'sizerFit': '0',   # Note: Depreciated, use fit instead 
    51  
    5248        #'args': '()', 
    5349        }) 
     50 
     51    orientation_aliases = { 
     52        'opp': 'opposite', 
     53        'o': 'opposite', 
     54        's': 'same', 
     55        'vert': 'vertical', 
     56        'v': 'vertical', 
     57        'horiz':'horizontal', 
     58        'h':'horizontal', 
     59        } 
    5460 
    5561    orientation_map = { 
     
    5864        'same': (wx.wxBoxSizer, (wx.wxVERTICAL,)), 
    5965        'vertical': (wx.wxBoxSizer, (wx.wxVERTICAL,)), 
    60         'vert': (wx.wxBoxSizer, (wx.wxVERTICAL,)), 
    61  
    6266        'horizontal': (wx.wxBoxSizer, (wx.wxHORIZONTAL,)), 
    63         'horiz': (wx.wxBoxSizer, (wx.wxHORIZONTAL,)), 
    64  
    6567        'box': (wx.wxBoxSizer, tuple()), 
    6668        'grid': (wx.wxGridSizer, tuple()), 
     
    7375    def SkinInitialize(self): 
    7476 
    75         # XXX: Depreciate these out... 
    76         sizerAuto = self.settings.get('sizerAuto', self) 
    77         if sizerAuto is not self: 
    78             self.settings['autosize'] = sizerAuto 
    79             warnings.warn('"sizerAuto" attribute should be replaced with "autosize"', DeprecationWarning) 
    80         sizerHints = self.settings.get('sizerHints', self) 
    81         if sizerHints is not self: 
    82             self.settings['sethints'] = sizerHints 
    83             warnings.warn('"sizerHints" attribute should be replaced with "sethints"', DeprecationWarning) 
    84         sizerFit = self.settings.get('sizerFit', self) 
    85         if sizerFit is not self: 
    86             self.settings['fit'] = sizerFit 
    87             warnings.warn('"sizerFit" attribute should be replaced with "fit"', DeprecationWarning) 
    88  
    89         orientation = self.settings.get('orientation', 'opposite') 
    90         # Grab the window parent object, or the first layout derived parent 
    91         self.winParent = self.wxGetParentObject((wx.wxWindowPtr, layout)) 
    92         if isinstance(self.winParent, wx.wxWindowPtr):  
    93             # Set sizercfg default for context, if not set 
    94             if 'sizercfg' not in self.settings: 
    95                 self.settings['sizercfg'] = '1, wxEXPAND' 
    96         else: 
    97             # Set sizercfg default for context, if not set 
    98             if 'sizercfg' not in self.settings: 
    99                 self.settings['sizercfg'] = '0, wxEXPAND' 
    100  
    101             # Layouts cancel the window parent 
    102             parentLayout = self.winParent 
    103             self.winParent = None 
    104  
    105             # Figure out what type of sizer we should be creating 
    106             if orientation == 'opposite': 
    107                 orientation = 'vertical' # New Default 
    108                 # Calculate the "real" opposite 
    109                 try: GetOrientation = parentLayout.GetOrientation 
    110                 except AttributeError: pass 
    111                 else: 
    112                     if GetOrientation() == wx.wxVERTICAL: 
    113                         orientation = 'horizontal' 
    114                     else: orientation = 'vertical' 
    115             elif orientation == 'same': 
    116                 orientation = 'vertical' # New Default 
    117                 # Calculate the "real" value 
    118                 try: GetOrientation = parentLayout.GetOrientation 
    119                 except AttributeError: pass 
    120                 else: 
    121                     if GetOrientation() == wx.wxVERTICAL: 
    122                         orientation = 'vertical' 
    123                     else: orientation = 'horizontal' 
    124  
    12577        # Create the layout sizer 
     78        orientation = self._GetOrientation() 
    12679        sizerClass, preArgs = self.orientation_map[orientation] 
    12780        postArgs = self.wxEvalCond('args', ()) 
     
    170123            return super(layout, self).wxAddChild(ChildNode) 
    171124 
    172         sizerargs, sizerkw = self._GetChildSizerArgsKw(ChildNode
     125        sizerargs, sizerkw = ChildNode.wxEvalCond('sizercfg', ((), {}), codefmtstr='argskw(%s)'
    173126         
    174127        # Add to our layout object 
     
    181134                self.object.SetItemMinSize(ChildNode.object, *minsize) 
    182135 
    183     def _GetChildSizerArgsKw(self, ChildNode): 
    184         sizerargs, sizerkw = ChildNode.wxEvalCond('sizercfg', (None, {}), codefmtstr='argskw(%s)') 
    185         if sizerargs is None: 
    186             sizerargs = [ChildNode.wxEvalCond(*evalargs) for evalargs in (('sizerOption', 0), ('sizerFlag', 0), ('sizerBorder', 0))] 
    187             if sizerargs != [0,0,0]: 
    188                 warnings.warn('"sizerOption", "sizerFlag", and "sizerBorder" attributes should be replaced with "sizercfg"', DeprecationWarning) 
    189         return tuple(sizerargs), dict(sizerkw) 
     136    def _GetOrientation(self, orientation=None, default='opposite'): 
     137        orientation = orientation or self.settings.get('orientation', None) or self.settings.get('orient', None) or default 
     138        orientation = self.orientation_aliases.get(orientation, orientation) 
     139        # Grab the window parent object, or the first layout derived parent 
     140        self.winParent = self.wxGetParentObject((wx.wxWindowPtr, layout)) 
     141        if isinstance(self.winParent, wx.wxWindowPtr):  
     142            # Set sizercfg default for context, if not set 
     143            if 'sizercfg' not in self.settings: 
     144                self.settings['sizercfg'] = '1, wxEXPAND' 
     145        else: 
     146            # Set sizercfg default for context, if not set 
     147            if 'sizercfg' not in self.settings: 
     148                self.settings['sizercfg'] = '0, wxEXPAND' 
    190149 
     150            # Layouts cancel the window parent 
     151            parentLayout = self.winParent 
     152            self.winParent = None 
     153 
     154            # Figure out what type of sizer we should be creating 
     155            if orientation == 'opposite': 
     156                orientation = 'vertical' # New Default 
     157                # Calculate the "real" opposite 
     158                try: GetOrientation = parentLayout.GetOrientation 
     159                except AttributeError: pass 
     160                else: 
     161                    if GetOrientation() == wx.wxVERTICAL: 
     162                        orientation = 'horizontal' 
     163                    else: orientation = 'vertical' 
     164            elif orientation == 'same': 
     165                orientation = 'vertical' # New Default 
     166                # Calculate the "real" value 
     167                try: GetOrientation = parentLayout.GetOrientation 
     168                except AttributeError: pass 
     169                else: 
     170                    if GetOrientation() == wx.wxVERTICAL: 
     171                        orientation = 'vertical' 
     172                    else: orientation = 'horizontal' 
     173 
     174        orientation = self.orientation_aliases.get(orientation, orientation) 
     175        return orientation 
  • trunk/RBSkinning/RBSkinning/wxPythonSkin/wxSkinLayoutObject.py

    r475 r718  
    3737    default_settings = wxSkinObject.default_settings.copy() 
    3838    default_settings.update({ 
    39         #'sizerOption': '0',    # Note: Depreciated, use sizercfg instead 
    40         #'sizerFlag': '0',      # Note: Depreciated, use sizercfg instead 
    41         #'sizerBorder': '0',    # Note: Depreciated, use sizercfg instead 
    4239        #'sizercfg': '0,0,0', 
    4340        }) 
  • trunk/RBSkinning/demo/wxPythonSkin/widgets/widgets.py

    r687 r718  
    3737            <panel sizercfg='1, wxEXPAND'> 
    3838                <layout sizercfg='1, wxEXPAND'> 
    39                     <layout> 
     39                    <group label='Group 1' orientation='horizontal'> 
     40                        <spacer size='10' /> 
    4041                        <button label='button 1' bgcolor='MEDIUM SLATE BLUE'/> 
    4142                        <spacer size='10' /> 
     
    4647                        <toggle_button label='toggle button 2' /> 
    4748                        <spacer size='10' /> 
    48                         <line size='(1, 20)' style='wxLI_VERTICAL' sizercfg='0, wxEXPAND' /> 
     49                    </group> 
     50                    <spacer size='10' /> 
     51                    <group label='Group 2' orientation='horizontal'> 
    4952                        <spacer size='10' /> 
    5053                        <check label='check 1' value='1'/> 
     
    5558                        <spacer size='10' /> 
    5659                        <radio label='radio 2' value='0'/> 
    57                     </layout
     60                    </group
    5861                    <spacer size='10' /> 
    5962                    <layout>