Changeset 606

Show
Ignore:
Timestamp:
07/08/03 19:55:07 (5 years ago)
Author:
sholloway
Message:

Added layout_table wxPythonSkin element

Files:

Legend:

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

    r499 r606  
    5656        }) 
    5757 
    58     globalnamespace = {
     58    globalnamespace = {'argskw': lambda *args, **kw: (args, kw)
    5959 
    6060    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
     
    245245        return eval(code, self.globalnamespace, self._GetEvalLocals(**variables)) 
    246246 
    247     def EvalLocalEx(self, code, variables): 
     247    def EvalLocalEx(self, code, variables, codefmtstr=None): 
     248        if codefmtstr: 
     249            code = codefmtstr % code 
    248250        return eval(code, self.globalnamespace, self._GetEvalLocalsEx(variables)) 
    249251         
  • trunk/RBSkinning/RBSkinning/wxPythonSkin/layout.py

    r593 r606  
    160160            return super(layout, self).wxAddChild(ChildNode) 
    161161 
    162         sizerargs = ChildNode.wxEvalCond('sizercfg', None) 
    163         if sizerargs is None: 
    164             sizerargs = tuple([ChildNode.wxEvalCond(*evalargs) for evalargs in (('sizerOption', 0), ('sizerFlag', 0), ('sizerBorder', 0))]) 
    165             if sizerargs != (0,0,0): 
    166                 warnings.warn('"sizerOption", "sizerFlag", and "sizerBorder" attributes should be replaced with "sizercfg"', DeprecationWarning) 
    167         args = args + tuple(sizerargs) 
     162        sizerargs, sizerkw = self._GetChildSizerArgsKw(ChildNode) 
    168163         
    169164        # Add to our layout object 
    170         self.object.Add(*args
     165        self.object.Add(*(args+sizerargs), **sizerkw
    171166 
    172167        # Check for minsize directives... 
     
    176171                self.object.SetItemMinSize(ChildNode.object, *minsize) 
    177172 
     173    def _GetChildSizerArgsKw(self, ChildNode): 
     174        sizerargs, sizerkw = ChildNode.wxEvalCond('sizercfg', (None, {}), codefmtstr='argskw(%s)') 
     175        print sizerargs, sizerkw 
     176        if sizerargs is None: 
     177            sizerargs = [ChildNode.wxEvalCond(*evalargs) for evalargs in (('sizerOption', 0), ('sizerFlag', 0), ('sizerBorder', 0))] 
     178            if sizerargs != [0,0,0]: 
     179                warnings.warn('"sizerOption", "sizerFlag", and "sizerBorder" attributes should be replaced with "sizercfg"', DeprecationWarning) 
     180        return tuple(sizerargs), dict(sizerkw) 
     181 
  • trunk/RBSkinning/RBSkinning/wxPythonSkin/wxSkinObject.py

    r603 r606  
    161161    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    162162 
    163     def wxEvalDefault(self, Setting, Default): 
    164         return self.EvalLocalEx(self.settings.get(Setting, Default), self.ctxVars
    165  
    166     def wxEvalCond(self, Setting, Default=None): 
     163    def wxEvalDefault(self, Setting, Default, **kw): 
     164        return self.EvalLocalEx(self.settings.get(Setting, Default), self.ctxVars, **kw
     165 
     166    def wxEvalCond(self, Setting, Default=None, **kw): 
    167167        try:  
    168168            Setting = self.settings[Setting] 
     
    170170            return Default 
    171171        else:  
    172             return self.EvalLocalEx(Setting, self.ctxVars
    173  
    174     def wxEval(self, Setting): 
    175         return self.EvalLocalEx(self.settings[Setting], self.ctxVars
     172            return self.EvalLocalEx(Setting, self.ctxVars, **kw
     173 
     174    def wxEval(self, Setting, **kw): 
     175        return self.EvalLocalEx(self.settings[Setting], self.ctxVars, **kw
    176176 
    177177    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~