X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b5d6954b87d910969226ffade9714db7429211f3..f50491352a4338859cd7361ce483093e80c3679c:/src/xrc/xh_bmpbt.cpp diff --git a/src/xrc/xh_bmpbt.cpp b/src/xrc/xh_bmpbt.cpp index df3378796a..bdf588ac9b 100644 --- a/src/xrc/xh_bmpbt.cpp +++ b/src/xrc/xh_bmpbt.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: xh_bmpbt.cpp +// Name: src/xrc/xh_bmpbt.cpp // Purpose: XRC resource for bitmap buttons // Author: Brian Gavin // Created: 2000/09/09 @@ -7,10 +7,6 @@ // Copyright: (c) 2000 Brian Gavin // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#ifdef __GNUG__ -#pragma implementation "xh_bmpbt.h" -#endif // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -19,48 +15,58 @@ #pragma hdrstop #endif +#if wxUSE_XRC && wxUSE_BMPBUTTON + #include "wx/xrc/xh_bmpbt.h" -#include -wxBitmapButtonXmlHandler::wxBitmapButtonXmlHandler() -: wxXmlResourceHandler() +#ifndef WX_PRECOMP + #include "wx/bmpbuttn.h" +#endif + +IMPLEMENT_DYNAMIC_CLASS(wxBitmapButtonXmlHandler, wxXmlResourceHandler) + +wxBitmapButtonXmlHandler::wxBitmapButtonXmlHandler() +: wxXmlResourceHandler() { - ADD_STYLE(wxBU_AUTODRAW); - ADD_STYLE(wxBU_LEFT); - ADD_STYLE(wxBU_RIGHT); - ADD_STYLE(wxBU_TOP); - ADD_STYLE(wxBU_BOTTOM); + XRC_ADD_STYLE(wxBU_AUTODRAW); + XRC_ADD_STYLE(wxBU_LEFT); + XRC_ADD_STYLE(wxBU_RIGHT); + XRC_ADD_STYLE(wxBU_TOP); + XRC_ADD_STYLE(wxBU_BOTTOM); + XRC_ADD_STYLE(wxBU_EXACTFIT); AddWindowStyles(); } - wxObject *wxBitmapButtonXmlHandler::DoCreateResource() -{ - wxBitmapButton *button = new wxBitmapButton(m_parentAsWindow, - GetID(), - GetBitmap(wxT("bitmap")), - GetPosition(), GetSize(), - GetStyle(wxT("style"), wxBU_AUTODRAW), - wxDefaultValidator, - GetName()); - if (GetBool(wxT("default"), 0) == 1) button->SetDefault(); +{ + 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 (!GetParamValue(wxT("selected")).IsEmpty()) + + if (GetParamNode(wxT("selected"))) button->SetBitmapSelected(GetBitmap(wxT("selected"))); - if (!GetParamValue(wxT("focus")).IsEmpty()) + if (GetParamNode(wxT("focus"))) button->SetBitmapFocus(GetBitmap(wxT("focus"))); - if (!GetParamValue(wxT("disabled")).IsEmpty()) + if (GetParamNode(wxT("disabled"))) button->SetBitmapDisabled(GetBitmap(wxT("disabled"))); - + if (GetParamNode(wxT("hover"))) + button->SetBitmapHover(GetBitmap(wxT("hover"))); + return button; } - - bool wxBitmapButtonXmlHandler::CanHandle(wxXmlNode *node) { return IsOfClass(node, wxT("wxBitmapButton")); } - +#endif // wxUSE_XRC && wxUSE_BMPBUTTON