]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/wx.i
Corrected a return type
[wxWidgets.git] / wxPython / src / wx.i
index 4fdfa903e93dff567b5ee108ba4db2bac59b10b6..4f05180037fbef09aa12e802026e3ba260187a0b 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        wxp.i
+// Name:        wx.i
 // Purpose:     SWIG interface file for a python wxWindows module
 //
 // Author:      Robin Dunn
 %import sizers.i
 %import streams.i
 %import filesys.i
+%import utils.i
+%import fonts.i
+
 
 %native(_wxStart)           __wxStart;
 %native(_wxSetDictionary)   __wxSetDictionary;
 
 //---------------------------------------------------------------------------
 
-
-#define __version__ "0.0.0"   // The real value is now in setup.py...
-
 %readonly
 wxPoint     wxDefaultPosition;
 wxSize      wxDefaultSize;
@@ -62,6 +62,14 @@ wxSize      wxDefaultSize;
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
+enum {
+    wxPYAPP_ASSERT_SUPPRESS  = 1,
+    wxPYAPP_ASSERT_EXCEPTION = 2,
+    wxPYAPP_ASSERT_DIALOG    = 4,
+    wxPYAPP_ASSERT_LOG       = 8
+};
+
+
 class wxPyApp : public wxEvtHandler {
 public:
     %addmethods {
@@ -73,10 +81,12 @@ public:
 
     ~wxPyApp();
 
+    void _setCallbackInfo(PyObject* self, PyObject* _class);
+    %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyApp)"
+    %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
+
+
     wxString GetAppName();
-#ifdef __WXMSW__
-    bool GetAuto3D();
-#endif
     wxString GetClassName();
     bool GetExitOnFrameDelete();
     int GetPrintMode();
@@ -90,28 +100,43 @@ public:
     int  MainLoop();
     bool Pending();
     bool ProcessIdle();
+    bool Yield(bool onlyIfNeeded = FALSE);
 
     void SetAppName(const wxString& name);
-#ifdef __WXMSW__
-    void SetAuto3D(bool auto3D);
-#endif
     void SetClassName(const wxString& name);
     void SetExitOnFrameDelete(bool flag);
     void SetPrintMode(int mode);
     void SetTopWindow(wxWindow* window);
     void SetVendorName(const wxString& name);
     void SetUseBestVisual(bool flag);
-    wxIcon GetStdIcon(int which);
 
+    int  GetAssertMode();
+    void SetAssertMode(int mode);
 
+
+    static bool GetMacDefaultEncodingIsPC();
+    static bool GetMacSupportPCMenuShortcuts();
+    static long GetMacAboutMenuItemId();
+    static long GetMacPreferencesMenuItemId();
+    static long GetMacExitMenuItemId();
+    static wxString GetMacHelpMenuTitleName();
+
+    static void SetMacDefaultEncodingIsPC(bool val);
+    static void SetMacSupportPCMenuShortcuts(bool val);
+    static void SetMacAboutMenuItemId(long val);
+    static void SetMacPreferencesMenuItemId(long val);
+    static void SetMacExitMenuItemId(long val);
+    static void SetMacHelpMenuTitleName(const wxString& val);
 };
 
 %inline %{
     wxPyApp* wxGetApp() {
-        return wxPythonApp;
+        //return wxPythonApp;
+        return (wxPyApp*)wxTheApp;
     }
 %}
 
+
 //----------------------------------------------------------------------
 // this is used to cleanup after wxWindows when Python shuts down.
 
@@ -147,6 +172,8 @@ extern "C" SWIGEXPORT(void) initsizersc();
 extern "C" SWIGEXPORT(void) initclip_dndc();
 extern "C" SWIGEXPORT(void) initstreamsc();
 extern "C" SWIGEXPORT(void) initfilesysc();
+extern "C" SWIGEXPORT(void) initutilsc();
+extern "C" SWIGEXPORT(void) initfontsc();
 
 
 
@@ -154,19 +181,25 @@ extern "C" SWIGEXPORT(void) initfilesysc();
 // the wxc module and will then have safe access to these functions, even if
 // in another shared library.
 static wxPyCoreAPI API = {
-    SWIG_MakePtr,
-    SWIG_GetPtr,
-    SWIG_GetPtrObj,
-    SWIG_RegisterMapping,
-    SWIG_addvarlink,
-    SWIG_newvarlink,
-
+    (p_SWIG_MakePtr_t)SWIG_MakePtr,
+    (p_SWIG_GetPtr_t)SWIG_GetPtr,
+    (p_SWIG_GetPtrObj_t)SWIG_GetPtrObj,
+    (p_SWIG_RegisterMapping_t)SWIG_RegisterMapping,
+    (p_SWIG_addvarlink_t)SWIG_addvarlink,
+    (p_SWIG_newvarlink_t)SWIG_newvarlink,
+
+    wxPyBeginAllowThreads,
+    wxPyEndAllowThreads,
     wxPyBeginBlockThreads,
     wxPyEndBlockThreads,
 
     wxPyConstructObject,
     wxPy_ConvertList,
 
+    wxString_in_helper,
+    Py2wxString,
+    wx2PyString,
+
     byte_LIST_helper,
     int_LIST_helper,
     long_LIST_helper,
@@ -181,6 +214,7 @@ static wxPyCoreAPI API = {
     wxRealPoint_helper,
     wxRect_helper,
     wxColour_helper,
+    wxPoint2DDouble_helper,
 
     wxPyCBH_setCallbackInfo,
     wxPyCBH_findCallback,
@@ -192,6 +226,14 @@ static wxPyCoreAPI API = {
     wxPyMake_wxObject,
     wxPyMake_wxSizer,
     wxPyPtrTypeMap_Add,
+    wxArrayString2PyList_helper,
+    wxArrayInt2PyList_helper,
+
+    wxPyClientData_dtor,
+    wxPyUserData_dtor,
+    wxPyOORClientData_dtor,
+
+    wxPyCBInputStream_create
 };
 
 
@@ -207,7 +249,7 @@ static wxPyCoreAPI API = {
     Py_XDECREF(v);
 
 
-    __wxPreStart();     // initialize the GUI toolkit, if needed.
+    __wxPreStart(d);     // initialize the GUI toolkit, if needed.
 
 
         // Since these modules are all linked together, initialize them now
@@ -232,14 +274,16 @@ static wxPyCoreAPI API = {
     initclip_dndc();
     initstreamsc();
     initfilesysc();
+    initutilsc();
+    initfontsc();
 
 
+    // Although these are redfined in __version__ they need to be here too so
+    // that an assert can be done to ensure that the wxPython and the wxWindows
+    // versions match.
     PyDict_SetItemString(d,"wxMAJOR_VERSION", PyInt_FromLong((long)wxMAJOR_VERSION ));
     PyDict_SetItemString(d,"wxMINOR_VERSION", PyInt_FromLong((long)wxMINOR_VERSION ));
-    PyDict_SetItemString(d,"wxRELEASE_NUMBER", PyInt_FromLong((long)wxRELEASE_NUMBER ));
-    PyDict_SetItemString(d,"wxVERSION_NUMBER", PyInt_FromLong((long)wxVERSION_NUMBER ));
-    PyDict_SetItemString(d,"wxVERSION_STRING", PyString_FromString(wxVERSION_STRING));
-
+    PyDict_SetItemString(d,"wxRELEASE_VERSION", PyInt_FromLong((long)wxRELEASE_NUMBER ));
 
 %}