X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a37a5a73c54c0e120f0a35fc02e3ac4b600a42ff..0cbe5ee3a9ec225702cbd7db715cec567b08c06f:/include/wx/utils.h?ds=sidebyside diff --git a/include/wx/utils.h b/include/wx/utils.h index 2eec7b1c11..09094b4877 100644 --- a/include/wx/utils.h +++ b/include/wx/utils.h @@ -40,6 +40,7 @@ class WXDLLEXPORT wxProcess; class WXDLLEXPORT wxFrame; class WXDLLEXPORT wxWindow; class WXDLLEXPORT wxWindowList; +class WXDLLEXPORT wxPoint; // FIXME should use wxStricmp() instead #if defined(__GNUWIN32__) @@ -58,7 +59,7 @@ class WXDLLEXPORT wxWindowList; // String functions (deprecated, use wxString) // ---------------------------------------------------------------------------- -// Useful buffer (FIXME VZ: yeah, that is. To be removed!) +// Useful buffer (FIXME VZ: To be removed!!!) WXDLLEXPORT_DATA(extern wxChar*) wxBuffer; // Make a copy of this string using 'new' @@ -148,7 +149,13 @@ WXDLLEXPORT long wxExecute(const wxString& command, bool sync = FALSE, wxProcess *process = (wxProcess *) NULL); // execute the command capturing its output into an array line by line -WXDLLEXPORT long wxExecute(const wxString& command, wxArrayString& output); +WXDLLEXPORT long wxExecute(const wxString& command, + wxArrayString& output); + +// also capture stderr +WXDLLEXPORT long wxExecute(const wxString& command, + wxArrayString& output, + wxArrayString& error); enum wxSignal { @@ -196,6 +203,20 @@ WXDLLEXPORT long wxGetFreeMemory(); // should wxApp::OnFatalException() be called? WXDLLEXPORT bool wxHandleFatalExceptions(bool doit = TRUE); +// ---------------------------------------------------------------------------- +// Environment variables +// ---------------------------------------------------------------------------- + +// returns TRUE if variable exists (value may be NULL if you just want to check +// for this) +WXDLLEXPORT bool wxGetEnv(const wxString& var, wxString *value); + +// set the env var name to the given value, return TRUE on success +WXDLLEXPORT bool wxSetEnv(const wxString& var, const wxChar *value); + +// remove the env var from environment +inline bool wxUnsetEnv(const wxString& var) { return wxSetEnv(var, NULL); } + // ---------------------------------------------------------------------------- // Network and username functions. // ---------------------------------------------------------------------------- @@ -263,6 +284,11 @@ WXDLLEXPORT wxWindow* wxFindWindowByName(const wxString& name, wxWindow *parent // Returns menu item id or -1 if none. WXDLLEXPORT int wxFindMenuItemId(wxFrame *frame, const wxString& menuString, const wxString& itemString); +// Find the wxWindow at the given point. wxGenericFindWindowAtPoint +// is always present but may be less reliable than a native version. +WXDLLEXPORT wxWindow* wxGenericFindWindowAtPoint(const wxPoint& pt); +WXDLLEXPORT wxWindow* wxFindWindowAtPoint(const wxPoint& pt); + // ---------------------------------------------------------------------------- // Message/event queue helpers // ---------------------------------------------------------------------------- @@ -293,10 +319,6 @@ public: private: wxWindowList *m_winDisabled; - -#ifdef __WXMSW__ - wxWindow *m_winTop; -#endif // MSW }; // ---------------------------------------------------------------------------- @@ -320,25 +342,18 @@ class WXDLLEXPORT wxBusyCursor public: wxBusyCursor(wxCursor* cursor = wxHOURGLASS_CURSOR) { wxBeginBusyCursor(cursor); } - ~wxBusyCursor() + ~wxBusyCursor() { wxEndBusyCursor(); } -}; - -// ---------------------------------------------------------------------------- -// Error message functions used by wxWindows (deprecated, use wxLog) -// ---------------------------------------------------------------------------- -// Format a message on the standard error (UNIX) or the debugging -// stream (Windows) -WXDLLEXPORT void wxDebugMsg(const wxChar *fmt ...); - -// Non-fatal error (continues) -WXDLLEXPORT_DATA(extern const wxChar*) wxInternalErrorStr; -WXDLLEXPORT void wxError(const wxString& msg, const wxString& title = wxInternalErrorStr); + // FIXME: These two methods are currently only implemented (and needed?) + // in wxGTK. BusyCursor handling should probably be moved to + // common code since the wxGTK and wxMSW implementations are very + // similar except for wxMSW using HCURSOR directly instead of + // wxCursor.. -- RL. + static const wxCursor &GetStoredCursor(); + static const wxCursor GetBusyCursor(); +}; -// Fatal error (exits) -WXDLLEXPORT_DATA(extern const wxChar*) wxFatalErrorStr; -WXDLLEXPORT void wxFatalError(const wxString& msg, const wxString& title = wxFatalErrorStr); // ---------------------------------------------------------------------------- // Reading and writing resources (eg WIN.INI, .Xdefaults) @@ -418,5 +433,22 @@ void wxAllocColor(Display *display,Colormap colormap,XColor *xcolor); #endif // wxUSE_GUI +// ---------------------------------------------------------------------------- +// Error message functions used by wxWindows (deprecated, use wxLog) +// ---------------------------------------------------------------------------- + +// Format a message on the standard error (UNIX) or the debugging +// stream (Windows) +WXDLLEXPORT void wxDebugMsg(const wxChar *fmt ...); + +// Non-fatal error (continues) +WXDLLEXPORT_DATA(extern const wxChar*) wxInternalErrorStr; +WXDLLEXPORT void wxError(const wxString& msg, const wxString& title = wxInternalErrorStr); + +// Fatal error (exits) +WXDLLEXPORT_DATA(extern const wxChar*) wxFatalErrorStr; +WXDLLEXPORT void wxFatalError(const wxString& msg, const wxString& title = wxFatalErrorStr); + + #endif // _WX_UTILSH__