X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/32e163aec19e1668699cbcd815629c8c98a3bc25..d894c201132341a31790bba39a0c33d03d71aeb8:/include/wx/utils.h diff --git a/include/wx/utils.h b/include/wx/utils.h index 9bca5317cb..87eb8c7e54 100644 --- a/include/wx/utils.h +++ b/include/wx/utils.h @@ -16,7 +16,7 @@ // headers // ---------------------------------------------------------------------------- -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "utils.h" #endif @@ -57,16 +57,18 @@ class WXDLLEXPORT wxPoint; // ---------------------------------------------------------------------------- // Useful buffer (FIXME VZ: To be removed!!!) -// Now only needed in Mac and MSW ports -#if !defined(__WXMOTIF__) && !defined(__WXGTK__) && !defined(__WXX11__) && !defined(__WXMGL__) +// Now only needed in MSW port +#if !defined(__WXMOTIF__) && !defined(__WXGTK__) && !defined(__WXX11__) && !defined(__WXMGL__) && !defined(__WXMAC__) WXDLLEXPORT_DATA(extern wxChar*) wxBuffer; #endif // Make a copy of this string using 'new' WXDLLEXPORT wxChar* copystring(const wxChar *s); +#if WXWIN_COMPATIBILITY_2 // Matches string one within string two regardless of case WXDLLEXPORT bool StringMatch(const wxChar *one, const wxChar *two, bool subString = TRUE, bool exact = FALSE); +#endif // A shorter way of using strcmp #define wxStringEq(s1, s2) (s1 && s2 && (wxStrcmp(s1, s2) == 0)) @@ -173,7 +175,7 @@ enum // If flags contain wxEXEC_SYNC, return -1 on failure and the exit code of the // process if everything was ok. Otherwise (i.e. if wxEXEC_ASYNC), return 0 on // failure and the PID of the launched process if ok. -WXDLLEXPORT long wxExecute(char **argv, int flags = wxEXEC_ASYNC, +WXDLLEXPORT long wxExecute(wxChar **argv, int flags = wxEXEC_ASYNC, wxProcess *process = (wxProcess *) NULL); WXDLLEXPORT long wxExecute(const wxString& command, int flags = wxEXEC_ASYNC, wxProcess *process = (wxProcess *) NULL); @@ -220,6 +222,15 @@ enum wxKillError wxKILL_ERROR // another, unspecified error }; +enum wxShutdownFlags +{ + wxSHUTDOWN_POWEROFF, // power off the computer + wxSHUTDOWN_REBOOT // shutdown and reboot +}; + +// Shutdown or reboot the PC +WXDLLEXPORT bool wxShutdown(wxShutdownFlags wFlags); + // send the given signal to the process (only NONE and KILL are supported under // Windows, all others mean TERM), return 0 if ok and -1 on error // @@ -242,6 +253,9 @@ WXDLLEXPORT void wxSleep(int nSecs); // Sleep for a given amount of milliseconds WXDLLEXPORT void wxUsleep(unsigned long milliseconds); +// Get the process id of the current process +WXDLLEXPORT unsigned long wxGetProcessId(); + // Get free memory in bytes, or -1 if cannot determine amount (e.g. on UNIX) WXDLLEXPORT long wxGetFreeMemory(); @@ -323,14 +337,6 @@ WXDLLEXPORT wxAcceleratorEntry *wxGetAccelFromString(const wxString& label); // Window search // ---------------------------------------------------------------------------- -// Find the window/widget with the given title or label. -// Pass a parent to begin the search from, or NULL to look through -// all windows. -WXDLLEXPORT wxWindow* wxFindWindowByLabel(const wxString& title, wxWindow *parent = (wxWindow *) NULL); - -// Find window by name, and if that fails, by label. -WXDLLEXPORT wxWindow* wxFindWindowByName(const wxString& name, wxWindow *parent = (wxWindow *) NULL); - // Returns menu item id or -1 if none. WXDLLEXPORT int wxFindMenuItemId(wxFrame *frame, const wxString& menuString, const wxString& itemString); @@ -339,10 +345,24 @@ WXDLLEXPORT int wxFindMenuItemId(wxFrame *frame, const wxString& menuString, con WXDLLEXPORT wxWindow* wxGenericFindWindowAtPoint(const wxPoint& pt); WXDLLEXPORT wxWindow* wxFindWindowAtPoint(const wxPoint& pt); +// NB: this function is obsolete, use wxWindow::FindWindowByLabel() instead +// +// Find the window/widget with the given title or label. +// Pass a parent to begin the search from, or NULL to look through +// all windows. +WXDLLEXPORT wxWindow* wxFindWindowByLabel(const wxString& title, wxWindow *parent = (wxWindow *) NULL); + +// NB: this function is obsolete, use wxWindow::FindWindowByName() instead +// +// Find window by name, and if that fails, by label. +WXDLLEXPORT wxWindow* wxFindWindowByName(const wxString& name, wxWindow *parent = (wxWindow *) NULL); + // ---------------------------------------------------------------------------- // Message/event queue helpers // ---------------------------------------------------------------------------- +// NB: these functions are obsolete, please use wxApp methods instead! + // Yield to other apps/messages WXDLLEXPORT bool wxYield(); @@ -350,7 +370,7 @@ WXDLLEXPORT bool wxYield(); WXDLLEXPORT bool wxYieldIfNeeded(); // Yield to other apps/messages and disable user input -WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL); +WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL, bool onlyIfNeeded = FALSE); // Enable or disable input to all top level windows WXDLLEXPORT void wxEnableTopLevelWindows(bool enable = TRUE); @@ -372,6 +392,8 @@ public: private: wxWindowList *m_winDisabled; + + DECLARE_NO_COPY_CLASS(wxWindowDisabler) }; // ---------------------------------------------------------------------------- @@ -470,7 +492,7 @@ void WXDLLEXPORT wxGetMousePosition( int* x, int* y ); // Format a message on the standard error (UNIX) or the debugging // stream (Windows) -WXDLLEXPORT void wxDebugMsg(const wxChar *fmt ...); +WXDLLEXPORT void wxDebugMsg(const wxChar *fmt ...) ATTRIBUTE_PRINTF_1; // Non-fatal error (continues) WXDLLEXPORT_DATA(extern const wxChar*) wxInternalErrorStr;