X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2f4e928794167715f19a3021d62b7c4f77611694..877d6bae5ea06c6d45b74307e7ce61f65af514d9:/wxPython/src/wx.i diff --git a/wxPython/src/wx.i b/wxPython/src/wx.i index 4fdfa903e9..4f05180037 100644 --- a/wxPython/src/wx.i +++ b/wxPython/src/wx.i @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: wxp.i +// Name: wx.i // Purpose: SWIG interface file for a python wxWindows module // // Author: Robin Dunn @@ -45,15 +45,15 @@ %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 )); %}