X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/daf3246330c8ae7b4536cd1f6deef733a405cecd..bbf0bd053873f78236174b94d6aa822cb953282d:/wxPython/src/_functions.i diff --git a/wxPython/src/_functions.i b/wxPython/src/_functions.i index efc60338f3..232b762737 100644 --- a/wxPython/src/_functions.i +++ b/wxPython/src/_functions.i @@ -13,6 +13,10 @@ // Not a %module +%{ +#include +%} + //--------------------------------------------------------------------------- MAKE_CONST_WXSTRING(FileSelectorPromptStr); @@ -27,19 +31,29 @@ long wxNewId(); void wxRegisterId(long id); long wxGetCurrentId(); +// Returns true if the ID is in the list of recognized stock actions +bool wxIsStockID(wxWindowID id); + +// Returns true of the label is empty or label of a stock button with +// given ID +bool wxIsStockLabel(wxWindowID id, const wxString& label); + +// Returns label that should be used for given stock UI element (e.g. "&OK" +// for wxID_OK): +wxString wxGetStockLabel(wxWindowID id, + bool withCodes = true, + wxString accelerator = wxPyEmptyString); + + MustHaveApp(wxBell); void wxBell(); MustHaveApp(wxEndBusyCursor); void wxEndBusyCursor(); -long wxGetElapsedTime(bool resetTimer = True); - -MustHaveApp(wxGetMousePosition); -DocDeclA( - void, wxGetMousePosition(int* OUTPUT, int* OUTPUT), - "GetMousePosition() -> (x,y)"); - +long wxGetElapsedTime(bool resetTimer = true); +%pythoncode { GetElapsedTime = wx._deprecated(GetElapsedTime) } + bool wxIsBusy(); wxString wxNow(); bool wxShell(const wxString& command = wxPyEmptyString); @@ -60,10 +74,10 @@ wxString wxGetOsDescription(); // int wxParseCommonDialogsFilter(const wxString& wildCard, wxArrayString& descriptions, wxArrayString& filters); #if defined(__WXMSW__) || defined(__WXMAC__) -long wxGetFreeMemory(); +wxMemorySize wxGetFreeMemory(); #else %inline %{ - long wxGetFreeMemory() + wxMemorySize wxGetFreeMemory() { wxPyRaiseNotImplemented(); return 0; } %} #endif @@ -80,7 +94,10 @@ bool wxShutdown(wxShutdownFlags wFlags); void wxSleep(int secs); -void wxUsleep(unsigned long milliseconds); +void wxMilliSleep(unsigned long milliseconds); +void wxMicroSleep(unsigned long microseconds); +%pythoncode { Usleep = MilliSleep } + void wxEnableTopLevelWindows(bool enable); wxString wxStripMenuCodes(const wxString& in); @@ -142,7 +159,7 @@ wxString wxGetTextFromUser(const wxString& message, const wxString& default_value = wxPyEmptyString, wxWindow *parent = NULL, int x = -1, int y = -1, - bool centre = True); + bool centre = true); MustHaveApp(wxGetPasswordFromUser); wxString wxGetPasswordFromUser(const wxString& message, @@ -156,7 +173,7 @@ wxString wxGetPasswordFromUser(const wxString& message, // int LCOUNT, char** choices, // int nsel, int *selection, // wxWindow *parent = NULL, int x = -1, int y = -1, -// bool centre = True, int width=150, int height=200); +// bool centre = true, int width=150, int height=200); MustHaveApp(wxGetSingleChoice); @@ -164,7 +181,7 @@ wxString wxGetSingleChoice(const wxString& message, const wxString& caption, int choices, wxString* choices_array, wxWindow *parent = NULL, int x = -1, int y = -1, - bool centre = True, + bool centre = true, int width=150, int height=200); MustHaveApp(wxGetSingleChoiceIndex); @@ -172,7 +189,7 @@ int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption, int choices, wxString* choices_array, wxWindow *parent = NULL, int x = -1, int y = -1, - bool centre = True, + bool centre = true, int width=150, int height=200); @@ -183,6 +200,8 @@ int wxMessageBox(const wxString& message, wxWindow *parent = NULL, int x = -1, int y = -1); +// WXWIN_COMPATIBILITY_2_4 +#if 0 MustHaveApp(wxGetNumberFromUser); long wxGetNumberFromUser(const wxString& message, const wxString& prompt, @@ -191,6 +210,8 @@ long wxGetNumberFromUser(const wxString& message, long min = 0, long max = 100, wxWindow *parent = NULL, const wxPoint& pos = wxDefaultPosition); +%pythoncode { GetNumberFromUser = wx._deprecated(GetNumberFromUser) } +#endif // GDI Functions @@ -232,14 +253,50 @@ MustHaveApp(wxSetCursor); void wxSetCursor(wxCursor& cursor); +MustHaveApp(wxGetXDisplay); +DocStr(wxGetXDisplay, +"Returns a swigified pointer to the X11 display. Returns None on +other platforms.", ""); +%inline %{ + void* wxGetXDisplay() + { +#ifdef __WXGTK__ + return wxGetDisplay(); +#else + return NULL; +#endif + } +%} + // Miscellaneous functions MustHaveApp(wxBeginBusyCursor); void wxBeginBusyCursor(wxCursor *cursor = wxHOURGLASS_CURSOR); + +MustHaveApp(wxGetMousePosition); +DocDeclStr( + wxPoint, wxGetMousePosition(), + "Get the current mouse position on the screen.", ""); + +MustHaveApp(FindWindowAtPointer); +DocStr(FindWindowAtPointer, + "Returns the window currently under the mouse pointer, if it belongs to + this application. Otherwise it returns None.", ""); +%inline %{ + wxWindow* FindWindowAtPointer() { + wxPoint unused; + return wxFindWindowAtPointer(unused); + } +%} + + MustHaveApp(wxGetActiveWindow); -wxWindow * wxGetActiveWindow(); +DocDeclStr( + wxWindow *, wxGetActiveWindow(), + "Get the currently active window of this application, or None", ""); + MustHaveApp(wxGenericFindWindowAtPoint); wxWindow* wxGenericFindWindowAtPoint(const wxPoint& pt); @@ -250,8 +307,12 @@ wxWindow* wxFindWindowAtPoint(const wxPoint& pt); MustHaveApp(wxGetTopLevelParent); wxWindow* wxGetTopLevelParent(wxWindow *win); -//bool wxSpawnBrowser(wxWindow *parent, wxString href); +DocDeclStr( + bool , wxLaunchDefaultBrowser(const wxString& url), + "Launches the user's default browser and tells it to open the location +at ``url``. Returns ``True`` if the application was successfully +launched.", ""); @@ -260,11 +321,73 @@ DocDeclStr( bool , wxGetKeyState(wxKeyCode key), "Get the state of a key (true if pressed or toggled on, false if not.) This is generally most useful getting the state of the modifier or -toggle keys. On some platforms those may be the only keys that work. +toggle keys. On some platforms those may be the only keys that this +function is able to detect. ", ""); +//--------------------------------------------------------------------------- + +DocStr(wxMouseState, +"`wx.MouseState` is used to hold information about mouse button and +modifier key states and is what is returned from `wx.GetMouseState`.", +""); + +class wxMouseState +{ +public: + wxMouseState(); + ~wxMouseState(); + + wxCoord GetX(); + wxCoord GetY(); + + bool LeftDown(); + bool MiddleDown(); + bool RightDown(); + + bool ControlDown(); + bool ShiftDown(); + bool AltDown(); + bool MetaDown(); + bool CmdDown(); + + void SetX(wxCoord x); + void SetY(wxCoord y); + + void SetLeftDown(bool down); + void SetMiddleDown(bool down); + void SetRightDown(bool down); + + void SetControlDown(bool down); + void SetShiftDown(bool down); + void SetAltDown(bool down); + void SetMetaDown(bool down); + + %pythoncode { + x = property(GetX, SetX) + y = property(GetY, SetY) + leftDown = property(LeftDown, SetLeftDown) + middleDown = property(MiddleDown, SetMiddleDown) + rightDown = property(RightDown, SetRightDown) + controlDown = property(ControlDown, SetControlDown) + shiftDown = property(ShiftDown, SetShiftDown) + altDown = property(AltDown, SetAltDown) + metaDown = property(MetaDown, SetMetaDown) + cmdDown = property(CmdDown) + } +}; + + +DocDeclStr( + wxMouseState , wxGetMouseState(), + "Returns the current state of the mouse. Returns an instance of a +`wx.MouseState` object that contains the current position of the mouse +pointer in screen coordinants, as well as boolean values indicating +the up/down status of the mouse buttons and the modifier keys.", ""); + + //--------------------------------------------------------------------------- MustHaveApp(wxWakeUpMainThread); @@ -299,10 +422,45 @@ MustHaveApp(wxThread); #ifdef WXP_WITH_THREAD return wxThread::IsMain(); #else - return True; + return true; #endif } %} +//--------------------------------------------------------------------------- + +// enum wxPowerType +// { +// wxPOWER_SOCKET, +// wxPOWER_BATTERY, +// wxPOWER_UNKNOWN +// }; + +// DocDeclStr( +// wxPowerType , wxGetPowerType(), +// "Returns the type of power source as one of wx.POWER_SOCKET, +// wx.POWER_BATTERY or wx.POWER_UNKNOWN. wx.POWER_UNKNOWN is also the +// default on platforms where this feature is not implemented.", ""); + + +// enum wxBatteryState +// { +// wxBATTERY_NORMAL_STATE, // system is fully usable +// wxBATTERY_LOW_STATE, // start to worry +// wxBATTERY_CRITICAL_STATE, // save quickly +// wxBATTERY_SHUTDOWN_STATE, // too late +// wxBATTERY_UNKNOWN_STATE +// }; + +// DocDeclStr( +// wxBatteryState , wxGetBatteryState(), +// "Returns battery state as one of wx.BATTERY_NORMAL_STATE, +// wx.BATTERY_LOW_STATE}, wx.BATTERY_CRITICAL_STATE, +// wx.BATTERY_SHUTDOWN_STATE or wx.BATTERY_UNKNOWN_STATE. +// wx.BATTERY_UNKNOWN_STATE is also the default on platforms where this +// feature is not implemented.", ""); + + + //--------------------------------------------------------------------------- //---------------------------------------------------------------------------