X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/544fee32eeac1a4f6ca3e0c7c1b13ee24f1d1c1c..c2c87924e7e3906b8cf1f93ebbd362eab17f6857:/src/xrc/xh_bmpbt.cpp diff --git a/src/xrc/xh_bmpbt.cpp b/src/xrc/xh_bmpbt.cpp index b0500ed45e..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,27 +15,35 @@ #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() { 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() -{ +{ XRC_MAKE_INSTANCE(button, wxBitmapButton) button->Create(m_parentAsWindow, GetID(), - GetBitmap(wxT("bitmap")), + GetBitmap(wxT("bitmap"), wxART_BUTTON), GetPosition(), GetSize(), GetStyle(wxT("style"), wxBU_AUTODRAW), wxDefaultValidator, @@ -47,14 +51,16 @@ wxObject *wxBitmapButtonXmlHandler::DoCreateResource() 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; } @@ -62,3 +68,5 @@ bool wxBitmapButtonXmlHandler::CanHandle(wxXmlNode *node) { return IsOfClass(node, wxT("wxBitmapButton")); } + +#endif // wxUSE_XRC && wxUSE_BMPBUTTON