]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/controls.i
*** empty log message ***
[wxWidgets.git] / utils / wxPython / src / controls.i
index 7b5098130ef2db915cf91e6ff46c90e907f351e9..5e92ebe7adce372d23a8fba53e0c5469b1ee03f8 100644 (file)
 #include "helpers.h"
 #include <wx/slider.h>
 #include <wx/spinbutt.h>
+#include <wx/dynarray.h>
+#include <wx/statline.h>
 
 #ifdef __WXMSW__
 #if wxUSE_OWNER_DRAWN
 #include <wx/checklst.h>
 #endif
 #endif
+
+#ifdef __WXGTK__
+#include <wx/checklst.h>
+#endif
+
 %}
 
 //----------------------------------------------------------------------
@@ -48,7 +55,9 @@ wxValidator wxPyDefaultValidator;       // Non-const default because of SWIG
 
 class wxControl : public wxWindow {
 public:
+#ifdef __WXMSW__
     void Command(wxCommandEvent& event);
+#endif
     wxString GetLabel();
     void SetLabel(const wxString& label);
 };
@@ -139,7 +148,7 @@ public:
 
 //----------------------------------------------------------------------
 
-class wxComboBox : public wxControl {
+class wxComboBox : public wxChoice {
 public:
     wxComboBox(wxWindow* parent, wxWindowID id, char* value = "",
                const wxPoint& pos = wxPyDefaultPosition,
@@ -173,7 +182,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);
 };
@@ -213,6 +222,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 {
@@ -251,7 +273,20 @@ 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; i<lst.GetCount(); i++) {
+              PyTuple_SetItem(tup, i, PyInt_FromLong(lst[i]));
+          }
+          return tup;
+      }
+    }
+
     wxString GetString(int n);
     wxString GetStringSelection();
     int Number();
@@ -324,7 +359,16 @@ public:
     void SetValue(const wxString& value);
     void ShowPosition(long pos);
     void WriteText(const wxString& text);
+    void AppendText(const wxString& text);
     long XYToPosition(long x, long y);
+
+    bool CanCopy();
+    bool CanCut();
+    bool CanPaste();
+    bool CanRedo();
+    bool CanUndo();
+    void GetSelection(long* OUTPUT, long* OUTPUT);
+    bool IsEditable();
 };
 
 //----------------------------------------------------------------------
@@ -380,8 +424,9 @@ public:
 
     %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)"
 
-    wxBitmap& GetBitmap();
+    const wxBitmap& GetBitmap();
     void SetBitmap(const wxBitmap& bitmap);
+    void SetIcon(const wxIcon& icon);
 };
 
 //----------------------------------------------------------------------
@@ -400,19 +445,19 @@ public:
 
     %pragma(python) addtomethod = "__init__:wx._StdWindowCallbacks(self)"
 
-    %name(EnableBox)void Enable(bool enable);
-    void Enable(int n, bool enable);
+    void Enable(bool enable);
+    %name(EnableItem)void Enable(int n, bool enable);
     int FindString(const wxString& string);
-#ifdef __WXMSW__
-    %name(GetBoxLabel)wxString GetLabel();
-#endif
-    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);
@@ -475,59 +520,3 @@ public:
 
 //----------------------------------------------------------------------
 
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// $Log$
-// Revision 1.9  1998/12/17 14:07:29  RR
-//   Removed minor differences between wxMSW and wxGTK
-//
-// Revision 1.8  1998/12/15 20:41:15  RD
-// Changed the import semantics from "from wxPython import *" to "from
-// wxPython.wx import *"  This is for people who are worried about
-// namespace pollution, they can use "from wxPython import wx" and then
-// prefix all the wxPython identifiers with "wx."
-//
-// Added wxTaskbarIcon for wxMSW.
-//
-// Made the events work for wxGrid.
-//
-// Added wxConfig.
-//
-// Added wxMiniFrame for wxGTK, (untested.)
-//
-// Changed many of the args and return values that were pointers to gdi
-// objects to references to reflect changes in the wxWindows API.
-//
-// Other assorted fixes and additions.
-//
-// Revision 1.7  1998/11/16 00:00:53  RD
-// Generic treectrl for wxPython/GTK compiles...
-//
-// Revision 1.6  1998/11/15 23:03:43  RD
-// Removing some ifdef's for wxGTK
-//
-// Revision 1.5  1998/10/07 07:34:32  RD
-// Version 0.4.1 for wxGTK
-//
-// Revision 1.4  1998/10/02 06:40:35  RD
-//
-// Version 0.4 of wxPython for MSW.
-//
-// 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
-//
-//
-