X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fb5e0af035b25afec4bebf8585c1f32766636599..944930d5f525ffa2d10b7cefb1ecacaf1e95275c:/utils/wxPython/src/controls.i diff --git a/utils/wxPython/src/controls.i b/utils/wxPython/src/controls.i index c3121d24e5..57875bd049 100644 --- a/utils/wxPython/src/controls.i +++ b/utils/wxPython/src/controls.i @@ -15,10 +15,20 @@ %{ #include "helpers.h" #include +#include +#include +#include #ifdef __WXMSW__ -#include +#if wxUSE_OWNER_DRAWN +#include +#endif +#endif + +#ifdef __WXGTK__ +#include #endif + %} //---------------------------------------------------------------------- @@ -33,17 +43,25 @@ %import gdi.i %import events.i +%pragma(python) code = "import wx" + //---------------------------------------------------------------------- %{ wxValidator wxPyDefaultValidator; // Non-const default because of SWIG %} +%readonly +wxValidator wxDefaultValidator; +%readwrite + //---------------------------------------------------------------------- class wxControl : public wxWindow { public: +#ifdef __WXMSW__ void Command(wxCommandEvent& event); +#endif wxString GetLabel(); void SetLabel(const wxString& label); }; @@ -58,6 +76,9 @@ public: long style = 0, const wxValidator& validator = wxPyDefaultValidator, char* name = "button"); + + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + void SetDefault(); }; @@ -72,15 +93,15 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "button"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + wxBitmap& GetBitmapLabel(); -#ifdef __WXMSW__ wxBitmap& GetBitmapDisabled(); wxBitmap& GetBitmapFocus(); wxBitmap& GetBitmapSelected(); void SetBitmapDisabled(const wxBitmap& bitmap); void SetBitmapFocus(const wxBitmap& bitmap); void SetBitmapSelected(const wxBitmap& bitmap); -#endif void SetBitmapLabel(const wxBitmap& bitmap); }; @@ -96,6 +117,8 @@ public: const wxValidator& val = wxPyDefaultValidator, char* name = "checkBox"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + bool GetValue(); void SetValue(const bool state); }; @@ -112,6 +135,8 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "choice"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + void Append(const wxString& item); void Clear(); int FindString(const wxString& string); @@ -127,7 +152,7 @@ public: //---------------------------------------------------------------------- -class wxComboBox : public wxControl { +class wxComboBox : public wxChoice { public: wxComboBox(wxWindow* parent, wxWindowID id, char* value = "", const wxPoint& pos = wxPyDefaultPosition, @@ -137,6 +162,8 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "comboBox"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + void Append(const wxString& item); // TODO: void Append(const wxString& item, char* clientData); void Clear(); @@ -159,7 +186,7 @@ public: // TODO: void SetClientData(const int n, char* data); void SetInsertionPoint(long pos); void SetInsertionPointEnd(); - void SetSelection(int n, bool select = TRUE); + void SetSelection(int n); %name(SetMark)void SetSelection(long from, long to); void SetValue(const wxString& text); }; @@ -175,6 +202,8 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "gauge"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + int GetBezelFace(); int GetRange(); int GetShadowWidth(); @@ -197,6 +226,19 @@ public: }; +//---------------------------------------------------------------------- + + +class wxStaticLine : public wxControl { +public: + wxStaticLine( wxWindow *parent, wxWindowID id, + const wxPoint &pos = wxPyDefaultPosition, + const wxSize &size = wxPyDefaultSize, + long style = wxLI_HORIZONTAL, + const char* name = "staticLine" ); +}; + + //---------------------------------------------------------------------- class wxStaticText : public wxControl { @@ -207,6 +249,8 @@ public: long style = 0, char* name = "staticText"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + wxString GetLabel(); void SetLabel(const wxString& label); }; @@ -223,6 +267,8 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "listBox"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + void Append(const wxString& item); // TODO: void Append(const wxString& item, char* clientData); void Clear(); @@ -231,7 +277,22 @@ public: int FindString(const wxString& string); // TODO: char* GetClientData(const int n); int GetSelection(); - // TODO: int GetSelections(int **selections); + + // int GetSelections(int **selections); + %addmethods { + PyObject* GetSelections() { + wxArrayInt lst; + self->GetSelections(lst); + PyObject *tup = PyTuple_New(lst.GetCount()); + for(int i=0; iAppendText(text + '\n'); + } + } }; //---------------------------------------------------------------------- @@ -301,11 +396,13 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "scrollBar"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + int GetRange(); int GetPageSize(); - int GetPosition(); + int GetThumbPosition(); int GetThumbSize(); - void SetPosition(int viewStart); + void SetThumbPosition(int viewStart); void SetScrollbar(int position, int thumbSize, int range, int pageSize, bool refresh = TRUE); @@ -313,7 +410,6 @@ public: //---------------------------------------------------------------------- -#ifdef __WXMSW__ class wxSpinButton : public wxControl { public: wxSpinButton(wxWindow* parent, wxWindowID id = -1, @@ -328,7 +424,6 @@ public: void SetRange(int min, int max); void SetValue(int value); }; -#endif //---------------------------------------------------------------------- @@ -341,8 +436,11 @@ public: long style = 0, char* name = "staticBitmap"); - wxBitmap& GetBitmap(); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + + const wxBitmap& GetBitmap(); void SetBitmap(const wxBitmap& bitmap); + void SetIcon(const wxIcon& icon); }; //---------------------------------------------------------------------- @@ -359,17 +457,21 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "radioBox"); - %name(EnableBox)void Enable(bool enable); - void Enable(int n, bool enable); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + + void Enable(bool enable); + %name(EnableItem)void Enable(int n, bool enable); int FindString(const wxString& string); - %name(GetBoxLabel)wxString GetLabel(); - wxString GetLabel(int n); + +//*** wxString GetLabel(); +//*** void SetLabel(const wxString& label); + + %name(GetItemLabel)wxString GetLabel(int n); int GetSelection(); wxString GetString(int n); wxString GetStringSelection(); int Number(); - %name(SetBoxLabel)void SetLabel(const wxString& label); - void SetLabel(int n, const wxString& label); + %name(SetItemLabel)void SetLabel(int n, const wxString& label); void SetSelection(int n); void SetStringSelection(const wxString& string); void Show(bool show); @@ -388,6 +490,8 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "radioButton"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + bool GetValue(); void SetValue(bool value); }; @@ -404,6 +508,8 @@ public: const wxValidator& validator = wxPyDefaultValidator, char* name = "slider"); + %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)" + void ClearSel(); void ClearTicks(); int GetLineSize(); @@ -428,24 +534,3 @@ public: //---------------------------------------------------------------------- - -///////////////////////////////////////////////////////////////////////////// -// -// $Log$ -// Revision 1.3 1998/08/18 19:48:14 RD -// more wxGTK compatibility things. -// -// It builds now but there are serious runtime problems... -// -// Revision 1.2 1998/08/15 07:36:28 RD -// - Moved the header in the .i files out of the code that gets put into -// the .cpp files. It caused CVS conflicts because of the RCS ID being -// different each time. -// -// - A few minor fixes. -// -// Revision 1.1 1998/08/09 08:25:49 RD -// Initial version -// -// -