operator long() const { return GetInteger(); }
operator double() const { return GetDouble(); }
operator const wxString&() const { return GetString(); }
- operator const wxChar*() const { return (const wxChar*) GetString(); }
static void AddPlatform(int platform);
static bool Is(int platform);
// Returns the current state of the mouse position, buttons and modifers
WXDLLEXPORT wxMouseState wxGetMouseState();
+#endif // wxUSE_GUI
// ----------------------------------------------------------------------------
// Window ID management
// ----------------------------------------------------------------------------
-// Generate a unique ID
-WXDLLEXPORT long wxNewId();
-
// Ensure subsequent IDs don't clash with this one
-WXDLLEXPORT void wxRegisterId(long id);
+WXDLLIMPEXP_BASE void wxRegisterId(long id);
// Return the current ID
-WXDLLEXPORT long wxGetCurrentId();
+WXDLLIMPEXP_BASE long wxGetCurrentId();
-#endif // wxUSE_GUI
+// Generate a unique ID
+WXDLLIMPEXP_BASE long wxNewId();
// ----------------------------------------------------------------------------
// Various conversions
// Convert decimal integer to 2-character hex string
WXDLLIMPEXP_BASE void wxDecToHex(int dec, wxChar *buf);
+WXDLLIMPEXP_BASE void wxDecToHex(int dec, char* ch1, char* ch2);
WXDLLIMPEXP_BASE wxString wxDecToHex(int dec);
// ----------------------------------------------------------------------------
// by default synchronous execution disables all program windows to avoid
// that the user interacts with the program while the child process is
// running, you can use this flag to prevent this from happening
- wxEXEC_NODISABLE = 8
+ wxEXEC_NODISABLE = 8,
+
+ // by default, the event loop is run while waiting for synchronous execution
+ // to complete and this flag can be used to simply block the main process
+ // until the child process finishes
+ wxEXEC_NOEVENTS = 16,
+
+ // convenient synonym for flags given system()-like behaviour
+ wxEXEC_BLOCK = wxEXEC_SYNC | wxEXEC_NOEVENTS
};
// Execute another program.
#endif // wxUSE_ON_FATAL_EXCEPTION
-// flags for wxLaunchDefaultBrowser
-enum
-{
- wxBROWSER_NEW_WINDOW = 1
-};
-
-// Launch url in the user's default internet browser
-WXDLLIMPEXP_BASE bool wxLaunchDefaultBrowser(const wxString& url, int flags = 0);
-
// ----------------------------------------------------------------------------
// Environment variables
// ----------------------------------------------------------------------------
WXDLLIMPEXP_BASE bool wxGetEnv(const wxString& var, wxString *value);
// set the env var name to the given value, return true on success
-WXDLLIMPEXP_BASE bool wxSetEnv(const wxString& var, const wxChar *value);
+WXDLLIMPEXP_BASE bool wxSetEnv(const wxString& var, const wxString& value);
// remove the env var from environment
-inline bool wxUnsetEnv(const wxString& var) { return wxSetEnv(var, NULL); }
+WXDLLIMPEXP_BASE bool wxUnsetEnv(const wxString& var);
+
+#if WXWIN_COMPATIBILITY_2_8
+inline bool wxSetEnv(const wxString& var, const char *value)
+ { return wxSetEnv(var, wxString(value)); }
+inline bool wxSetEnv(const wxString& var, const wchar_t *value)
+ { return wxSetEnv(var, wxString(value)); }
+template<typename T>
+inline bool wxSetEnv(const wxString& var, const wxCharTypeBuffer<T>& value)
+ { return wxSetEnv(var, wxString(value)); }
+inline bool wxSetEnv(const wxString& var, const wxCStrData& value)
+ { return wxSetEnv(var, wxString(value)); }
+
+// this one is for passing NULL directly - don't use it, use wxUnsetEnv instead
+wxDEPRECATED( inline bool wxSetEnv(const wxString& var, int value) );
+inline bool wxSetEnv(const wxString& var, int value)
+{
+ wxASSERT_MSG( value == 0, "using non-NULL integer as string?" );
+ return wxUnsetEnv(var);
+}
+#endif // WXWIN_COMPATIBILITY_2_8
// ----------------------------------------------------------------------------
// Network and username functions.
#if wxUSE_GUI // GUI only things from now on
+// ----------------------------------------------------------------------------
+// Launch default browser
+// ----------------------------------------------------------------------------
+
+// flags for wxLaunchDefaultBrowser
+enum
+{
+ wxBROWSER_NEW_WINDOW = 1
+};
+
+// Launch url in the user's default internet browser
+WXDLLIMPEXP_CORE bool wxLaunchDefaultBrowser(const wxString& url, int flags = 0);
+
// ----------------------------------------------------------------------------
// Menu accelerators related things
// ----------------------------------------------------------------------------
static const wxCursor GetBusyCursor();
};
-
-// ----------------------------------------------------------------------------
-// Reading and writing resources (eg WIN.INI, .Xdefaults)
-// ----------------------------------------------------------------------------
-
-#if wxUSE_RESOURCES
-WXDLLEXPORT bool wxWriteResource(const wxString& section, const wxString& entry, const wxString& value, const wxString& file = wxEmptyString);
-WXDLLEXPORT bool wxWriteResource(const wxString& section, const wxString& entry, float value, const wxString& file = wxEmptyString);
-WXDLLEXPORT bool wxWriteResource(const wxString& section, const wxString& entry, long value, const wxString& file = wxEmptyString);
-WXDLLEXPORT bool wxWriteResource(const wxString& section, const wxString& entry, int value, const wxString& file = wxEmptyString);
-
-WXDLLEXPORT bool wxGetResource(const wxString& section, const wxString& entry, wxChar **value, const wxString& file = wxEmptyString);
-WXDLLEXPORT bool wxGetResource(const wxString& section, const wxString& entry, float *value, const wxString& file = wxEmptyString);
-WXDLLEXPORT bool wxGetResource(const wxString& section, const wxString& entry, long *value, const wxString& file = wxEmptyString);
-WXDLLEXPORT bool wxGetResource(const wxString& section, const wxString& entry, int *value, const wxString& file = wxEmptyString);
-#endif // wxUSE_RESOURCES
-
void WXDLLEXPORT wxGetMousePosition( int* x, int* y );
// MSW only: get user-defined resource from the .res file.
#endif // MSW
// ----------------------------------------------------------------------------
-// Display and colorss (X only)
+// X11 Display access
// ----------------------------------------------------------------------------
+#if defined(__X__) || defined(__WXGTK__)
+
#ifdef __WXGTK__
void *wxGetDisplay();
#endif
WXDLLIMPEXP_CORE wxString wxGetDisplayName();
#endif // X or GTK+
-#ifdef __X__
-
-#ifdef __VMS__ // Xlib.h for VMS is not (yet) compatible with C++
- // The resulting warnings are switched off here
-#pragma message disable nosimpint
-#endif
-// #include <X11/Xlib.h>
-#ifdef __VMS__
-#pragma message enable nosimpint
-#endif
+// use this function instead of the functions above in implementation code
+inline struct _XDisplay *wxGetX11Display()
+{
+ return (_XDisplay *)wxGetDisplay();
+}
-#endif //__X__
+#endif // X11 || wxGTK
#endif // wxUSE_GUI