X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e484fddf08d62b205947eec9f071c7e68d0d1741..4ecdf8fc4032944efe83947bc687051eafcae74d:/wxPython/wx/tools/XRCed/xxx.py diff --git a/wxPython/wx/tools/XRCed/xxx.py b/wxPython/wx/tools/XRCed/xxx.py index 53dde2f52c..7226d26d91 100644 --- a/wxPython/wx/tools/XRCed/xxx.py +++ b/wxPython/wx/tools/XRCed/xxx.py @@ -314,6 +314,23 @@ class xxxObject: else: obj = self obj.name = name obj.element.setAttribute('name', name) + # Special processing for growablecols-like parameters + # represented by several nodes + def special(self, tag, node): + if not self.params.has_key(tag): + # Create new multi-group + self.params[tag] = xxxParamMulti(node) + self.params[tag].append(xxxParamInt(node)) + def setSpecial(self, param, value): + # Straightforward implementation: remove, add again + self.params[param].remove() + del self.params[param] + for i in value: + node = g.tree.dom.createElement(param) + text = g.tree.dom.createTextNode(str(i)) + node.appendChild(text) + self.element.appendChild(node) + self.special(param, node) # Imitation of FindResource/DoFindResource from xmlres.cpp def DoFindResource(parent, name, classname, recursive): @@ -475,6 +492,7 @@ class xxxWizard(xxxContainer): default = {'title': ''} winStyles = [] exStyles = ['wxWIZARD_EX_HELPBUTTON'] + styles = ['fg', 'bg', 'font', 'exstyle'] class xxxWizardPage(xxxContainer): allParams = ['bitmap'] @@ -604,8 +622,8 @@ class xxxCalendarCtrl(xxxObject): class xxxNotebook(xxxContainer): allParams = ['pos', 'size', 'style'] - winStyles = ['wxNB_DEFAULT', 'wxNB_LEFT', 'wxNB_RIGHT', 'wxNB_BOTTOM', - 'wxNB_FIXEDWIDTH', 'wxNB_MULTILINE', 'wxNB_NOPAGETHEME'] + winStyles = ['wxNB_TOP', 'wxNB_LEFT', 'wxNB_RIGHT', 'wxNB_BOTTOM', + 'wxNB_FIXEDWIDTH', 'wxNB_MULTILINE', 'wxNB_NOPAGETHEME', 'wxNB_FLAT'] class xxxChoicebook(xxxContainer): allParams = ['pos', 'size', 'style'] @@ -644,7 +662,8 @@ class xxxButton(xxxObject): allParams = ['label', 'default', 'pos', 'size', 'style'] paramDict = {'default': ParamBool} required = ['label'] - winStyles = ['wxBU_LEFT', 'wxBU_TOP', 'wxBU_RIGHT', 'wxBU_BOTTOM', 'wxBU_EXACTFIT'] + winStyles = ['wxBU_LEFT', 'wxBU_TOP', 'wxBU_RIGHT', 'wxBU_BOTTOM', 'wxBU_EXACTFIT', + 'wxNO_BORDER'] class xxxBitmapButton(xxxObject): allParams = ['bitmap', 'selected', 'focus', 'disabled', 'default', @@ -653,7 +672,7 @@ class xxxBitmapButton(xxxObject): 'default': ParamBool} required = ['bitmap'] winStyles = ['wxBU_AUTODRAW', 'wxBU_LEFT', 'wxBU_RIGHT', - 'wxBU_TOP', 'wxBU_BOTTOM', 'wxBU_EXACTFIT'] + 'wxBU_TOP', 'wxBU_BOTTOM'] class xxxRadioButton(xxxObject): allParams = ['label', 'value', 'pos', 'size', 'style'] @@ -769,45 +788,11 @@ class xxxFlexGridSizer(xxxGridSizer): specials = ['growablecols', 'growablerows'] allParams = ['cols', 'rows', 'vgap', 'hgap'] + specials paramDict = {'growablecols': ParamIntList, 'growablerows': ParamIntList} - # Special processing for growable* parameters - # (they are represented by several nodes) - def special(self, tag, node): - if not self.params.has_key(tag): - # Create new multi-group - self.params[tag] = xxxParamMulti(node) - self.params[tag].append(xxxParamInt(node)) - def setSpecial(self, param, value): - # Straightforward implementation: remove, add again - self.params[param].remove() - del self.params[param] - for i in value: - node = g.tree.dom.createElement(param) - text = g.tree.dom.createTextNode(str(i)) - node.appendChild(text) - self.element.appendChild(node) - self.special(param, node) class xxxGridBagSizer(xxxSizer): specials = ['growablecols', 'growablerows'] allParams = ['vgap', 'hgap'] + specials - paramDict = {'growablecols':ParamIntList, 'growablerows':ParamIntList} - # Special processing for growable* parameters - # (they are represented by several nodes) - def special(self, tag, node): - if not self.params.has_key(tag): - # Create new multi-group - self.params[tag] = xxxParamMulti(node) - self.params[tag].append(xxxParamInt(node)) - def setSpecial(self, param, value): - # Straightforward implementation: remove, add again - self.params[param].remove() - del self.params[param] - for i in value: - node = g.tree.dom.createElement(param) - text = g.tree.dom.createTextNode(str(i)) - node.appendChild(text) - self.element.appendChild(node) - self.special(param, node) + paramDict = {'growablecols': ParamIntList, 'growablerows': ParamIntList} # Container with only one child. # Not shown in tree. @@ -832,6 +817,11 @@ class xxxChildContainer(xxxObject): element.removeChild(node) node.unlink() assert 0, 'no child found' + def resetChild(self, xxx): + '''Reset child info (for replacing with another class).''' + self.child = xxx + self.hasChildren = xxx.hasChildren + self.isSizer = xxx.isSizer class xxxSizerItem(xxxChildContainer): allParams = ['option', 'flag', 'border', 'minsize', 'ratio'] @@ -846,6 +836,12 @@ class xxxSizerItem(xxxChildContainer): if 'pos' in self.child.allParams: self.child.allParams = self.child.allParams[:] self.child.allParams.remove('pos') + def resetChild(self, xxx): + xxxChildContainer.resetChild(self, xxx) + # Remove pos parameter - not needed for sizeritems + if 'pos' in self.child.allParams: + self.child.allParams = self.child.allParams[:] + self.child.allParams.remove('pos') class xxxSizerItemButton(xxxSizerItem): allParams = [] @@ -1088,5 +1084,9 @@ def MakeEmptyRefXXX(parent, ref): pageElem.appendChild(elem) elem = pageElem # Now just make object - return MakeXXXFromDOM(parent, elem) + xxx = MakeXXXFromDOM(parent, elem) + # Label is not used for references + xxx.allParams = xxx.allParams[:] + #xxx.allParams.remove('label') + return xxx