]> 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 dd7c6bedeacf4d03f89a58e4d664851fff7062a8..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,20 +191,21 @@ 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);
@@ -193,7 +220,10 @@ void wxStartTimer();
 int wxGetOsVersion(int *OUTPUT, int *OUTPUT);
 #endif
 
+void wxSleep(int secs);
 bool wxYield();
+bool wxSafeYield();
+void wxEnableTopLevelWindows(bool enable);
 
 %inline %{
     char* wxGetResource(char *section, char *entry, char *file = NULL) {
@@ -251,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);
@@ -280,9 +310,62 @@ public:
 
 
 //---------------------------------------------------------------------------
-// Accelerator Entry and Table
+// 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
+
 class wxAcceleratorEntry {
 public:
     wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0);
@@ -302,34 +385,5 @@ public:
     // ~wxAcceleratorEntry(); *** ?
 
 };
-#endif
-//---------------------------------------------------------------------------
-/////////////////////////////////////////////////////////////////////////////
-//
-// $Log$
-// 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
-//
-//
-
 
+//---------------------------------------------------------------------------