X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/03319b655c0a672e255a5b64e5caeed7c3e93fac..68fc5c8025e38b9d827383fbfe7ce509ae331c1f:/wxPython/wx/tools/XRCed/xxx.py diff --git a/wxPython/wx/tools/XRCed/xxx.py b/wxPython/wx/tools/XRCed/xxx.py index 62e7aaa8b8..781c404814 100644 --- a/wxPython/wx/tools/XRCed/xxx.py +++ b/wxPython/wx/tools/XRCed/xxx.py @@ -40,7 +40,7 @@ class xxxParam(xxxNode): # Use convertion from unicode to current encoding self.textNode = text # Value returns string - if wxUSE_UNICODE: # no conversion is needed + if wx.USE_UNICODE: # no conversion is needed def value(self): return self.textNode.data def update(self, value): @@ -56,7 +56,7 @@ class xxxParam(xxxNode): self.textNode.data = unicode(value, g.currentEncoding) except UnicodeDecodeError: self.textNode.data = unicode(value) - #wxLogMessage("Unicode error: set encoding in file\nglobals.py to something appropriate") + #wx.LogMessage("Unicode error: set encoding in file\nglobals.py to something appropriate") # Integer parameter class xxxParamInt(xxxParam): @@ -90,7 +90,7 @@ class xxxParamContent(xxxNode): text = n.childNodes[0] # first child must be text node assert text.nodeType == minidom.Node.TEXT_NODE l.append(text) - data.append(str(text.data)) + data.append(text.data) else: # remove other node.removeChild(n) n.unlink() @@ -285,7 +285,7 @@ class xxxObject: else: self.element.appendChild(elem) else: - wxLogWarning('Required parameter %s of %s missing' % + wx.LogWarning('Required parameter %s of %s missing' % (param, self.className)) # Returns real tree object def treeObject(self): @@ -338,7 +338,7 @@ def DoFindResource(parent, name, classname, recursive): def FindResource(name, classname='', recursive=True): found = DoFindResource(g.tree.mainNode, name, classname, recursive) if found: return found - wxLogError('XRC resource "%s" not found!' % name) + wx.LogError('XRC resource "%s" not found!' % name) ################################################################################ @@ -410,6 +410,7 @@ class xxxMainNode(xxxContainer): class xxxPanel(xxxContainer): allParams = ['pos', 'size', 'style'] + winStyles = ['wxNO_3D', 'wxTAB_TRAVERSAL'] styles = ['fg', 'bg', 'font', 'enabled', 'focused', 'hidden', 'exstyle', 'tooltip'] @@ -418,11 +419,13 @@ class xxxDialog(xxxContainer): paramDict = {'centered': ParamBool} required = ['title'] default = {'title': ''} - winStyles = ['wxDEFAULT_DIALOG_STYLE', - 'wxCAPTION', 'wxMINIMIZE_BOX', 'wxMAXIMIZE_BOX', 'wxCLOSE_BOX', - 'wxSTAY_ON_TOP', - 'wxTHICK_FRAME', - 'wxNO_3D', 'wxDIALOG_NO_PARENT'] + winStyles = ['wxDEFAULT_DIALOG_STYLE', 'wxCAPTION', + 'wxSTAY_ON_TOP', 'wxSYSTEM_MENU', 'wxTHICK_FRAME', + 'wxRESIZE_BORDER', 'wxRESIZE_BOX', 'wxCLOSE_BOX', + 'wxMAXIMIZE_BOX', 'wxMINIMIZE_BOX', + 'wxDIALOG_MODAL', 'wxDIALOG_MODELESS', 'wxDIALOG_NO_PARENT' + 'wxNO_3D', 'wxTAB_TRAVERSAL'] + exStyles = ['wxWS_EX_VALIDATE_RECURSIVELY', 'wxDIALOG_EX_METAL'] styles = ['fg', 'bg', 'font', 'enabled', 'focused', 'hidden', 'exstyle', 'tooltip'] @@ -431,13 +434,14 @@ class xxxFrame(xxxContainer): paramDict = {'centered': ParamBool} required = ['title'] default = {'title': ''} - winStyles = ['wxDEFAULT_FRAME_STYLE', - 'wxCAPTION', 'wxMINIMIZE_BOX', 'wxMAXIMIZE_BOX', 'wxCLOSE_BOX', - 'wxSTAY_ON_TOP', - 'wxSYSTEM_MENU', 'wxRESIZE_BORDER', - 'wxFRAME_TOOL_WINDOW', 'wxFRAME_NO_TASKBAR', - 'wxFRAME_FLOAT_ON_PARENT', 'wxFRAME_SHAPED' - ] + winStyles = ['wxDEFAULT_FRAME_STYLE', 'wxDEFAULT_DIALOG_STYLE', 'wxCAPTION', + 'wxSTAY_ON_TOP', 'wxSYSTEM_MENU', 'wxTHICK_FRAME', + 'wxRESIZE_BORDER', 'wxRESIZE_BOX', 'wxCLOSE_BOX', + 'wxMAXIMIZE_BOX', 'wxMINIMIZE_BOX', + 'wxFRAME_NO_TASKBAR', 'wxFRAME_SHAPED', 'wxFRAME_TOOL_WINDOW', + 'wxFRAME_FLOAT_ON_PARENT', + 'wxNO_3D', 'wxTAB_TRAVERSAL'] + exStyles = ['wxWS_EX_VALIDATE_RECURSIVELY', 'wxFRAME_EX_METAL'] styles = ['fg', 'bg', 'font', 'enabled', 'focused', 'hidden', 'exstyle', 'tooltip'] @@ -452,18 +456,26 @@ class xxxToolBar(xxxContainer): 'pos', 'size', 'style'] hasStyle = False paramDict = {'bitmapsize': ParamPosSize, 'margins': ParamPosSize, - 'packing': ParamInt, 'separation': ParamInt, + 'packing': ParamUnit, 'separation': ParamUnit, 'dontattachtoframe': ParamBool, 'style': ParamNonGenericStyle} winStyles = ['wxTB_FLAT', 'wxTB_DOCKABLE', 'wxTB_VERTICAL', 'wxTB_HORIZONTAL', 'wxTB_3DBUTTONS','wxTB_TEXT', 'wxTB_NOICONS', 'wxTB_NODIVIDER', 'wxTB_NOALIGN', 'wxTB_HORZ_LAYOUT', 'wxTB_HORZ_TEXT'] +class xxxStatusBar(xxxObject): + hasStyle = False + allParams = ['fields', 'widths', 'styles', 'style'] + paramDict = {'fields': ParamIntNN, 'widths': ParamText, 'styles': ParamText, + 'style': ParamNonGenericStyle} + winStyles = ['wxST_SIZEGRIP'] + class xxxWizard(xxxContainer): allParams = ['title', 'bitmap', 'pos'] required = ['title'] default = {'title': ''} winStyles = [] exStyles = ['wxWIZARD_EX_HELPBUTTON'] + styles = ['fg', 'bg', 'font', 'exstyle'] class xxxWizardPage(xxxContainer): allParams = ['bitmap'] @@ -505,8 +517,24 @@ class xxxStaticBitmap(xxxObject): class xxxTextCtrl(xxxObject): allParams = ['value', 'pos', 'size', 'style'] - winStyles = ['wxTE_PROCESS_ENTER', 'wxTE_PROCESS_TAB', 'wxTE_MULTILINE', - 'wxTE_PASSWORD', 'wxTE_READONLY', 'wxHSCROLL'] + winStyles = ['wxTE_NO_VSCROLL', + 'wxTE_AUTO_SCROLL', + 'wxTE_PROCESS_ENTER', + 'wxTE_PROCESS_TAB', + 'wxTE_MULTILINE', + 'wxTE_PASSWORD', + 'wxTE_READONLY', + 'wxHSCROLL', + 'wxTE_RICH', + 'wxTE_RICH2', + 'wxTE_AUTO_URL', + 'wxTE_NOHIDESEL', + 'wxTE_LEFT', + 'wxTE_CENTRE', + 'wxTE_RIGHT', + 'wxTE_DONTWRAP', + 'wxTE_LINEWRAP', + 'wxTE_WORDWRAP'] paramDict = {'value': ParamMultilineText} class xxxChoice(xxxObject): @@ -519,8 +547,8 @@ class xxxSlider(xxxObject): allParams = ['value', 'min', 'max', 'pos', 'size', 'style', 'tickfreq', 'pagesize', 'linesize', 'thumb', 'tick', 'selmin', 'selmax'] - paramDict = {'value': ParamInt, 'tickfreq': ParamInt, 'pagesize': ParamInt, - 'linesize': ParamInt, 'thumb': ParamInt, 'thumb': ParamInt, + paramDict = {'value': ParamInt, 'tickfreq': ParamIntNN, 'pagesize': ParamIntNN, + 'linesize': ParamIntNN, 'thumb': ParamUnit, 'tick': ParamInt, 'selmin': ParamInt, 'selmax': ParamInt} required = ['value', 'min', 'max'] winStyles = ['wxSL_HORIZONTAL', 'wxSL_VERTICAL', 'wxSL_AUTOTICKS', 'wxSL_LABELS', @@ -529,57 +557,86 @@ class xxxSlider(xxxObject): class xxxGauge(xxxObject): allParams = ['range', 'pos', 'size', 'style', 'value', 'shadow', 'bezel'] - paramDict = {'range': ParamInt, 'value': ParamInt, - 'shadow': ParamInt, 'bezel': ParamInt} + paramDict = {'range': ParamIntNN, 'value': ParamIntNN, + 'shadow': ParamIntNN, 'bezel': ParamIntNN} winStyles = ['wxGA_HORIZONTAL', 'wxGA_VERTICAL', 'wxGA_PROGRESSBAR', 'wxGA_SMOOTH'] class xxxScrollBar(xxxObject): allParams = ['pos', 'size', 'style', 'value', 'thumbsize', 'range', 'pagesize'] - paramDict = {'value': ParamInt, 'range': ParamInt, 'thumbsize': ParamInt, - 'pagesize': ParamInt} + paramDict = {'value': ParamIntNN, 'range': ParamIntNN, 'thumbsize': ParamIntNN, + 'pagesize': ParamIntNN} winStyles = ['wxSB_HORIZONTAL', 'wxSB_VERTICAL'] class xxxListCtrl(xxxObject): allParams = ['pos', 'size', 'style'] winStyles = ['wxLC_LIST', 'wxLC_REPORT', 'wxLC_ICON', 'wxLC_SMALL_ICON', - 'wxLC_ALIGN_TOP', 'wxLC_ALIGN_LEFT', 'wxLC_AUTOARRANGE', - 'wxLC_USER_TEXT', 'wxLC_EDIT_LABELS', 'wxLC_NO_HEADER', - 'wxLC_SINGLE_SEL', 'wxLC_SORT_ASCENDING', 'wxLC_SORT_DESCENDING'] + 'wxLC_ALIGN_TOP', 'wxLC_ALIGN_LEFT', 'wxLC_AUTOARRANGE', + 'wxLC_USER_TEXT', 'wxLC_EDIT_LABELS', 'wxLC_NO_HEADER', + 'wxLC_SINGLE_SEL', 'wxLC_SORT_ASCENDING', 'wxLC_SORT_DESCENDING', + 'wxLC_VIRTUAL', 'wxLC_HRULES', 'wxLC_VRULES', 'wxLC_NO_SORT_HEADER'] class xxxTreeCtrl(xxxObject): allParams = ['pos', 'size', 'style'] - winStyles = ['wxTR_HAS_BUTTONS', 'wxTR_NO_LINES', 'wxTR_LINES_AT_ROOT', - 'wxTR_EDIT_LABELS', 'wxTR_MULTIPLE'] + winStyles = ['wxTR_EDIT_LABELS', + 'wxTR_NO_BUTTONS', + 'wxTR_HAS_BUTTONS', + 'wxTR_TWIST_BUTTONS', + 'wxTR_NO_LINES', + 'wxTR_FULL_ROW_HIGHLIGHT', + 'wxTR_LINES_AT_ROOT', + 'wxTR_HIDE_ROOT', + 'wxTR_ROW_LINES', + 'wxTR_HAS_VARIABLE_ROW_HEIGHT', + 'wxTR_SINGLE', + 'wxTR_MULTIPLE', + 'wxTR_EXTENDED', + 'wxTR_DEFAULT_STYLE'] class xxxHtmlWindow(xxxObject): allParams = ['pos', 'size', 'style', 'borders', 'url', 'htmlcode'] - paramDict = {'borders': ParamInt, 'htmlcode':ParamMultilineText} - winStyles = ['wxHW_SCROLLBAR_NEVER', 'wxHW_SCROLLBAR_AUTO'] + paramDict = {'htmlcode':ParamMultilineText} + winStyles = ['wxHW_SCROLLBAR_NEVER', 'wxHW_SCROLLBAR_AUTO', 'wxHW_NO_SELECTION'] class xxxCalendarCtrl(xxxObject): allParams = ['pos', 'size', 'style'] + winStyles = ['wxCAL_SUNDAY_FIRST', 'wxCAL_MONDAY_FIRST', 'wxCAL_SHOW_HOLIDAYS', + 'wxCAL_NO_YEAR_CHANGE', 'wxCAL_NO_MONTH_CHANGE', + 'wxCAL_SEQUENTIAL_MONTH_SELECTION', 'wxCAL_SHOW_SURROUNDING_WEEKS'] class xxxNotebook(xxxContainer): - allParams = ['usenotebooksizer', 'pos', 'size', 'style'] - paramDict = {'usenotebooksizer': ParamBool} - winStyles = ['wxNB_FIXEDWIDTH', 'wxNB_LEFT', 'wxNB_RIGHT', 'wxNB_BOTTOM'] + allParams = ['pos', 'size', 'style'] + winStyles = ['wxNB_DEFAULT', 'wxNB_LEFT', 'wxNB_RIGHT', 'wxNB_BOTTOM', + 'wxNB_FIXEDWIDTH', 'wxNB_MULTILINE', 'wxNB_NOPAGETHEME'] +class xxxChoicebook(xxxContainer): + allParams = ['pos', 'size', 'style'] + winStyles = ['wxCHB_DEFAULT', 'wxCHB_LEFT', 'wxCHB_RIGHT', 'wxCHB_TOP', 'wxCHB_BOTTOM'] + +class xxxListbook(xxxContainer): + allParams = ['pos', 'size', 'style'] + winStyles = ['wxLB_DEFAULT', 'wxLB_LEFT', 'wxLB_RIGHT', 'wxLB_TOP', 'wxLB_BOTTOM'] + class xxxSplitterWindow(xxxContainer): allParams = ['orientation', 'sashpos', 'minsize', 'pos', 'size', 'style'] paramDict = {'orientation': ParamOrientation, 'sashpos': ParamUnit, 'minsize': ParamUnit } - winStyles = ['wxSP_3D', 'wxSP_3DSASH', 'wxSP_3DBORDER', 'wxSP_BORDER', - 'wxSP_NOBORDER', 'wxSP_PERMIT_UNSPLIT', 'wxSP_LIVE_UPDATE', - 'wxSP_NO_XP_THEME' ] + winStyles = ['wxSP_3D', 'wxSP_3DSASH', 'wxSP_3DBORDER', + 'wxSP_FULLSASH', 'wxSP_NOBORDER', 'wxSP_PERMIT_UNSPLIT', 'wxSP_LIVE_UPDATE', + 'wxSP_NO_XP_THEME' ] class xxxGenericDirCtrl(xxxObject): allParams = ['defaultfolder', 'filter', 'defaultfilter', 'pos', 'size', 'style'] - paramDict = {'defaultfilter': ParamInt} + paramDict = {'defaultfilter': ParamIntNN} winStyles = ['wxDIRCTRL_DIR_ONLY', 'wxDIRCTRL_3D_INTERNAL', 'wxDIRCTRL_SELECT_FIRST', - 'wxDIRCTRL_SHOW_FILTERS', 'wxDIRCTRL_EDIT_LABELS'] + 'wxDIRCTRL_SHOW_FILTERS'] class xxxScrolledWindow(xxxContainer): allParams = ['pos', 'size', 'style'] - winStyles = ['wxHSCROLL', 'wxVSCROLL'] + winStyles = ['wxHSCROLL', 'wxVSCROLL', 'wxNO_3D', 'wxTAB_TRAVERSAL'] + +class xxxDateCtrl(xxxObject): + allParams = ['pos', 'size', 'style', 'borders'] + winStyles = ['wxDP_DEFAULT', 'wxDP_SPIN', 'wxDP_DROPDOWN', + 'wxDP_ALLOWNONE', 'wxDP_SHOWCENTURY'] ################################################################################ # Buttons @@ -588,20 +645,22 @@ class xxxButton(xxxObject): allParams = ['label', 'default', 'pos', 'size', 'style'] paramDict = {'default': ParamBool} required = ['label'] - winStyles = ['wxBU_LEFT', 'wxBU_TOP', 'wxBU_RIGHT', 'wxBU_BOTTOM'] + winStyles = ['wxBU_LEFT', 'wxBU_TOP', 'wxBU_RIGHT', 'wxBU_BOTTOM', 'wxBU_EXACTFIT'] class xxxBitmapButton(xxxObject): allParams = ['bitmap', 'selected', 'focus', 'disabled', 'default', 'pos', 'size', 'style'] + paramDict = {'selected': ParamBitmap, 'focus': ParamBitmap, 'disabled': ParamBitmap, + 'default': ParamBool} required = ['bitmap'] - winStyles = ['wxBU_AUTODRAW', 'wxBU_LEFT', 'wxBU_TOP', - 'wxBU_RIGHT', 'wxBU_BOTTOM'] + winStyles = ['wxBU_AUTODRAW', 'wxBU_LEFT', 'wxBU_RIGHT', + 'wxBU_TOP', 'wxBU_BOTTOM', 'wxBU_EXACTFIT'] class xxxRadioButton(xxxObject): allParams = ['label', 'value', 'pos', 'size', 'style'] paramDict = {'value': ParamBool} required = ['label'] - winStyles = ['wxRB_GROUP'] + winStyles = ['wxRB_GROUP', 'wxRB_SINGLE'] class xxxSpinButton(xxxObject): allParams = ['value', 'min', 'max', 'pos', 'size', 'style'] @@ -627,10 +686,11 @@ class xxxStaticBox(xxxObject): class xxxRadioBox(xxxObject): allParams = ['label', 'content', 'selection', 'dimension', 'pos', 'size', 'style'] - paramDict = {'dimension': ParamInt} + paramDict = {'dimension': ParamIntNN} required = ['label', 'content'] default = {'content': '[]'} - winStyles = ['wxRA_SPECIFY_ROWS', 'wxRA_SPECIFY_COLS'] + winStyles = ['wxRA_SPECIFY_ROWS', 'wxRA_SPECIFY_COLS', 'wxRA_HORIZONTAL', + 'wxRA_VERTICAL'] class xxxCheckBox(xxxObject): allParams = ['label', 'checked', 'pos', 'size', 'style'] @@ -650,16 +710,14 @@ class xxxListBox(xxxObject): required = ['content'] default = {'content': '[]'} winStyles = ['wxLB_SINGLE', 'wxLB_MULTIPLE', 'wxLB_EXTENDED', 'wxLB_HSCROLL', - 'wxLB_ALWAYS_SB', 'wxLB_NEEDED_SB', 'wxLB_SORT'] + 'wxLB_ALWAYS_SB', 'wxLB_NEEDED_SB', 'wxLB_SORT'] class xxxCheckList(xxxObject): allParams = ['content', 'pos', 'size', 'style'] required = ['content'] default = {'content': '[]'} - winStyles = ['wxLC_LIST', 'wxLC_REPORT', 'wxLC_ICON', 'wxLC_SMALL_ICON', - 'wxLC_ALIGN_TOP', 'wxLC_ALIGN_LEFT', 'wxLC_AUTOARRANGE', - 'wxLC_USER_TEXT', 'wxLC_EDIT_LABELS', 'wxLC_NO_HEADER', - 'wxLC_SINGLE_SEL', 'wxLC_SORT_ASCENDING', 'wxLC_SORT_DESCENDING'] + winStyles = ['wxLB_SINGLE', 'wxLB_MULTIPLE', 'wxLB_EXTENDED', 'wxLB_HSCROLL', + 'wxLB_ALWAYS_SB', 'wxLB_NEEDED_SB', 'wxLB_SORT'] paramDict = {'content': ParamContentCheckList} ################################################################################ @@ -711,7 +769,7 @@ class xxxParamMulti: class xxxFlexGridSizer(xxxGridSizer): specials = ['growablecols', 'growablerows'] allParams = ['cols', 'rows', 'vgap', 'hgap'] + specials - paramDict = {'growablecols':ParamIntList, 'growablerows':ParamIntList} + paramDict = {'growablecols': ParamIntList, 'growablerows': ParamIntList} # Special processing for growable* parameters # (they are represented by several nodes) def special(self, tag, node): @@ -800,7 +858,7 @@ class xxxSizerItemButton(xxxSizerItem): self.child.allParams = self.child.allParams[:] self.child.allParams.remove('pos') -class xxxNotebookPage(xxxChildContainer): +class xxxPage(xxxChildContainer): allParams = ['label', 'selected'] paramDict = {'selected': ParamBool} required = ['label'] @@ -819,6 +877,11 @@ class xxxSpacer(xxxObject): allParams = ['size', 'option', 'flag', 'border'] paramDict = {'option': ParamInt} default = {'size': '0,0'} + def __init__(self, parent, element, refElem=None): + # For GridBag sizer items, extra parameters added + if isinstance(parent, xxxGridBagSizer): + self.allParams = self.allParams + ['cellpos', 'cellspan'] + xxxObject.__init__(self, parent, element, refElem) class xxxMenuBar(xxxContainer): allParams = ['style'] @@ -845,7 +908,7 @@ class xxxSeparator(xxxObject): class xxxUnknown(xxxObject): allParams = ['pos', 'size', 'style'] - paramDict = {'style': ParamNonGenericStyle} # no generic styles + winStyles = ['wxNO_FULL_REPAINT_ON_RESIZE'] ################################################################################ @@ -855,6 +918,7 @@ xxxDict = { 'wxFrame': xxxFrame, 'tool': xxxTool, 'wxToolBar': xxxToolBar, + 'wxStatusBar': xxxStatusBar, 'wxWizard': xxxWizard, 'wxWizardPage': xxxWizardPage, 'wxWizardPageSimple': xxxWizardPageSimple, @@ -885,14 +949,19 @@ xxxDict = { 'wxTreeCtrl': xxxTreeCtrl, 'wxListCtrl': xxxListCtrl, 'wxCheckListBox': xxxCheckList, + 'notebookpage': xxxPage, + 'choicebookpage': xxxPage, + 'listbookpage': xxxPage, 'wxNotebook': xxxNotebook, + 'wxChoicebook': xxxChoicebook, + 'wxListbook': xxxListbook, 'wxSplitterWindow': xxxSplitterWindow, - 'notebookpage': xxxNotebookPage, 'wxHtmlWindow': xxxHtmlWindow, 'wxCalendarCtrl': xxxCalendarCtrl, 'wxGenericDirCtrl': xxxGenericDirCtrl, 'wxSpinCtrl': xxxSpinCtrl, 'wxScrolledWindow': xxxScrolledWindow, + 'wxDatePickerCtrl': xxxDateCtrl, 'wxBoxSizer': xxxBoxSizer, 'wxStaticBoxSizer': xxxStaticBoxSizer, @@ -912,16 +981,16 @@ xxxDict = { } # Create IDs for all parameters of all classes -paramIDs = {'fg': wxNewId(), 'bg': wxNewId(), 'exstyle': wxNewId(), 'font': wxNewId(), - 'enabled': wxNewId(), 'focused': wxNewId(), 'hidden': wxNewId(), - 'tooltip': wxNewId(), 'encoding': wxNewId(), - 'cellpos': wxNewId(), 'cellspan': wxNewId() +paramIDs = {'fg': wx.NewId(), 'bg': wx.NewId(), 'exstyle': wx.NewId(), 'font': wx.NewId(), + 'enabled': wx.NewId(), 'focused': wx.NewId(), 'hidden': wx.NewId(), + 'tooltip': wx.NewId(), 'encoding': wx.NewId(), + 'cellpos': wx.NewId(), 'cellspan': wx.NewId() } for cl in xxxDict.values(): if cl.allParams: for param in cl.allParams + cl.paramDict.keys(): if not paramIDs.has_key(param): - paramIDs[param] = wxNewId() + paramIDs[param] = wx.NewId() ################################################################################ # Helper functions @@ -980,6 +1049,14 @@ def MakeEmptyXXX(parent, className): pageElem = MakeEmptyDOM('notebookpage') pageElem.appendChild(elem) elem = pageElem + elif isinstance(parent, xxxChoicebook): + pageElem = MakeEmptyDOM('choicebookpage') + pageElem.appendChild(elem) + elem = pageElem + elif isinstance(parent, xxxListbook): + pageElem = MakeEmptyDOM('listbookpage') + pageElem.appendChild(elem) + elem = pageElem # Now just make object return MakeXXXFromDOM(parent, elem) @@ -1003,6 +1080,14 @@ def MakeEmptyRefXXX(parent, ref): pageElem = MakeEmptyDOM('notebookpage') pageElem.appendChild(elem) elem = pageElem + elif isinstance(parent, xxxChoicebook): + pageElem = MakeEmptyDOM('choicebookpage') + pageElem.appendChild(elem) + elem = pageElem + elif isinstance(parent, xxxListbook): + pageElem = MakeEmptyDOM('listbookpage') + pageElem.appendChild(elem) + elem = pageElem # Now just make object return MakeXXXFromDOM(parent, elem)