]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/misc.i
Added calendar contributed by Lorne White
[wxWidgets.git] / utils / wxPython / src / misc.i
index cededae34a01c1d543656419ad0a996267022da4..a8791dd6c56a3b4a38344afdd07482cab8692b43 100644 (file)
@@ -15,6 +15,8 @@
 %{
 #include "helpers.h"
 #include <wx/resource.h>
 %{
 #include "helpers.h"
 #include <wx/resource.h>
+#include <wx/tooltip.h>
+#include <wx/busyinfo.h>
 %}
 
 //----------------------------------------------------------------------
 %}
 
 //----------------------------------------------------------------------
 // Import some definitions of other classes, etc.
 %import _defs.i
 
 // Import some definitions of other classes, etc.
 %import _defs.i
 
-//---------------------------------------------------------------------------
 
 
+//---------------------------------------------------------------------------
 
 
 class wxSize {
 public:
 
 
 class wxSize {
 public:
+    long x;
+    long y;
     %name(width) long x;
     %name(height)long y;
 
     wxSize(long w=0, long h=0);
     ~wxSize();
     void Set(long w, long h);
     %name(width) long x;
     %name(height)long y;
 
     wxSize(long w=0, long h=0);
     ~wxSize();
     void Set(long w, long h);
-    %name(GetWidth) long GetX();
-    %name(GetHeight)long GetY();
+    long GetX();
+    long GetY();
+    long GetWidth();
+    long GetHeight();
+    void SetWidth(long w);
+    void SetHeight(long h);
 
     %addmethods {
 
     %addmethods {
-        PyObject* __str__() {
+        PyObject* asTuple() {
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             return tup;
         }
     }
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             return tup;
         }
     }
+    %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())"
+    %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())"
+
 };
 
 //---------------------------------------------------------------------------
 };
 
 //---------------------------------------------------------------------------
@@ -58,8 +69,24 @@ public:
     double y;
     wxRealPoint(double x=0.0, double y=0.0);
     ~wxRealPoint();
     double y;
     wxRealPoint(double x=0.0, double y=0.0);
     ~wxRealPoint();
+
+    %addmethods {
+        void Set(double x, double y) {
+            self->x = x;
+            self->y = y;
+        }
+        PyObject* asTuple() {
+            PyObject* tup = PyTuple_New(2);
+            PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->x));
+            PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->y));
+            return tup;
+        }
+    }
+    %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())"
+    %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())"
 };
 
 };
 
+
 class wxPoint {
 public:
     long x;
 class wxPoint {
 public:
     long x;
@@ -72,13 +99,15 @@ public:
             self->x = x;
             self->y = y;
         }
             self->x = x;
             self->y = y;
         }
-        PyObject* __str__() {
+        PyObject* asTuple() {
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             return tup;
         }
     }
             PyObject* tup = PyTuple_New(2);
             PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
             PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
             return tup;
         }
     }
+    %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())"
+    %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())"
 };
 
 //---------------------------------------------------------------------------
 };
 
 //---------------------------------------------------------------------------
@@ -108,92 +137,51 @@ public:
    long  GetRight();
 
    long x, y, width, height;
    long  GetRight();
 
    long x, y, width, height;
-};
-
 
 
+    %addmethods {
+        PyObject* asTuple() {
+            PyObject* tup = PyTuple_New(4);
+            PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x));
+            PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y));
+            PyTuple_SET_ITEM(tup, 2, PyInt_FromLong(self->width));
+            PyTuple_SET_ITEM(tup, 3, PyInt_FromLong(self->height));
+            return tup;
+        }
+    }
+    %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())"
+    %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())"
+};
 
 
-//---------------------------------------------------------------------------
-// Dialog Functions
-
-wxString wxFileSelector(char* message,
-                        char* default_path = NULL,
-                        char* default_filename = NULL,
-                        char* default_extension = NULL,
-                        char* wildcard = "*.*",
-                        int flags = 0,
-                        wxWindow *parent = NULL,
-                        int x = -1, int y = -1);
-
-wxString wxGetTextFromUser(const wxString& message,
-                           const wxString& caption = wxPyEmptyStr,
-                           const wxString& default_value = wxPyEmptyStr,
-                           wxWindow *parent = NULL,
-                           int x = -1, int y = -1,
-                           bool centre = TRUE);
-
-// TODO: Need to custom wrap this one...
-// int wxGetMultipleChoice(char* message, char* caption,
-//                         int LCOUNT, char** LIST,
-//                         int nsel, int *selection,
-//                         wxWindow *parent = NULL, int x = -1, int y = -1,
-//                         bool centre = TRUE, int width=150, int height=200);
-
-
-wxString wxGetSingleChoice(const wxString& message, const wxString& caption,
-                           int LCOUNT, wxString* LIST,
-                           wxWindow *parent = NULL,
-                           int x = -1, int y = -1,
-                           bool centre = TRUE,
-                           int width=150, int height=200);
-
-int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption,
-                           int LCOUNT, wxString* LIST,
-                           wxWindow *parent = NULL,
-                           int x = -1, int y = -1,
-                           bool centre = TRUE,
-                           int width=150, int height=200);
-
-
-int wxMessageBox(const wxString& message,
-                 const wxString& caption = wxPyEmptyStr,
-                 int style = wxOK | wxCENTRE,
-                 wxWindow *parent = NULL,
-                 int x = -1, int y = -1);
 
 
-//---------------------------------------------------------------------------
-// GDI Functions
 
 
-bool wxColourDisplay();
-int wxDisplayDepth();
-void wxSetCursor(wxCursor& cursor);
 
 //---------------------------------------------------------------------------
 // Miscellaneous functions
 
 
 //---------------------------------------------------------------------------
 // Miscellaneous functions
 
-long NewId();
-void RegisterId(long id);
-void wxBeginBusyCursor(wxCursor *cursor = wxHOURGLASS_CURSOR);
+long wxNewId();
+void wxRegisterId(long id);
+%name(NewId) long wxNewId();
+%name(RegisterId) void wxRegisterId(long id);
+
 void wxBell();
 void wxDisplaySize(int *OUTPUT, int *OUTPUT);
 void wxEndBusyCursor();
 long wxExecute(const wxString& command, bool sync = FALSE);
 void wxBell();
 void wxDisplaySize(int *OUTPUT, int *OUTPUT);
 void wxEndBusyCursor();
 long wxExecute(const wxString& command, bool sync = FALSE);
-wxWindow * wxFindWindowByLabel(const wxString& label, wxWindow *parent=NULL);
-wxWindow * wxFindWindowByName(const wxString& name, wxWindow *parent=NULL);
-#ifdef __WXMSW__
-wxWindow * wxGetActiveWindow();
 long wxGetElapsedTime(bool resetTimer = TRUE);
 long wxGetElapsedTime(bool resetTimer = TRUE);
+#ifdef __WXMSW__
 long wxGetFreeMemory();
 #endif
 void wxGetMousePosition(int* OUTPUT, int* OUTPUT);
 bool wxIsBusy();
 wxString wxNow();
 long wxGetFreeMemory();
 #endif
 void wxGetMousePosition(int* OUTPUT, int* OUTPUT);
 bool wxIsBusy();
 wxString wxNow();
-#ifdef __WXMSW__
 bool wxShell(const wxString& command = wxPyEmptyStr);
 void wxStartTimer();
 int wxGetOsVersion(int *OUTPUT, int *OUTPUT);
 bool wxShell(const wxString& command = wxPyEmptyStr);
 void wxStartTimer();
 int wxGetOsVersion(int *OUTPUT, int *OUTPUT);
-#endif
 
 
+void wxSleep(int secs);
 bool wxYield();
 bool wxYield();
+bool wxSafeYield();
+void wxEnableTopLevelWindows(bool enable);
 
 %inline %{
     char* wxGetResource(char *section, char *entry, char *file = NULL) {
 
 %inline %{
     char* wxGetResource(char *section, char *entry, char *file = NULL) {
@@ -203,20 +191,6 @@ bool wxYield();
     }
 %}
 
     }
 %}
 
-//---------------------------------------------------------------------------
-// Resource System
-
-bool wxResourceAddIdentifier(char *name, int value);
-void wxResourceClear(void);
-wxBitmap  wxResourceCreateBitmap(char *resource);
-wxIcon  wxResourceCreateIcon(char *resource);
-wxMenuBar * wxResourceCreateMenuBar(char *resource);
-int wxResourceGetIdentifier(char *name);
-bool wxResourceParseData(char *resource, wxResourceTable *table = NULL);
-bool wxResourceParseFile(char *filename, wxResourceTable *table = NULL);
-bool wxResourceParseString(char *resource, wxResourceTable *table = NULL);
-
-
 
 //----------------------------------------------------------------------
 
 
 //----------------------------------------------------------------------
 
@@ -299,9 +273,7 @@ public:
 
     wxRect GetBox();
     bool Intersect(const wxRect& rect);
 
     wxRect GetBox();
     bool Intersect(const wxRect& rect);
-#ifdef __WXMSW__
     bool IsEmpty();
     bool IsEmpty();
-#endif
     bool Subtract(const wxRect& rect);
     bool Union(const wxRect& rect);
     bool Xor(const wxRect& rect);
     bool Subtract(const wxRect& rect);
     bool Union(const wxRect& rect);
     bool Xor(const wxRect& rect);
@@ -339,7 +311,7 @@ public:
 class wxAcceleratorEntry {
 public:
     wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0);
 class wxAcceleratorEntry {
 public:
     wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0);
-    //~wxAcceleratorEntry();  *** ?
+    ~wxAcceleratorEntry();
 
     void Set(int flags, int keyCode, int Cmd);
     int GetFlags();
 
     void Set(int flags, int keyCode, int Cmd);
     int GetFlags();
@@ -352,75 +324,20 @@ class wxAcceleratorTable {
 public:
     // Can also accept a list of 3-tuples
     wxAcceleratorTable(int LCOUNT, wxAcceleratorEntry* LIST);
 public:
     // Can also accept a list of 3-tuples
     wxAcceleratorTable(int LCOUNT, wxAcceleratorEntry* LIST);
-    // ~wxAcceleratorEntry(); *** ?
+    ~wxAcceleratorTable();
 
 };
 
 //---------------------------------------------------------------------------
 
 };
 
 //---------------------------------------------------------------------------
-/////////////////////////////////////////////////////////////////////////////
-//
-// $Log$
-// Revision 1.10  1999/01/30 07:30:14  RD
-// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
-//
-// Various cleanup, tweaks, minor additions, etc. to maintain
-// compatibility with the current wxWindows.
-//
-// Revision 1.9  1998/12/16 22:10:55  RD
-//
-// Tweaks needed to be able to build wxPython with wxGTK.
-//
-// Revision 1.8  1998/12/15 20:41:22  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/25 08:45:27  RD
-//
-// Added wxPalette, wxRegion, wxRegionIterator, wxTaskbarIcon
-// Added events for wxGrid
-// Other various fixes and additions
-//
-// Revision 1.6  1998/11/15 23:03:46  RD
-// Removing some ifdef's for wxGTK
-//
-// Revision 1.5  1998/10/20 06:43:59  RD
-// New wxTreeCtrl wrappers (untested)
-// some changes in helpers
-// etc.
-//
-// Revision 1.4  1998/08/18 19:48:19  RD
-// more wxGTK compatibility things.
-//
-// It builds now but there are serious runtime problems...
-//
-// Revision 1.3  1998/08/16 04:31:10  RD
-// More wxGTK work.
-//
-// Revision 1.2  1998/08/15 07:36:41  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:51  RD
-// Initial version
-//
-//
+
+class wxBusyInfo {
+public:
+    wxBusyInfo(const wxString& message);
+    ~wxBusyInfo();
+};
+
+
+
+//---------------------------------------------------------------------------