X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f25881804583790351480098b50f4ce1b924e697..4884b02b086f168d8f666c571c9b23e2a11b912b:/src/xrc/xh_scrol.cpp?ds=sidebyside diff --git a/src/xrc/xh_scrol.cpp b/src/xrc/xh_scrol.cpp index 6e2dfb1b71..7d8ae34728 100644 --- a/src/xrc/xh_scrol.cpp +++ b/src/xrc/xh_scrol.cpp @@ -7,8 +7,8 @@ // Copyright: (c) 2000 Brian Gavin // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#ifdef __GNUG__ + +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "xh_scrol.h" #endif @@ -19,24 +19,24 @@ #pragma hdrstop #endif +#if wxUSE_XRC && wxUSE_SCROLLBAR + #include "wx/xrc/xh_scrol.h" #include "wx/scrolbar.h" +IMPLEMENT_DYNAMIC_CLASS(wxScrollBarXmlHandler, wxXmlResourceHandler) -wxScrollBarXmlHandler::wxScrollBarXmlHandler() -: wxXmlResourceHandler() +wxScrollBarXmlHandler::wxScrollBarXmlHandler() +: wxXmlResourceHandler() { - ADD_STYLE( wxSB_HORIZONTAL ); - ADD_STYLE( wxSB_VERTICAL ); + XRC_ADD_STYLE(wxSB_HORIZONTAL); + XRC_ADD_STYLE(wxSB_VERTICAL); AddWindowStyles(); } wxObject *wxScrollBarXmlHandler::DoCreateResource() -{ - wxScrollBar *control = wxStaticCast(m_instance, wxScrollBar); - - if (!control) - control = new wxScrollBar; +{ + XRC_MAKE_INSTANCE(control, wxScrollBar) control->Create(m_parentAsWindow, GetID(), @@ -45,24 +45,20 @@ wxObject *wxScrollBarXmlHandler::DoCreateResource() wxDefaultValidator, GetName()); - control->SetScrollbar(GetLong( wxT("value"), 0), + control->SetScrollbar(GetLong( wxT("value"), 0), GetLong( wxT("thumbsize"),1), GetLong( wxT("range"), 10), - GetLong( wxT("pagesize"),1) - ); - - + GetLong( wxT("pagesize"),1)); + SetupWindow(control); - + CreateChildren(control); + return control; } - - bool wxScrollBarXmlHandler::CanHandle(wxXmlNode *node) { return IsOfClass(node, wxT("wxScrollBar")); } - - +#endif // wxUSE_XRC && wxUSE_SCROLLBAR