]> git.saurik.com Git - wxWidgets.git/blame - src/xrc/xh_bttn.cpp
fixed previous revision: call wxControl's, not wxButton's DoGetBestSize
[wxWidgets.git] / src / xrc / xh_bttn.cpp
CommitLineData
78d14f80
VS
1/////////////////////////////////////////////////////////////////////////////
2// Name: xh_bttn.cpp
b5d6954b 3// Purpose: XRC resource for buttons
78d14f80
VS
4// Author: Vaclav Slavik
5// Created: 2000/03/05
6// RCS-ID: $Id$
7// Copyright: (c) 2000 Vaclav Slavik
8// Licence: wxWindows licence
9/////////////////////////////////////////////////////////////////////////////
f80ea77b 10
78d14f80
VS
11#ifdef __GNUG__
12#pragma implementation "xh_bttn.h"
13#endif
14
15// For compilers that support precompilation, includes "wx.h".
16#include "wx/wxprec.h"
17
18#ifdef __BORLANDC__
19 #pragma hdrstop
20#endif
21
621be1ec 22#if wxUSE_XRC
a1e4ec87 23
78d14f80
VS
24#include "wx/xrc/xh_bttn.h"
25#include "wx/button.h"
26
854e189f 27IMPLEMENT_DYNAMIC_CLASS(wxButtonXmlHandler, wxXmlResourceHandler)
78d14f80 28
f80ea77b
WS
29wxButtonXmlHandler::wxButtonXmlHandler()
30: wxXmlResourceHandler()
78d14f80 31{
544fee32
VS
32 XRC_ADD_STYLE(wxBU_LEFT);
33 XRC_ADD_STYLE(wxBU_RIGHT);
34 XRC_ADD_STYLE(wxBU_TOP);
35 XRC_ADD_STYLE(wxBU_BOTTOM);
27ce9aef 36 XRC_ADD_STYLE(wxBU_EXACTFIT);
78d14f80
VS
37 AddWindowStyles();
38}
39
78d14f80 40wxObject *wxButtonXmlHandler::DoCreateResource()
f80ea77b 41{
544fee32 42 XRC_MAKE_INSTANCE(button, wxButton)
f2588180
VS
43
44 button->Create(m_parentAsWindow,
45 GetID(),
46 GetText(wxT("label")),
47 GetPosition(), GetSize(),
48 GetStyle(),
49 wxDefaultValidator,
50 GetName());
51
544fee32
VS
52 if (GetBool(wxT("default"), 0))
53 button->SetDefault();
78d14f80 54 SetupWindow(button);
f80ea77b 55
78d14f80
VS
56 return button;
57}
58
78d14f80
VS
59bool wxButtonXmlHandler::CanHandle(wxXmlNode *node)
60{
61 return IsOfClass(node, wxT("wxButton"));
62}
a1e4ec87 63
621be1ec 64#endif // wxUSE_XRC