header changes for the fixes commited previously
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -12,8 +12,12 @@
|
||||
#ifndef _WX_UTILSH__
|
||||
#define _WX_UTILSH__
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "utils.h"
|
||||
#pragma interface "utils.h"
|
||||
#endif
|
||||
|
||||
#include "wx/setup.h"
|
||||
@@ -24,54 +28,88 @@
|
||||
|
||||
#include "wx/ioswrap.h"
|
||||
|
||||
class WXDLLEXPORT wxProcess;
|
||||
|
||||
#ifdef __X__
|
||||
#ifndef __VMS__
|
||||
/*steve: these two are not known under VMS */
|
||||
#include <dirent.h>
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
#include <dirent.h>
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#ifdef __GNUWIN32__
|
||||
#define stricmp strcasecmp
|
||||
#define strnicmp strncasecmp
|
||||
#endif
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Forward declaration
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class WXDLLEXPORT wxProcess;
|
||||
class WXDLLEXPORT wxFrame;
|
||||
|
||||
// Stupid ASCII macros
|
||||
#define wxToUpper(C) (((C) >= 'a' && (C) <= 'z')? (C) - 'a' + 'A': (C))
|
||||
#define wxToLower(C) (((C) >= 'A' && (C) <= 'Z')? (C) - 'A' + 'a': (C))
|
||||
// FIXME should use wxStricmp() instead
|
||||
#ifdef __GNUWIN32__
|
||||
#define stricmp strcasecmp
|
||||
#define strnicmp strncasecmp
|
||||
#endif
|
||||
|
||||
// Return a string with the current date/time
|
||||
WXDLLEXPORT wxString wxNow();
|
||||
// ----------------------------------------------------------------------------
|
||||
// Macros
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
#define wxMax(a,b) (((a) > (b)) ? (a) : (b))
|
||||
#define wxMin(a,b) (((a) < (b)) ? (a) : (b))
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// String functions (deprecated, use wxString)
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Useful buffer (FIXME VZ: yeah, that is. To be removed!)
|
||||
WXDLLEXPORT_DATA(extern char*) wxBuffer;
|
||||
|
||||
// Make a copy of this string using 'new'
|
||||
WXDLLEXPORT char* copystring(const char *s);
|
||||
|
||||
// Matches string one within string two regardless of case
|
||||
WXDLLEXPORT bool StringMatch(char *one, char *two, bool subString = TRUE, bool exact = FALSE);
|
||||
|
||||
// A shorter way of using strcmp
|
||||
#define wxStringEq(s1, s2) (s1 && s2 && (strcmp(s1, s2) == 0))
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Miscellaneous functions
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Sound the bell
|
||||
WXDLLEXPORT void wxBell(void) ;
|
||||
|
||||
// Get OS version
|
||||
WXDLLEXPORT int wxGetOsVersion(int *majorVsn= (int *) NULL,int *minorVsn= (int *) NULL) ;
|
||||
|
||||
// Return a string with the current date/time
|
||||
WXDLLEXPORT wxString wxNow();
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Window ID management
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Generate a unique ID
|
||||
WXDLLEXPORT long wxNewId();
|
||||
#define NewId wxNewId
|
||||
#if !defined(NewId) && defined(WXWIN_COMPATIBILITY)
|
||||
#define NewId wxNewId
|
||||
#endif
|
||||
|
||||
// Ensure subsequent IDs don't clash with this one
|
||||
WXDLLEXPORT void wxRegisterId(long id);
|
||||
#define RegisterId wxRegisterId
|
||||
#if !defined(RegisterId) && defined(WXWIN_COMPATIBILITY)
|
||||
#define RegisterId wxRegisterId
|
||||
#endif
|
||||
|
||||
// Return the current ID
|
||||
WXDLLEXPORT long wxGetCurrentId();
|
||||
|
||||
// Useful buffer
|
||||
WXDLLEXPORT_DATA(extern char*) wxBuffer;
|
||||
// ----------------------------------------------------------------------------
|
||||
// Various conversions
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
WXDLLEXPORT_DATA(extern const char*) wxFloatToStringStr;
|
||||
WXDLLEXPORT_DATA(extern const char*) wxDoubleToStringStr;
|
||||
|
||||
// Various conversions
|
||||
WXDLLEXPORT void StringToFloat(char *s, float *number);
|
||||
WXDLLEXPORT char* FloatToString(float number, const char *fmt = wxFloatToStringStr);
|
||||
WXDLLEXPORT void StringToDouble(char *s, double *number);
|
||||
@@ -81,12 +119,6 @@ WXDLLEXPORT void StringToLong(char *s, long *number);
|
||||
WXDLLEXPORT char* IntToString(int number);
|
||||
WXDLLEXPORT char* LongToString(long number);
|
||||
|
||||
// Matches string one within string two regardless of case
|
||||
WXDLLEXPORT bool StringMatch(char *one, char *two, bool subString = TRUE, bool exact = FALSE);
|
||||
|
||||
// A shorter way of using strcmp
|
||||
#define wxStringEq(s1, s2) (s1 && s2 && (strcmp(s1, s2) == 0))
|
||||
|
||||
// Convert 2-digit hex number to decimal
|
||||
WXDLLEXPORT int wxHexToDec(const wxString& buf);
|
||||
|
||||
@@ -94,15 +126,41 @@ WXDLLEXPORT int wxHexToDec(const wxString& buf);
|
||||
WXDLLEXPORT void wxDecToHex(int dec, char *buf);
|
||||
WXDLLEXPORT wxString wxDecToHex(int dec);
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Process management
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Execute another program. Returns 0 if there was an error, a PID otherwise.
|
||||
WXDLLEXPORT long wxExecute(char **argv, bool sync = FALSE,
|
||||
wxProcess *process = (wxProcess *) NULL);
|
||||
WXDLLEXPORT long wxExecute(const wxString& command, bool sync = FALSE,
|
||||
wxProcess *process = (wxProcess *) NULL);
|
||||
|
||||
#define wxSIGTERM 1
|
||||
enum wxSignal
|
||||
{
|
||||
wxSIGNONE = 0, // verify if the process exists under Unix
|
||||
wxSIGHUP,
|
||||
wxSIGINT,
|
||||
wxSIGQUIT,
|
||||
wxSIGILL,
|
||||
wxSIGTRAP,
|
||||
wxSIGABRT,
|
||||
wxSIGIOT = wxSIGABRT, // another name
|
||||
wxSIGEMT,
|
||||
wxSIGFPE,
|
||||
wxSIGKILL,
|
||||
wxSIGBUS,
|
||||
wxSIGSEGV,
|
||||
wxSIGSYS,
|
||||
wxSIGPIPE,
|
||||
wxSIGALRM,
|
||||
wxSIGTERM
|
||||
|
||||
WXDLLEXPORT int wxKill(long pid, int sig=wxSIGTERM);
|
||||
// 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);
|
||||
|
||||
// Execute a command in an interactive shell window
|
||||
// If no command then just the shell
|
||||
@@ -117,35 +175,49 @@ WXDLLEXPORT void wxUsleep(unsigned long milliseconds);
|
||||
// Get free memory in bytes, or -1 if cannot determine amount (e.g. on UNIX)
|
||||
WXDLLEXPORT long wxGetFreeMemory();
|
||||
|
||||
// Consume all events until no more left
|
||||
WXDLLEXPORT void wxFlushEvents();
|
||||
// ----------------------------------------------------------------------------
|
||||
// Network and username functions.
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
/*
|
||||
* Network and username functions.
|
||||
*
|
||||
*/
|
||||
// NB: "char *" functions are deprecated, use wxString ones!
|
||||
|
||||
// Get eMail address
|
||||
WXDLLEXPORT bool wxGetEmailAddress(char *buf, int maxSize);
|
||||
WXDLLEXPORT wxString wxGetEmailAddress();
|
||||
|
||||
// Get hostname.
|
||||
WXDLLEXPORT bool wxGetHostName(char *buf, int maxSize);
|
||||
WXDLLEXPORT bool wxGetHostName(wxString& buf);
|
||||
WXDLLEXPORT wxString wxGetHostName();
|
||||
|
||||
// Get user ID e.g. jacs
|
||||
// Get FQDN
|
||||
WXDLLEXPORT wxString wxGetFullHostName();
|
||||
|
||||
// Get user ID e.g. jacs (this is known as login name under Unix)
|
||||
WXDLLEXPORT bool wxGetUserId(char *buf, int maxSize);
|
||||
WXDLLEXPORT bool wxGetUserId(wxString& buf);
|
||||
WXDLLEXPORT wxString wxGetUserId();
|
||||
|
||||
// Get user name e.g. Julian Smart
|
||||
WXDLLEXPORT bool wxGetUserName(char *buf, int maxSize);
|
||||
WXDLLEXPORT bool wxGetUserName(wxString& buf);
|
||||
WXDLLEXPORT wxString wxGetUserName();
|
||||
|
||||
// Get current Home dir and copy to dest (returns pstr->c_str())
|
||||
WXDLLEXPORT const char* wxGetHomeDir(wxString *pstr);
|
||||
|
||||
// Get the user's home dir (caller must copy --- volatile)
|
||||
// returns NULL is no HOME dir is known
|
||||
WXDLLEXPORT char* wxGetUserHome(const wxString& user = wxEmptyString);
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Strip out any menu codes
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
/*
|
||||
* Strip out any menu codes
|
||||
*/
|
||||
WXDLLEXPORT char* wxStripMenuCodes(char *in, char *out = (char *) NULL);
|
||||
WXDLLEXPORT wxString wxStripMenuCodes(const wxString& str);
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// 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.
|
||||
@@ -157,16 +229,9 @@ 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);
|
||||
|
||||
/*
|
||||
#if (!defined(__MINMAX_DEFINED) && !defined(max))
|
||||
#define max(a,b) (((a) > (b)) ? (a) : (b))
|
||||
#define min(a,b) (((a) < (b)) ? (a) : (b))
|
||||
#define __MINMAX_DEFINED 1
|
||||
#endif
|
||||
*/
|
||||
|
||||
#define wxMax(a,b) (((a) > (b)) ? (a) : (b))
|
||||
#define wxMin(a,b) (((a) < (b)) ? (a) : (b))
|
||||
// ----------------------------------------------------------------------------
|
||||
// Message/event queue helpers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Yield to other apps/messages
|
||||
WXDLLEXPORT bool wxYield();
|
||||
@@ -174,15 +239,16 @@ WXDLLEXPORT bool wxYield();
|
||||
// Yield to other apps/messages and disable user input
|
||||
WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL);
|
||||
|
||||
// Format a message on the standard error (UNIX) or the debugging
|
||||
// stream (Windows)
|
||||
WXDLLEXPORT void wxDebugMsg(const char *fmt ...) ;
|
||||
|
||||
// Sound the bell
|
||||
WXDLLEXPORT void wxBell(void) ;
|
||||
|
||||
// Get OS version
|
||||
WXDLLEXPORT int wxGetOsVersion(int *majorVsn= (int *) NULL,int *minorVsn= (int *) NULL) ;
|
||||
// Check whether this window wants to process messages, e.g. Stop button
|
||||
// in long calculations.
|
||||
WXDLLEXPORT bool wxCheckForInterrupt(wxWindow *wnd);
|
||||
|
||||
// Consume all events until no more left
|
||||
WXDLLEXPORT void wxFlushEvents();
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Cursors
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// Set the cursor to the busy cursor for all windows
|
||||
class WXDLLEXPORT wxCursor;
|
||||
@@ -191,7 +257,7 @@ WXDLLEXPORT void wxBeginBusyCursor(wxCursor *cursor = wxHOURGLASS_CURSOR);
|
||||
|
||||
// Restore cursor to normal
|
||||
WXDLLEXPORT void wxEndBusyCursor();
|
||||
|
||||
|
||||
// TRUE if we're between the above two calls
|
||||
WXDLLEXPORT bool wxIsBusy();
|
||||
|
||||
@@ -205,7 +271,13 @@ public:
|
||||
{ wxEndBusyCursor(); }
|
||||
};
|
||||
|
||||
// Error message functions used by wxWindows
|
||||
// ----------------------------------------------------------------------------
|
||||
// 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 char *fmt ...) ;
|
||||
|
||||
// Non-fatal error (continues)
|
||||
WXDLLEXPORT_DATA(extern const char*) wxInternalErrorStr;
|
||||
@@ -215,7 +287,10 @@ WXDLLEXPORT void wxError(const wxString& msg, const wxString& title = wxInternal
|
||||
WXDLLEXPORT_DATA(extern const char*) wxFatalErrorStr;
|
||||
WXDLLEXPORT void wxFatalError(const wxString& msg, const wxString& title = wxFatalErrorStr);
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// 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);
|
||||
@@ -228,17 +303,6 @@ WXDLLEXPORT bool wxGetResource(const wxString& section, const wxString& entry, l
|
||||
WXDLLEXPORT bool wxGetResource(const wxString& section, const wxString& entry, int *value, const wxString& file = wxEmptyString);
|
||||
#endif // wxUSE_RESOURCES
|
||||
|
||||
// Get current Home dir and copy to dest (returns pstr->c_str())
|
||||
WXDLLEXPORT const char* wxGetHomeDir(wxString *pstr);
|
||||
|
||||
// Get the user's home dir (caller must copy--- volatile)
|
||||
// returns NULL is no HOME dir is known
|
||||
WXDLLEXPORT char* wxGetUserHome(const wxString& user = wxEmptyString);
|
||||
|
||||
// Check whether this window wants to process messages, e.g. Stop button
|
||||
// in long calculations.
|
||||
WXDLLEXPORT bool wxCheckForInterrupt(wxWindow *wnd);
|
||||
|
||||
void WXDLLEXPORT wxGetMousePosition( int* x, int* y );
|
||||
|
||||
// MSW only: get user-defined resource from the .res file.
|
||||
@@ -251,13 +315,16 @@ WXDLLEXPORT char* wxLoadUserResource(const wxString& resourceName, const wxStrin
|
||||
// input/output
|
||||
WXDLLEXPORT void wxRedirectIOToConsole();
|
||||
|
||||
#endif
|
||||
#endif // MSW
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// Display and colorss (X only)
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// X only
|
||||
#ifdef __X__
|
||||
WXDisplay *wxGetDisplay();
|
||||
bool wxSetDisplay(const wxString& display_name);
|
||||
wxString wxGetDisplayName();
|
||||
WXDisplay *wxGetDisplay();
|
||||
bool wxSetDisplay(const wxString& display_name);
|
||||
wxString wxGetDisplayName();
|
||||
#endif
|
||||
|
||||
#ifdef __X__
|
||||
@@ -274,13 +341,10 @@ wxString wxGetDisplayName();
|
||||
typedef struct wx_hsv {
|
||||
int h,s,v;
|
||||
} wxHSV;
|
||||
|
||||
|
||||
#define wxMax3(x,y,z) ((x > y) ? ((x > z) ? x : z) : ((y > z) ? y : z))
|
||||
#define wxMin3(x,y,z) ((x < y) ? ((x < z) ? x : z) : ((y < z) ? y : z))
|
||||
|
||||
#define wxMax2(x,y) ((x > y) ? x : y)
|
||||
#define wxMin2(x,y) ((x < y) ? x : y)
|
||||
|
||||
void wxHSVToXColor(wxHSV *hsv,XColor *xcolor);
|
||||
void wxXColorToHSV(wxHSV *hsv,XColor *xcolor);
|
||||
void wxAllocNearestColor(Display *display,Colormap colormap,XColor *xcolor);
|
||||
|
Reference in New Issue
Block a user