DocCtorStr(
wxControl(wxWindow *parent,
- wxWindowID id=-1,
- const wxPoint& pos=wxDefaultPosition,
- const wxSize& size=wxDefaultSize,
- long style=0,
- const wxValidator& validator=wxDefaultValidator,
+ wxWindowID id=-1,
+ const wxPoint& pos=wxDefaultPosition,
+ const wxSize& size=wxDefaultSize,
+ long style=0,
+ const wxValidator& validator=wxDefaultValidator,
const wxString& name=wxPyControlNameStr),
"Create a Control. Normally you should only call this from a subclass'
__init__ as a plain old wx.Control is not very useful.", "");
"Do the 2nd phase and create the GUI control.", "");
+ DocDeclStr(
+ int , GetAlignment() const,
+ "Get the control alignment (left/right/centre, top/bottom/centre)", "");
+
+
+ DocDeclStr(
+ wxString , GetLabelText() const,
+ "Get just the text of the label, without mnemonic characters ('&')", "");
+
+
+
DocDeclStr(
void , Command(wxCommandEvent& event),
"Simulates the effect of the user issuing a command to the item.
:see: `wx.CommandEvent`
", "");
- DocDeclStr(
- wxString , GetLabel(),
- "Return a control's text.", "");
-
- DocDeclStr(
- void , SetLabel(const wxString& label),
- "Sets the item's text.", "");
-
// DocDeclStr(
// bool , GetAdjustMinSizeFlag(),
static wxVisualAttributes
GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+ %property(Alignment, GetAlignment, doc="See `GetAlignment`");
+ %property(LabelText, GetLabelText, doc="See `GetLabelText`");
+
};
%newgroup;
+
+
DocStr(wxItemContainer,
-"wx.ItemContainer defines an interface which is implemented by all
-controls which have string subitems, each of which may be selected,
-such as `wx.ListBox`, `wx.CheckListBox`, `wx.Choice` as well as
-`wx.ComboBox` which implements an extended interface deriving from
+"The wx.ItemContainer class defines an interface which is implemented
+by all controls which have string subitems, each of which may be
+selected, such as `wx.ListBox`, `wx.CheckListBox`, `wx.Choice` as well
+as `wx.ComboBox` which implements an extended interface deriving from
this one.
It defines the methods for accessing the control's items and although
class wxItemContainer
{
public:
- // wxItemContainer() { m_clientDataItemsType = wxClientData_None; } ** It's an ABC
+ // wxItemContainer() ** It's an ABC
%extend {
DocStr(Insert,
"Insert an item into the control before the item at the ``pos`` index,
optionally associating some data object with the item.", "");
- int Insert(const wxString& item, int pos, PyObject* clientData=NULL) {
+ int Insert(const wxString& item, unsigned int pos, PyObject* clientData=NULL) {
if (clientData) {
wxPyClientData* data = new wxPyClientData(clientData);
return self->Insert(item, pos, data);
"Removes all items from the control.", "");
DocDeclStr(
- virtual void , Delete(int n),
+ virtual void , Delete(unsigned int n),
"Deletes the item at the zero-based index 'n' from the control. Note
that it is an error (signalled by a `wx.PyAssertionError` exception if
enabled) to remove an item with the index negative or greater or equal
+
+ %extend {
+ DocStr(GetClientData,
+ "Returns the client data associated with the given item, (if any.)", "");
+ PyObject* GetClientData(unsigned int n) {
+ wxPyClientData* data = (wxPyClientData*)self->GetClientObject(n);
+ if (data) {
+ Py_INCREF(data->m_obj);
+ return data->m_obj;
+ } else {
+ Py_INCREF(Py_None);
+ return Py_None;
+ }
+ }
+
+ DocStr(SetClientData,
+ "Associate the given client data with the item at position n.", "");
+ void SetClientData(unsigned int n, PyObject* clientData) {
+ wxPyClientData* data = new wxPyClientData(clientData);
+ self->SetClientObject(n, data);
+ }
+ }
+
+
+
DocDeclStr(
- virtual int , GetCount() const,
+ virtual unsigned int , GetCount() const,
"Returns the number of items in the control.", "");
DocDeclStr(
"Returns True if the control is empty or False if it has some items.", "");
DocDeclStr(
- virtual wxString , GetString(int n) const,
+ virtual wxString , GetString(unsigned int n) const,
"Returns the label of the item with the given index.", "");
DocDeclStr(
"", "");
DocDeclStr(
- virtual void , SetString(int n, const wxString& s),
+ virtual void , SetString(unsigned int n, const wxString& s),
"Sets the label for the given item.", "");
DocDeclStr(
found.", "");
-
DocDeclStr(
- virtual void , Select(int n),
+ virtual void , SetSelection(int n),
"Sets the item at index 'n' to be the selected item.", "");
-
- %pythoncode { SetSelection = Select }
DocDeclStr(
virtual int , GetSelection() const,
is selected.", "");
+ bool SetStringSelection(const wxString& s);
+
DocDeclStr(
wxString , GetStringSelection() const,
"Returns the label of the selected item or an empty string if no item
is selected.", "");
+ DocDeclStr(
+ void , Select(int n),
+ "This is the same as `SetSelection` and exists only because it is
+slightly more natural for controls which support multiple selection.", "");
+
- %extend {
- DocStr(GetClientData,
- "Returns the client data associated with the given item, (if any.)", "");
- PyObject* GetClientData(int n) {
- wxPyClientData* data = (wxPyClientData*)self->GetClientObject(n);
- if (data) {
- Py_INCREF(data->m_obj);
- return data->m_obj;
- } else {
- Py_INCREF(Py_None);
- return Py_None;
- }
- }
-
- DocStr(SetClientData,
- "Associate the given client data with the item at position n.", "");
- void SetClientData(int n, PyObject* clientData) {
- wxPyClientData* data = new wxPyClientData(clientData);
- self->SetClientObject(n, data);
- }
+ %pythoncode {
+ def GetItems(self):
+ """Return a list of the strings in the control"""
+ return [self.GetString(i) for i in xrange(self.GetCount())]
+
+ def SetItems(self, items):
+ """Clear and set the strings in the control from a list"""
+ self.Clear()
+ for i in items:
+ self.Append(i)
}
-
+
+ %property(Count, GetCount, doc="See `GetCount`");
+ %property(Items, GetItems, SetItems, doc="See `GetItems` and `SetItems`");
+ %property(Selection, GetSelection, SetSelection, doc="See `GetSelection` and `SetSelection`");
+ %property(StringSelection, GetStringSelection, SetStringSelection, doc="See `GetStringSelection` and `SetStringSelection`");
+ %property(Strings, GetStrings, doc="See `GetStrings`");
+
};