wxWindow *wxMdiXmlHandler::CreateFrame() { if (m_class == wxT("wxMDIParentFrame")) { XRC_MAKE_INSTANCE(frame, wxMDIParentFrame); frame->Create(m_parentAsWindow, GetID(), GetText(wxT("title")), wxDefaultPosition, wxDefaultSize, GetStyle(wxT("style"), wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL), GetName()); return frame; } else // wxMDIChildFrame { wxMDIParentFrame *mdiParent = wxDynamicCast(m_parent, wxMDIParentFrame); if ( !mdiParent ) wxLogError(wxT("Parent is not of type wxMDIParentFrame.")); XRC_MAKE_INSTANCE(frame, wxMDIChildFrame); frame->Create(mdiParent, GetID(), GetText(wxT("title")), wxDefaultPosition, wxDefaultSize, GetStyle(wxT("style"), wxDEFAULT_FRAME_STYLE), GetName()); return frame; } }
wxObject *wxGaugeXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(control, wxGauge) control->Create(m_parentAsWindow, GetID(), GetLong(wxT("range"), wxGAUGE_DEFAULT_RANGE), GetPosition(), GetSize(), GetStyle(), wxDefaultValidator, GetName()); if( HasParam(wxT("value"))) { control->SetValue(GetLong(wxT("value"))); } if( HasParam(wxT("shadow"))) { control->SetShadowWidth(GetDimension(wxT("shadow"))); } if( HasParam(wxT("bezel"))) { control->SetBezelFace(GetDimension(wxT("bezel"))); } SetupWindow(control); return control; }
wxListCtrl *wxListCtrlXmlHandler::HandleListCtrl() { XRC_MAKE_INSTANCE(list, wxListCtrl) list->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(), wxDefaultValidator, GetName()); // we can optionally have normal and/or small image lists wxImageList *imagelist; imagelist = GetImageList(wxT("imagelist")); if ( imagelist ) list->AssignImageList(imagelist, wxIMAGE_LIST_NORMAL); imagelist = GetImageList(wxT("imagelist-small")); if ( imagelist ) list->AssignImageList(imagelist, wxIMAGE_LIST_SMALL); CreateChildrenPrivately(list); SetupWindow(list); return list; }
wxObject * MaxDialogXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(dlg, MaxDialog); dlg->Create(m_parentAsWindow, GetID(), GetText(wxT("title")), wxDefaultPosition, wxDefaultSize, GetStyle(wxT("style"), wxDEFAULT_DIALOG_STYLE), GetName()); dlg->MaxBind(_wx_wxdialog_wxDialog__xrcNew(dlg)); if (HasParam(wxT("size"))) dlg->SetClientSize(GetSize(wxT("size"), dlg)); if (HasParam(wxT("pos"))) dlg->Move(GetPosition()); if (HasParam(wxT("icon"))) dlg->SetIcon(GetIcon(wxT("icon"), wxART_FRAME_ICON)); SetupWindow(dlg); CreateChildren(dlg); if (GetBool(wxT("centered"), false)) dlg->Centre(); return dlg; }
wxObject *CGBmpButton::DoCreateResource() { XRC_MAKE_INSTANCE(button, wxBitmapButton) button->Create(m_parentAsWindow, GetID(), GetBitmap(wxT("bitmap"), wxART_BUTTON), GetPosition(), GetSize(), GetStyle(wxT("style"), wxBU_AUTODRAW), wxDefaultValidator, GetName()); if (GetBool(wxT("default"), 0)) button->SetDefault(); SetupWindow(button); if (GetParamNode(wxT("selected"))) button->SetBitmapSelected(GetBitmap(wxT("selected"))); if (GetParamNode(wxT("focus"))) button->SetBitmapFocus(GetBitmap(wxT("focus"))); if (GetParamNode(wxT("disabled"))) button->SetBitmapDisabled(GetBitmap(wxT("disabled"))); if (GetParamNode(wxT("hover"))) button->SetBitmapHover(GetBitmap(wxT("hover"))); return button; }
wxObject *wxBitmapComboBoxXmlHandler::DoCreateResource() { if (m_class == wxT("ownerdrawnitem")) { if ( !m_combobox ) { ReportError("ownerdrawnitem only allowed within a wxBitmapComboBox"); return NULL; } m_combobox->Append(GetText(wxT("text")), GetBitmap(wxT("bitmap"))); return m_combobox; } else /*if( m_class == wxT("wxBitmapComboBox"))*/ { // find the selection long selection = GetLong( wxT("selection"), -1 ); XRC_MAKE_INSTANCE(control, wxBitmapComboBox) control->Create(m_parentAsWindow, GetID(), GetText(wxT("value")), GetPosition(), GetSize(), 0, NULL, GetStyle(), wxDefaultValidator, GetName()); m_isInside = true; m_combobox = control; wxXmlNode *children_node = GetParamNode(wxT("object")); wxXmlNode *n = children_node; while (n) { if ((n->GetType() == wxXML_ELEMENT_NODE) && (n->GetName() == wxT("object"))) { CreateResFromNode(n, control, NULL); } n = n->GetNext(); } m_isInside = false; m_combobox = NULL; if (selection != -1) control->SetSelection(selection); SetupWindow(control); return control; } }
wxObject * MaxCheckListBoxXmlHandler::DoCreateResource() { if (m_class == wxT("wxCheckListBox")) { // need to build the list of strings from children m_insideBox = true; CreateChildrenPrivately(NULL, GetParamNode(wxT("content"))); XRC_MAKE_INSTANCE(control, MaxCheckListBox) control->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), strList, GetStyle(), wxDefaultValidator, GetName()); // step through children myself (again.) wxXmlNode *n = GetParamNode(wxT("content")); if (n) n = n->GetChildren(); int i = 0; while (n) { if (n->GetType() != wxXML_ELEMENT_NODE || n->GetName() != wxT("item")) { n = n->GetNext(); continue; } // checking boolean is a bit ugly here (see GetBool() ) wxString v = n->GetPropVal(wxT("checked"), wxEmptyString); v.MakeLower(); if (v == wxT("1")) control->Check( i, true ); i++; n = n->GetNext(); } control->MaxBind(_wx_wxchecklistbox_wxCheckListBox__xrcNew(control)); SetupWindow(control); strList.Clear(); // dump the strings return control; } else { // on the inside now. // handle <item checked="boolean">Label</item> // add to the list wxString str = GetNodeContent(m_node); if (m_resource->GetFlags() & wxXRC_USE_LOCALE) str = wxGetTranslation(str, m_resource->GetDomain()); strList.Add(str); return NULL; } }
wxObject *wxMDIParentFrameXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(frame, wxMDIParentFrame); frame->Create(m_parentAsWindow, GetID(), GetText(wxT("title")), wxDefaultPosition, wxDefaultSize, GetStyle(wxT("style"), wxDEFAULT_FRAME_STYLE), GetName()); if (HasParam(wxT("size"))) frame->SetClientSize(GetSize()); if (HasParam(wxT("pos"))) frame->Move(GetPosition()); SetupWindow(frame); CreateChildren(frame); if (GetBool(wxT("centered"), FALSE)) frame->Centre(); return frame; }
wxObject *wxSplitterWindowXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(frame, wxSplitterWindow); frame->Create(m_parentAsWindow, GetID(), wxDefaultPosition, wxDefaultSize, GetStyle(wxT("style"), wxSP_3D), GetName()); SetupWindow(frame); CreateChildren(frame); if (frame->GetChildren().GetCount() != 2) { wxLogError(wxT("Error in resource: Splitter window needs exactly two children.")); return NULL; } frame->SetSplitMode(GetLong (wxT("splitmode"), wxSPLIT_VERTICAL)); long sashpos = GetLong (wxT("sashposition"), 100); wxWindowList::compatibility_iterator node = frame->GetChildren().GetFirst(); wxWindow* wnd1 = node->GetData(); wxWindow* wnd2 = node->GetNext()->GetData(); if (frame->GetSplitMode() == wxSPLIT_VERTICAL) frame->SplitVertically (wnd1, wnd2, sashpos); else frame->SplitHorizontally (wnd1, wnd2, sashpos); return frame; }
wxObject* wxRibbonXmlHandler::Handle_bar() { XRC_MAKE_INSTANCE (ribbonBar, wxRibbonBar); Handle_RibbonArtProvider (ribbonBar); if ( !ribbonBar->Create(wxDynamicCast(m_parent, wxWindow), GetID(), GetPosition(), GetSize(), GetStyle("style", wxRIBBON_BAR_DEFAULT_STYLE)) ) { ReportError ("could not create ribbonbar"); } else { // Currently the art provider style must be explicitly set to the // ribbon style too. ribbonBar->GetArtProvider() ->SetFlags(GetStyle("style", wxRIBBON_BAR_DEFAULT_STYLE)); const wxClassInfo* const wasInside = m_isInside; wxON_BLOCK_EXIT_SET(m_isInside, wasInside); m_isInside = &wxRibbonBar::ms_classInfo; CreateChildren (ribbonBar, true); ribbonBar->Realize(); } return ribbonBar; }
wxObject *wxButtonXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(button, wxButton) button->Create(m_parentAsWindow, GetID(), GetText(wxT("label")), GetPosition(), GetSize(), GetStyle(), wxDefaultValidator, GetName()); if (GetBool(wxT("default"), 0)) button->SetDefault(); if ( GetParamNode("bitmap") ) { button->SetBitmap(GetBitmap("bitmap", wxART_BUTTON), GetDirection("bitmapposition")); } SetupWindow(button); return button; }
wxObject * MaxGaugeXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(control, MaxGauge) control->Create(m_parentAsWindow, GetID(), GetLong(wxT("range"), 100), GetPosition(), GetSize(), GetStyle(), wxDefaultValidator, GetName()); control->MaxBind(CB_PREF(wx_wxgauge_wxGauge__xrcNew)(control)); if( HasParam(wxT("value"))) { control->SetValue(GetLong(wxT("value"))); } SetupWindow(control); return control; }
wxObject *wxMDIChildFrameXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(frame, wxMDIChildFrame); wxMDIParentFrame* prt = wxDynamicCast (m_parentAsWindow, wxMDIParentFrame); if (prt == NULL) { wxLogError(wxT("Error in resource: wxMDIChildFrame has no wxMDIParentFrame.")); return NULL; } frame->Create(prt, GetID(), GetText(wxT("title")), wxDefaultPosition, wxDefaultSize, GetStyle(wxT("style"), wxDEFAULT_FRAME_STYLE), GetName()); SetupWindow(frame); CreateChildren(frame); if (GetBool(wxT("centered"), FALSE)) frame->Centre(); return frame; }
wxObject *wxRadioBoxXmlHandler::DoCreateResource() { if( m_class == wxT("wxRadioBox")) { // find the selection long selection = GetLong( wxT("selection"), -1 ); // need to build the list of strings from children m_insideBox = TRUE; CreateChildrenPrivately( NULL, GetParamNode(wxT("content"))); wxString *strings = (wxString *) NULL; if( strList.GetCount() > 0 ) { strings = new wxString[strList.GetCount()]; int count = strList.GetCount(); for( int i = 0; i < count; i++ ) strings[i]=strList[i]; } XRC_MAKE_INSTANCE(control, wxRadioBox) control->Create(m_parentAsWindow, GetID(), GetText(wxT("label")), GetPosition(), GetSize(), strList.GetCount(), strings, GetLong(wxT("dimension"), 1), GetStyle(), wxDefaultValidator, GetName()); if (selection != -1) control->SetSelection(selection); SetupWindow(control); if (strings != NULL) delete[] strings; strList.Clear(); // dump the strings return control; } else { // on the inside now. // handle <item selected="boolean">Label</item> // add to the list wxString str = GetNodeContent(m_node); if (m_resource->GetFlags() & wxXRC_USE_LOCALE) str = wxGetTranslation(str); strList.Add(str); return NULL; } }
wxObject *wxSplitterWindowXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(splitter, wxSplitterWindow); splitter->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(wxT("style"), wxSP_3D), GetName()); SetupWindow(splitter); long sashpos = GetLong(wxT("sashpos"), 0); long minpanesize = GetLong(wxT("minsize"), -1); if (minpanesize != -1) splitter->SetMinimumPaneSize(minpanesize); wxWindow *win1 = NULL, *win2 = NULL; wxXmlNode *n = m_node->GetChildren(); while (n) { if ((n->GetType() == wxXML_ELEMENT_NODE) && (n->GetName() == wxT("object") || n->GetName() == wxT("object_ref"))) { wxObject *created = CreateResFromNode(n, splitter, NULL); wxWindow *win = wxDynamicCast(created, wxWindow); if (win1 == NULL) { win1 = win; } else { win2 = win; break; } } n = n->GetNext(); } if (win1 == NULL) wxLogError(wxT("wxSplitterWindow node must contain at least one window.")); bool horizontal = (GetParamValue(wxT("orientation")) != wxT("vertical")); if (win1 && win2) { if (horizontal) splitter->SplitHorizontally(win1, win2, sashpos); else splitter->SplitVertically(win1, win2, sashpos); } else { splitter->Initialize(win1); } return splitter; }
wxObject *wxSimplebookXmlHandler::DoCreateResource() { if (m_class == wxS("simplebookpage")) { wxXmlNode *n = GetParamNode(wxS("object")); if ( !n ) n = GetParamNode(wxS("object_ref")); if (n) { bool old_ins = m_isInside; m_isInside = false; wxObject *item = CreateResFromNode(n, m_simplebook, NULL); m_isInside = old_ins; wxWindow *wnd = wxDynamicCast(item, wxWindow); if (wnd) { m_simplebook->AddPage(wnd, GetText(wxS("label")), GetBool(wxS("selected"))); } else { ReportError(n, "simplebookpage child must be a window"); } return wnd; } else { ReportError("simplebookpage must have a window child"); return NULL; } } else { XRC_MAKE_INSTANCE(sb, wxSimplebook) sb->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(wxS("style")), GetName()); SetupWindow(sb); wxSimplebook *old_par = m_simplebook; m_simplebook = sb; bool old_ins = m_isInside; m_isInside = true; CreateChildren(m_simplebook, true/*only this handler*/); m_isInside = old_ins; m_simplebook = old_par; return sb; } }
wxObject *wxCollapsiblePaneXmlHandler::DoCreateResource() { if (m_class == wxT("panewindow")) // read the XRC for the pane window { wxXmlNode *n = GetParamNode(wxT("object")); if ( !n ) n = GetParamNode(wxT("object_ref")); if (n) { bool old_ins = m_isInside; m_isInside = false; wxObject *item = CreateResFromNode(n, m_collpane->GetPane(), NULL); m_isInside = old_ins; return item; } else { ReportError("no control within panewindow"); return NULL; } } else { XRC_MAKE_INSTANCE(ctrl, wxCollapsiblePane) wxString label = GetText(wxT("label")); if (label.empty()) { ReportParamError("label", "label cannot be empty"); return NULL; } ctrl->Create(m_parentAsWindow, GetID(), label, GetPosition(), GetSize(), GetStyle(wxT("style"), wxCP_DEFAULT_STYLE), wxDefaultValidator, GetName()); ctrl->Collapse(GetBool(wxT("collapsed"))); SetupWindow(ctrl); wxCollapsiblePane *old_par = m_collpane; m_collpane = ctrl; bool old_ins = m_isInside; m_isInside = true; CreateChildren(m_collpane, true/*only this handler*/); m_isInside = old_ins; m_collpane = old_par; return ctrl; } }
wxObject *wxTreeListCtrlXmlHandler::DoCreateResource() { //wxAssert(m_class == wxT("wxTreeListCtrl")); XRC_MAKE_INSTANCE(tlc, wxTreeListCtrl) tlc->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(wxT("style")), wxDefaultValidator, GetName()); return tlc; }
wxObject * MaxBitmapComboBoxXmlHandler::DoCreateResource() { if (m_class == wxT("ownerdrawnitem")) { wxCHECK_MSG(m_combobox, NULL, wxT("Incorrect syntax of XRC resource: ownerdrawnitem not within a bitmapcombobox!")); m_combobox->Append(GetText(wxT("text")), GetBitmap(wxT("bitmap"), wxART_MISSING_IMAGE)); return m_combobox; } else /*if( m_class == wxT("wxBitmapComboBox"))*/ { // find the selection long selection = GetLong( wxT("selection"), -1 ); XRC_MAKE_INSTANCE(control, MaxBitmapComboBox) control->Create(m_parentAsWindow, GetID(), GetText(wxT("value")), GetPosition(), GetSize(), 0, NULL, GetStyle(), wxDefaultValidator, GetName()); control->MaxBind(_wx_wxbitmapcombobox_wxBitmapComboBox__xrcNew(control)); m_isInside = true; m_combobox = control; wxXmlNode *children_node = GetParamNode(wxT("object")); wxXmlNode *n = children_node; while (n) { if ((n->GetType() == wxXML_ELEMENT_NODE) && (n->GetName() == wxT("object"))) { CreateResFromNode(n, control, NULL); } n = n->GetNext(); } m_isInside = false; m_combobox = NULL; if (selection != -1) control->SetSelection(selection); SetupWindow(control); return control; } }
wxDataViewListCtrl* MyWxDataViewListCtrlHandler::HandleListCtrl() { XRC_MAKE_INSTANCE(list, wxDataViewListCtrl) list->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle()); list->SetName(GetName()); CreateChildrenPrivately(list); SetupWindow(list); return list; }
wxObject *wxHyperlinkCtrlXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(control, wxHyperlinkCtrl) SetupWindow(control); control->Create(m_parentAsWindow, GetID(), GetParamValue(wxT("label")), GetParamValue(wxT("url")), GetPosition(), GetSize(), GetStyle(wxT("style"), wxHL_DEFAULT_STYLE)); return control; }
wxObject * MaxBannerWindowXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(banner, MaxBannerWindow) banner->Create(m_parentAsWindow, GetID(), GetDirection(wxS("direction")), GetPosition(), GetSize(), GetStyle(wxS("style")), GetName()); banner->MaxBind(CB_PREF(wx_wxbannerwindow_wxBannerWindow__xrcNew)(banner)); SetupWindow(banner); const wxColour colStart = GetColour(wxS("gradient-start")); const wxColour colEnd = GetColour(wxS("gradient-end")); if ( colStart.IsOk() || colEnd.IsOk() ) { if ( !colStart.IsOk() || !colEnd.IsOk() ) { ReportError ( "Both start and end gradient colours must be " "specified if either one is." ); } else { banner->SetGradient(colStart, colEnd); } } wxBitmap bitmap = GetBitmap(); if ( bitmap.IsOk() ) { if ( colStart.IsOk() || colEnd.IsOk() ) { ReportError ( "Gradient colours are ignored by wxBannerWindow " "if the background bitmap is specified." ); } banner->SetBitmap(bitmap); } banner->SetText(GetText(wxS("title")), GetText(wxS("message"))); return banner; }
wxObject *kwxLCDClockHandler::DoCreateResource() { // the following macro will init a pointer named "control" // with a new instance of the MyControl class, but will NOT // Create() it! XRC_MAKE_INSTANCE(control, kwxLCDClock) // this is the point where you'll typically need to do the most // important changes: here the control is created and initialized. // You'll want to use the wxXmlResourceHandler's getters to // do most of your work. // If e.g. the MyControl::Create function looks like: // // bool MyControl::Create(wxWindow *parent, int id, // const wxBitmap &first, const wxPoint &posFirst, // const wxBitmap &second, const wxPoint &posSecond, // const wxString &theTitle, const wxFont &titleFont, // const wxPoint &pos, const wxSize &size, // long style = MYCONTROL_DEFAULT_STYLE, // const wxString &name = wxT("MyControl")); // // Then the XRC for your component should look like: // // <object class="MyControl" name="some_name"> // <first-bitmap>first.xpm</first-bitmap> // <second-bitmap>text.xpm</second-bitmap> // <first-pos>3,3</first-pos> // <second-pos>4,4</second-pos> // <the-title>a title</the-title> // <title-font> // <!-- Standard XRC tags for a font: <size>, <style>, <weight>, etc --> // </title-font> // <!-- XRC also accepts other usual tags for wxWindow-derived classes: // like e.g. <name>, <style>, <size>, <position>, etc --> // </object> // // And the code to read your custom tags from the XRC file is just: // control->Create(m_parentAsWindow, GetID(), // GetBitmap(wxT("first-bitmap")), // GetPosition(wxT("first-pos")), // GetBitmap(wxT("second-bitmap")), // GetPosition(wxT("second-pos")), // GetText(wxT("the-title")), // GetFont(wxT("title-font")), // GetPosition(), GetSize(), GetStyle(), GetName()); control->Create(m_parentAsWindow, GetPosition(), GetSize()); // control->SetNumberDigits(GetLong(wxT("num_digits"), 6)); SetupWindow(control); return control; }
// Creates the control and returns a pointer to it. wxObject *wxStaticPictureXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(control, wxStaticPicture) control->Create(m_parentAsWindow, GetID(), GetBitmap(wxT("bitmap"), wxART_OTHER, GetSize()), GetPosition(), GetSize(), GetStyle(), GetName()); SetupWindow(control); return control; }
wxObject * MaxOwnerDrawnComboBoxXmlHandler::DoCreateResource() { if( m_class == wxT("wxOwnerDrawnComboBox")) { // find the selection long selection = GetLong( wxT("selection"), -1 ); // need to build the list of strings from children m_insideBox = true; CreateChildrenPrivately(NULL, GetParamNode(wxT("content"))); XRC_MAKE_INSTANCE(control, MaxOwnerDrawnComboBox) control->Create(m_parentAsWindow, GetID(), GetText(wxT("value")), GetPosition(), GetSize(), strList, GetStyle(), wxDefaultValidator, GetName()); control->MaxBind(_wx_wxownerdrawncombobox_wxOwnerDrawnComboBox__xrcNew(control)); wxSize sizeBtn=GetSize(wxT("buttonsize")); if (sizeBtn != wxDefaultSize) control->SetButtonPosition(sizeBtn.GetWidth(), sizeBtn.GetHeight()); if (selection != -1) control->SetSelection(selection); SetupWindow(control); strList.Clear(); // dump the strings return control; } else { // on the inside now. // handle <item>Label</item> // add to the list wxString str = GetNodeContent(m_node); if (m_resource->GetFlags() & wxXRC_USE_LOCALE) str = wxGetTranslation(str, m_resource->GetDomain()); strList.Add(str); return NULL; } }
wxObject* MyWxRichTextCtrlXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(text, wxRichTextCtrl) text->Create(m_parentAsWindow, GetID(), GetText(wxT("value")), GetPosition(), GetSize(), GetStyle(), wxDefaultValidator, GetName()); SetupWindow(text); if(HasParam(wxT("maxlength"))) text->SetMaxLength(GetLong(wxT("maxlength"))); return text; }
wxObject *ImagesPanelXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(cp, ImagesPanel) cp->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(wxT("style")), GetName()); SetupWindow( cp); return cp; }
wxObject *wxButtonXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(button, wxButton) button->Create(m_parentAsWindow, GetID(), GetText(wxT("label")), GetPosition(), GetSize(), GetStyle(), wxDefaultValidator, GetName()); if (GetBool(wxT("default"), 0)) button->SetDefault(); if ( GetParamNode("bitmap") ) { wxDirection dir; const wxString dirstr = GetParamValue("direction"); if ( dirstr.empty() || dirstr == "wxLEFT" ) dir = wxLEFT; else if ( dirstr == "wxRIGHT" ) dir = wxRIGHT; else if ( dirstr == "wxTOP" ) dir = wxTOP; else if ( dirstr == "wxBOTTOM" ) dir = wxBOTTOM; else { ReportError ( GetParamNode("bitmapposition"), wxString::Format ( "Invalid bitmap position \"%s\": must be one of " "wxLEFT|wxRIGHT|wxTOP|wxBOTTOM.", dirstr ) ); dir = wxLEFT; } button->SetBitmap(GetBitmap("bitmap", wxART_BUTTON), dir); } SetupWindow(button); return button; }
wxObject *wxStaticLineXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(line, wxStaticLine) line->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(wxT("style"), wxLI_HORIZONTAL), GetName()); SetupWindow(line); return line; }
wxObject *wxTimeSpinXmlHandler::DoCreateResource() { XRC_MAKE_INSTANCE(timespin, wxTimeSpinCtrl); timespin->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), GetStyle(), GetName()); SetupWindow(timespin); return timespin; }