]> git.saurik.com Git - wxWidgets.git/blame_incremental - wxPython/src/_combobox.i
fixed deadlock when calling wxPostEvent() from worker thread
[wxWidgets.git] / wxPython / src / _combobox.i
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: _combobox.i
3// Purpose: SWIG interface defs for wxComboBox
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
18MAKE_CONST_WXSTRING(ComboBoxNameStr);
19
20//---------------------------------------------------------------------------
21%newgroup;
22
23
24DocStr(wxComboBox,
25"A combobox is like a combination of an edit control and a
26listbox. It can be displayed as static list with editable or
27read-only text field; or a drop-down list with text field.
28
29A combobox permits a single selection only. Combobox items are
30numbered from zero.", "
31
32Styles
33------
34 ================ ===============================================
35 wx.CB_SIMPLE Creates a combobox with a permanently
36 displayed list. Windows only.
37
38 wx.CB_DROPDOWN Creates a combobox with a drop-down list.
39
40 wx.CB_READONLY Same as wxCB_DROPDOWN but only the strings
41 specified as the combobox choices can be
42 selected, it is impossible to select
43 (even from a program) a string which is
44 not in the choices list.
45
46 wx.CB_SORT Sorts the entries in the list alphabetically.
47 ================ ===============================================
48
49Events
50-------
51 ================ ===============================================
52 EVT_COMBOBOX Sent when an item on the list is selected.
53 Note that calling `GetValue` in this handler
54 will return the newly selected value.
55 EVT_TEXT Sent when the combobox text changes.
56 EVT_TEXT_ENTER Sent when the RETURN/ENTER key is pressed in
57 the combobox.
58 ================ ===============================================
59");
60
61
62
63MustHaveApp(wxComboBox);
64
65#ifdef __WXMSW__
66class wxComboBox : public wxChoice
67#else
68class wxComboBox : public wxControl, public wxItemContainer
69#endif
70{
71public:
72 %pythonAppend wxComboBox "self._setOORInfo(self)"
73 %pythonAppend wxComboBox() ""
74
75 DocCtorAStr(
76 wxComboBox(wxWindow* parent, wxWindowID id=-1,
77 const wxString& value = wxPyEmptyString,
78 const wxPoint& pos = wxDefaultPosition,
79 const wxSize& size = wxDefaultSize,
80 const wxArrayString& choices = wxPyEmptyStringArray,
81 long style = 0,
82 const wxValidator& validator = wxDefaultValidator,
83 const wxString& name = wxPyComboBoxNameStr),
84 "__init__(Window parent, int id, String value=EmptyString,
85 Point pos=DefaultPosition, Size size=DefaultSize,
86 List choices=EmptyList, long style=0, Validator validator=DefaultValidator,
87 String name=ComboBoxNameStr) -> ComboBox",
88 "Constructor, creates and shows a ComboBox control.", "");
89
90 DocCtorStrName(
91 wxComboBox(),
92 "Precreate a ComboBox control for 2-phase creation.", "",
93 PreComboBox);
94
95
96 DocDeclAStr(
97 bool, Create(wxWindow *parent, wxWindowID id=-1,
98 const wxString& value = wxPyEmptyString,
99 const wxPoint& pos = wxDefaultPosition,
100 const wxSize& size = wxDefaultSize,
101 const wxArrayString& choices = wxPyEmptyStringArray,
102 long style = 0,
103 const wxValidator& validator = wxDefaultValidator,
104 const wxString& name = wxPyChoiceNameStr),
105 "Create(Window parent, int id, String value=EmptyString,
106 Point pos=DefaultPosition, Size size=DefaultSize,
107 List choices=EmptyList, long style=0, Validator validator=DefaultValidator,
108 String name=ChoiceNameStr) -> bool",
109 "Actually create the GUI wxComboBox control for 2-phase creation", "");
110
111
112 DocDeclStr(
113 virtual wxString , GetValue() const,
114 "Returns the current value in the combobox text field.", "");
115
116 DocDeclStr(
117 virtual void , SetValue(const wxString& value),
118 "", "");
119
120
121 DocDeclStr(
122 virtual void , Copy(),
123 "Copies the selected text to the clipboard.", "");
124
125 DocDeclStr(
126 virtual void , Cut(),
127 "Copies the selected text to the clipboard and removes the selection.", "");
128
129 DocDeclStr(
130 virtual void , Paste(),
131 "Pastes text from the clipboard to the text field.", "");
132
133
134 DocDeclStr(
135 virtual void , SetInsertionPoint(long pos),
136 "Sets the insertion point in the combobox text field.", "");
137
138 DocDeclStr(
139 virtual long , GetInsertionPoint() const,
140 "Returns the insertion point for the combobox's text field.", "");
141
142 DocDeclStr(
143 virtual long , GetLastPosition() const,
144 "Returns the last position in the combobox text field.", "");
145
146 DocDeclStr(
147 virtual void , Replace(long from, long to, const wxString& value),
148 "Replaces the text between two positions with the given text, in the
149combobox text field.", "");
150
151 DocDeclStr(
152 void , SetSelection(int n),
153 "Sets the item at index 'n' to be the selected item.", "");
154
155 DocDeclStrName(
156 virtual void , SetSelection(long from, long to),
157 "Selects the text between the two positions in the combobox text field.", "",
158 SetMark);
159
160#ifndef __WXMAC__
161 DocDeclAStrName(
162 virtual void , GetSelection(long* OUTPUT, long* OUTPUT),
163 "GetMark(self) -> (from, to)",
164 "Gets the positions of the begining and ending of the selection mark in
165the combobox text field.", "",
166 GetMark);
167#else
168 %pythoncode {
169 def GetMark(self):
170 return (0,0)
171 }
172#endif
173
174
175 DocDeclStr(
176 int , GetCurrentSelection() const,
177 "Unlike `GetSelection` which only returns the accepted selection value,
178i.e. the selection in the control once the user closes the dropdown
179list, this function returns the current selection. That is, while the
180dropdown list is shown, it returns the currently selected item in
181it. When it is not shown, its result is the same as for the other
182function.", "");
183
184 DocDeclStr(
185 bool , SetStringSelection(const wxString& string),
186 "Select the item with the specifed string", "");
187
188 DocDeclStr(
189 void , SetString(int n, const wxString& string),
190 "Set the label for the n'th item (zero based) in the list.", "");
191
192 DocDeclStr(
193 virtual void , SetEditable(bool editable),
194 "", "");
195
196
197 DocDeclStr(
198 virtual void , SetInsertionPointEnd(),
199 "Sets the insertion point at the end of the combobox text field.", "");
200
201 DocDeclStr(
202 virtual void , Remove(long from, long to),
203 "Removes the text between the two positions in the combobox text field.", "");
204
205
206
207 DocDeclStr(
208 bool , IsEditable() const,
209 "Returns True if the combo is ediatable (not read-only.)", "");
210
211
212 DocDeclStr(
213 void , Undo(),
214 "Redoes the last undo in the text field. Windows only.", "");
215
216 DocDeclStr(
217 void , Redo(),
218 "Undoes the last edit in the text field. Windows only.", "");
219
220 DocDeclStr(
221 void , SelectAll(),
222 "Select all the text in the combo's text field.", "");
223
224
225 DocDeclStr(
226 bool , CanCopy() const,
227 "Returns True if the combobox is editable and there is a text selection
228to copy to the clipboard. Only available on Windows.", "");
229
230 DocDeclStr(
231 bool , CanCut() const,
232 "Returns True if the combobox is editable and there is a text selection
233to copy to the clipboard. Only available on Windows.", "");
234
235 DocDeclStr(
236 bool , CanPaste() const,
237 "Returns True if the combobox is editable and there is text on the
238clipboard that can be pasted into the text field. Only available on
239Windows.", "");
240
241 DocDeclStr(
242 bool , CanUndo() const,
243 "Returns True if the combobox is editable and the last edit can be
244undone. Only available on Windows.", "");
245
246 DocDeclStr(
247 bool , CanRedo() const,
248 "Returns True if the combobox is editable and the last undo can be
249redone. Only available on Windows.", "");
250
251
252
253 static wxVisualAttributes
254 GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
255
256 %property(CurrentSelection, GetCurrentSelection, doc="See `GetCurrentSelection`");
257 %property(InsertionPoint, GetInsertionPoint, SetInsertionPoint, doc="See `GetInsertionPoint` and `SetInsertionPoint`");
258 %property(LastPosition, GetLastPosition, doc="See `GetLastPosition`");
259 %property(Mark, GetMark, SetMark, doc="See `GetMark` and `SetMark`");
260 %property(Value, GetValue, SetValue, doc="See `GetValue` and `SetValue`");
261
262};
263
264//---------------------------------------------------------------------------