New wxDesigner-less version of the MimeTypesManager demo
[wxWidgets.git] / wxPython / src / _button.i
CommitLineData
d14a1e28
RD
1/////////////////////////////////////////////////////////////////////////////
2// Name: _button.i
3// Purpose: SWIG interface defs for wxButton, wxBitmapButton
4//
5// Author: Robin Dunn
6//
7// Created: 10-June-1998
8// RCS-ID: $Id$
9// Copyright: (c) 2003 by Total Control Software
10// Licence: wxWindows license
11/////////////////////////////////////////////////////////////////////////////
12
13// Not a %module
14
15
16//---------------------------------------------------------------------------
17%newgroup;
18
b2dc1044 19MAKE_CONST_WXSTRING(ButtonNameStr);
d14a1e28
RD
20
21enum {
22 wxBU_LEFT,
23 wxBU_TOP,
24 wxBU_RIGHT,
25 wxBU_BOTTOM,
26
27 wxBU_EXACTFIT,
28 wxBU_AUTODRAW,
29};
30
31//---------------------------------------------------------------------------
32
1e0c8722
RD
33DocStr(wxButton,
34 "A button is a control that contains a text string, and is one of the most\n"
35 "common elements of a GUI. It may be placed on a dialog box or panel, or\n"
36 "indeed almost any other window.");
37
38RefDoc(wxButton, "
39 Styles
b2dc1044
RD
40 wx.BU_LEFT: Left-justifies the label. WIN32 only.
41 wx.BU_TOP: Aligns the label to the top of the button. WIN32 only.
42 wx.BU_RIGHT: Right-justifies the bitmap label. WIN32 only.
43 wx.BU_BOTTOM: Aligns the label to the bottom of the button. WIN32 only.
44 wx.BU_EXACTFIT: Creates the button as small as possible instead of making
45 it of the standard size (which is the default behaviour.)
1e0c8722
RD
46
47 Events
b2dc1044 48 EVT_BUTTON: Sent when the button is clicked.
1e0c8722
RD
49");
50
d14a1e28
RD
51class wxButton : public wxControl
52{
53public:
54 %addtofunc wxButton "self._setOORInfo(self)"
55 %addtofunc wxButton() ""
56
57
b2dc1044
RD
58 DocStr(wxButton, "Create and show a button.");
59 RefDoc(wxButton, "");
d14a1e28
RD
60 wxButton(wxWindow* parent, wxWindowID id, const wxString& label,
61 const wxPoint& pos = wxDefaultPosition,
62 const wxSize& size = wxDefaultSize,
63 long style = 0,
64 const wxValidator& validator = wxDefaultValidator,
65 const wxString& name = wxPyButtonNameStr);
66
1e0c8722 67 DocStr(wxButton(), "Precreate a Button for 2-phase creation.");
d14a1e28
RD
68 %name(PreButton)wxButton();
69
1e0c8722 70 DocStr(Create, "Acutally create the GUI Button for 2-phase creation.");
d14a1e28
RD
71 bool Create(wxWindow* parent, wxWindowID id, const wxString& label,
72 const wxPoint& pos = wxDefaultPosition,
73 const wxSize& size = wxDefaultSize,
74 long style = 0,
75 const wxValidator& validator = wxDefaultValidator,
76 const wxString& name = wxPyButtonNameStr);
77
78
1e0c8722 79 DocStr(SetDefault, "This sets the button to be the default item for the panel or dialog box.");
d14a1e28
RD
80 void SetDefault();
81
82
83#ifdef __WXMSW__
84 // show the image in the button in addition to the label
85 void SetImageLabel(const wxBitmap& bitmap);
86
87 // set the margins around the image
88 void SetImageMargins(wxCoord x, wxCoord y);
89#endif
90
1e0c8722 91 DocStr(GetDefaultButtonSize, "Returns the default button size for this platform.");
d14a1e28
RD
92 static wxSize GetDefaultSize();
93};
94
95
96
97//---------------------------------------------------------------------------
98
1e0c8722
RD
99
100DocStr(wxBitmapButton, "A Buttont that contains a bitmap.");
101
d14a1e28
RD
102class wxBitmapButton : public wxButton
103{
104public:
105 %addtofunc wxBitmapButton "self._setOORInfo(self)"
106 %addtofunc wxBitmapButton() ""
107
1e0c8722 108 DocStr(wxBitmapButton, "Create and show a button.")
d14a1e28
RD
109 wxBitmapButton(wxWindow* parent, wxWindowID id, const wxBitmap& bitmap,
110 const wxPoint& pos = wxDefaultPosition,
111 const wxSize& size = wxDefaultSize,
112 long style = wxBU_AUTODRAW,
113 const wxValidator& validator = wxDefaultValidator,
114 const wxString& name = wxPyButtonNameStr);
1e0c8722
RD
115
116 DocStr(wxBitmapButton(), "Precreate a BitmapButton for 2-phase creation.");
d14a1e28
RD
117 %name(PreBitmapButton)wxBitmapButton();
118
1e0c8722 119 DocStr(Create, "Acutally create the GUI BitmapButton for 2-phase creation.");
d14a1e28 120 bool Create(wxWindow* parent, wxWindowID id, const wxBitmap& bitmap,
1e0c8722
RD
121 const wxPoint& pos = wxDefaultPosition,
122 const wxSize& size = wxDefaultSize,
123 long style = wxBU_AUTODRAW,
124 const wxValidator& validator = wxDefaultValidator,
d14a1e28
RD
125 const wxString& name = wxPyButtonNameStr);
126
1e0c8722 127 DocStr(GetBitmapLabel, "Returns the label bitmap (the one passed to the constructor).");
d14a1e28 128 wxBitmap GetBitmapLabel();
1e0c8722
RD
129
130 DocStr(GetBitmapDisabled, "Returns the bitmap for the disabled state.");
d14a1e28 131 wxBitmap GetBitmapDisabled();
1e0c8722
RD
132
133 DocStr(GetBitmapFocus, "Returns the bitmap for the focused state.");
d14a1e28 134 wxBitmap GetBitmapFocus();
1e0c8722
RD
135
136 DocStr(GetBitmapSelected, "Returns the bitmap for the selected state.");
d14a1e28 137 wxBitmap GetBitmapSelected();
1e0c8722
RD
138
139 DocStr(SetBitmapDisabled, "Sets the bitmap for the disabled button appearance.");
d14a1e28 140 void SetBitmapDisabled(const wxBitmap& bitmap);
1e0c8722
RD
141
142 DocStr(SetBitmapFocus, "Sets the bitmap for the button appearance when it has the keyboard focus.");
d14a1e28 143 void SetBitmapFocus(const wxBitmap& bitmap);
1e0c8722
RD
144
145 DocStr(SetBitmapSelected, "Sets the bitmap for the selected (depressed) button appearance.");
d14a1e28 146 void SetBitmapSelected(const wxBitmap& bitmap);
1e0c8722
RD
147
148 DocStr(SetBitmapLabel,
149 "Sets the bitmap label for the button. This is the bitmap used for the\n"
150 "unselected state, and for all other states if no other bitmaps are provided.");
d14a1e28
RD
151 void SetBitmapLabel(const wxBitmap& bitmap);
152
153 void SetMargins(int x, int y);
154 int GetMarginX() const;
155 int GetMarginY() const;
156};
157
158
159//---------------------------------------------------------------------------