]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/utils.h
Applied patch for wxComboBox and wxListBox to
[wxWidgets.git] / include / wx / utils.h
index abb225b1eae35cf1684de46d26c21cde01cb903e..601f3cedbb358629b4652e6e45687c29def1e6dd 100644 (file)
@@ -42,12 +42,6 @@ class WXDLLEXPORT wxWindow;
 class WXDLLEXPORT wxWindowList;
 class WXDLLEXPORT wxPoint;
 
 class WXDLLEXPORT wxWindowList;
 class WXDLLEXPORT wxPoint;
 
-// FIXME should use wxStricmp() instead
-#if defined(__GNUWIN32__)
-    #define stricmp strcasecmp
-    #define strnicmp strncasecmp
-#endif
-
 // ----------------------------------------------------------------------------
 // Macros
 // ----------------------------------------------------------------------------
 // ----------------------------------------------------------------------------
 // Macros
 // ----------------------------------------------------------------------------
@@ -180,8 +174,22 @@ enum wxSignal
     // further signals are different in meaning between different Unix systems
 };
 
     // further signals are different in meaning between different Unix systems
 };
 
-// the argument is ignored under Windows - the process is always killed
-WXDLLEXPORT int wxKill(long pid, wxSignal sig = wxSIGTERM);
+enum wxKillError
+{
+    wxKILL_OK,              // no error
+    wxKILL_BAD_SIGNAL,      // no such signal
+    wxKILL_ACCESS_DENIED,   // permission denied
+    wxKILL_NO_PROCESS,      // no such process
+    wxKILL_ERROR            // another, unspecified error
+};
+
+// 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
+//
+// return detailed error in rc if not NULL
+WXDLLEXPORT int wxKill(long pid,
+                       wxSignal sig = wxSIGTERM,
+                       wxKillError *rc = NULL);
 
 // Execute a command in an interactive shell window (always synchronously)
 // If no command then just the shell
 
 // Execute a command in an interactive shell window (always synchronously)
 // If no command then just the shell
@@ -207,9 +215,9 @@ WXDLLEXPORT bool wxHandleFatalExceptions(bool doit = TRUE);
 // Environment variables
 // ----------------------------------------------------------------------------
 
 // Environment variables
 // ----------------------------------------------------------------------------
 
-// wxGetenv is declared in wxchar.h, but define a wrapper/synonym for it for
-// consistency with wxSetEnv
-inline const wxChar *wxGetEnv(const wxString& var) { return wxGetenv(var); }
+// 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);
 
 // set the env var name to the given value, return TRUE on success
 WXDLLEXPORT bool wxSetEnv(const wxString& var, const wxChar *value);
@@ -255,6 +263,12 @@ WXDLLEXPORT const wxMB2WXbuf wxGetUserHome(const wxString& user = wxEmptyString)
 WXDLLEXPORT wxChar* wxGetUserHome(const wxString& user = wxEmptyString);
 #endif
 
 WXDLLEXPORT wxChar* wxGetUserHome(const wxString& user = wxEmptyString);
 #endif
 
+#ifdef __WXMAC__
+WXDLLEXPORT wxString wxMacFindFolder(short                                     vRefNum,
+                                                                OSType                                 folderType,
+                                                                Boolean                                createFolder);
+#endif
+
 #if wxUSE_GUI // GUI only things from now on
 
 // ----------------------------------------------------------------------------
 #if wxUSE_GUI // GUI only things from now on
 
 // ----------------------------------------------------------------------------
@@ -296,6 +310,9 @@ WXDLLEXPORT wxWindow* wxFindWindowAtPoint(const wxPoint& pt);
 // Yield to other apps/messages
 WXDLLEXPORT bool wxYield();
 
 // Yield to other apps/messages
 WXDLLEXPORT bool wxYield();
 
+// Like wxYield, but fails silently if the yield is recursive.
+WXDLLEXPORT bool wxYieldIfNeeded();
+
 // Yield to other apps/messages and disable user input
 WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL);
 
 // Yield to other apps/messages and disable user input
 WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL);