]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/misc.i
Added tmake template for simple wxGTK makefile
[wxWidgets.git] / utils / wxPython / src / misc.i
index f8d7ed4b85fc441e32aef78b993f2b4656e429f6..6999c3f6eac132fd6440f8c85bbb70ca13405ed3 100644 (file)
@@ -15,6 +15,7 @@
 %{
 #include "helpers.h"
 #include <wx/resource.h>
+#include <wx/tooltip.h>
 %}
 
 //----------------------------------------------------------------------
 // Import some definitions of other classes, etc.
 %import _defs.i
 
-//---------------------------------------------------------------------------
 
+//---------------------------------------------------------------------------
 
 
 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(GetWidth) long GetX();
-    %name(GetHeight)long GetY();
+    long GetX();
+    long GetY();
+    long GetWidth();
+    long GetHeight();
+    void SetWidth(long w);
+    void SetHeight(long h);
 
     %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;
         }
     }
+    %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())"
+    %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())"
+
 };
 
 //---------------------------------------------------------------------------
@@ -72,13 +82,15 @@ public:
             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;
         }
     }
+    %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())"
+    %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())"
 };
 
 //---------------------------------------------------------------------------
@@ -108,6 +120,19 @@ public:
    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, 0, PyInt_FromLong(self->width));
+            PyTuple_SET_ITEM(tup, 1, 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())"
 };
 
 
@@ -115,7 +140,7 @@ public:
 //---------------------------------------------------------------------------
 // Dialog Functions
 
-char* wxFileSelector(char* message,
+wxString wxFileSelector(char* message,
                         char* default_path = NULL,
                         char* default_filename = NULL,
                         char* default_extension = NULL,
@@ -131,6 +156,7 @@ wxString wxGetTextFromUser(const wxString& message,
                            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,
@@ -165,31 +191,40 @@ int wxMessageBox(const wxString& message,
 
 bool wxColourDisplay();
 int wxDisplayDepth();
-void wxSetCursor(wxCursor *cursor);
+void wxSetCursor(wxCursorcursor);
 
 //---------------------------------------------------------------------------
 // Miscellaneous functions
 
-long NewId();
-void RegisterId(long id);
+long wxNewId();
+void wxRegisterId(long id);
+%name(NewId) long wxNewId();
+%name(RegisterId) void wxRegisterId(long id);
+
 void wxBeginBusyCursor(wxCursor *cursor = wxHOURGLASS_CURSOR);
 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 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);
+#endif
+
+void wxSleep(int secs);
 bool wxYield();
+bool wxSafeYield();
+void wxEnableTopLevelWindows(bool enable);
 
-int wxGetOsVersion(int *OUTPUT, int *OUTPUT);
 %inline %{
     char* wxGetResource(char *section, char *entry, char *file = NULL) {
         char * retval;
@@ -203,8 +238,8 @@ int wxGetOsVersion(int *OUTPUT, int *OUTPUT);
 
 bool wxResourceAddIdentifier(char *name, int value);
 void wxResourceClear(void);
-wxBitmap * wxResourceCreateBitmap(char *resource);
-wxIcon * wxResourceCreateIcon(char *resource);
+wxBitmap  wxResourceCreateBitmap(char *resource);
+wxIcon  wxResourceCreateIcon(char *resource);
 wxMenuBar * wxResourceCreateMenuBar(char *resource);
 int wxResourceGetIdentifier(char *name);
 bool wxResourceParseData(char *resource, wxResourceTable *table = NULL);
@@ -246,9 +281,9 @@ public:
 
     void Above(wxWindow *otherWin, int margin=0);
     void Absolute(int value);
-    void AsIs(void);
+    void AsIs();
     void Below(wxWindow *otherWin, int margin=0);
-    void Unconstrained(void);
+    void Unconstrained();
     void LeftOf(wxWindow *otherWin, int margin=0);
     void PercentOf(wxWindow *otherWin, wxEdge edge, int percent);
     void RightOf(wxWindow *otherWin, int margin=0);
@@ -274,6 +309,60 @@ public:
 }
 
 
+//---------------------------------------------------------------------------
+// Regions, etc.
+
+enum wxRegionContain {
+       wxOutRegion, wxPartRegion, wxInRegion
+};
+
+
+class wxRegion {
+public:
+    wxRegion();
+    ~wxRegion();
+
+    void Clear();
+    wxRegionContain Contains(long x, long y);
+    %name(ContainsPoint)wxRegionContain Contains(const wxPoint& pt);
+    %name(ContainsRect)wxRegionContain Contains(const wxRect& rect);
+
+    wxRect GetBox();
+    bool Intersect(const wxRect& rect);
+#ifdef __WXMSW__
+    bool IsEmpty();
+#endif
+    bool Subtract(const wxRect& rect);
+    bool Union(const wxRect& rect);
+    bool Xor(const wxRect& rect);
+};
+
+
+
+class wxRegionIterator {
+public:
+    wxRegionIterator(const wxRegion& region);
+    ~wxRegionIterator();
+
+    long GetX();
+    long GetY();
+    long GetW();
+    long GetWidth();
+    long GetH();
+    long GetHeight();
+    wxRect GetRect();
+    bool HaveRects();
+    void Reset();
+
+    %addmethods {
+        void Next() {
+            (*self) ++;
+        }
+    };
+};
+
+
+
 //---------------------------------------------------------------------------
 // Accelerator Entry and Table
 
@@ -298,19 +387,3 @@ public:
 };
 
 //---------------------------------------------------------------------------
-/////////////////////////////////////////////////////////////////////////////
-//
-// $Log$
-// 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
-//
-//
-
-