/*
Split path into parts removing '..' in progress
*/
-extern void wxSplitPath(wxArrayString& aParts, const char *sz);
+extern void wxSplitPath(wxArrayString& aParts, const wxChar *sz);
// ----------------------------------------------------------------------------
// abstract base class wxConfigBase which defines the interface for derived
protected:
// Last n files
- char** m_fileHistory;
+ wxChar** m_fileHistory;
// Number of files saved
int m_fileHistoryN;
// Menus to maintain (may need several for an MDI app)
void Remove(size_t uiIndex) { wxBaseArray::Remove(uiIndex); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
- wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
- "removing inexisting element in wxArray::Remove" ); \
- wxBaseArray::Remove((size_t)iIndex); } \
+ wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
+ _T("removing inexisting element in wxArray::Remove") ); \
+ wxBaseArray::Remove((size_t)iIndex); } \
\
void Sort(CMPFUNC##T fCmp) { wxBaseArray::Sort((CMPFUNC)fCmp); } \
}
void Remove(size_t uiIndex) { wxBaseArray::Remove(uiIndex); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
- wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
- "removing inexisting element in wxArray::Remove" ); \
+ wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
+ _T("removing inexisting element in wxArray::Remove") ); \
wxBaseArray::Remove((size_t)iIndex); } \
\
private: \
{
// GetVeto() will return FALSE anyhow...
wxCHECK_RET( m_canVeto,
- "call to Veto() ignored (can't veto this event)" );
+ _T("call to Veto() ignored (can't veto this event)") );
m_veto = veto;
}
// static functions
// ----------------
// check whether a regular file by this name exists
- static bool Exists(const char *name);
+ static bool Exists(const wxChar *name);
// check whetther we can access the given file in given mode
// (only read and write make sense here)
- static bool Access(const char *name, OpenMode mode);
+ static bool Access(const wxChar *name, OpenMode mode);
// ctors
// -----
// def ctor
wxFile() { m_fd = fd_invalid; }
// open specified file (may fail, use IsOpened())
- wxFile(const char *szFileName, OpenMode mode = read);
+ wxFile(const wxChar *szFileName, OpenMode mode = read);
// attach to (already opened) file
wxFile(int fd) { m_fd = fd; }
// open/close
// create a new file (with the default value of bOverwrite, it will fail if
// the file already exists, otherwise it will overwrite it and succeed)
- bool Create(const char *szFileName, bool bOverwrite = FALSE,
+ bool Create(const wxChar *szFileName, bool bOverwrite = FALSE,
int access = wxS_DEFAULT);
- bool Open(const char *szFileName, OpenMode mode = read,
+ bool Open(const wxChar *szFileName, OpenMode mode = read,
int access = wxS_DEFAULT);
bool Close(); // Close is a NOP if not opened
// returns true on success
size_t Write(const void *pBuf, size_t nCount);
// returns true on success
- bool Write(const wxString& s) { return Write(s.c_str(), s.Len()) != 0; }
+ bool Write(const wxString& s) { return Write(s.c_str(), s.Len()*sizeof(wxChar)) != 0; }
// flush data not yet written
bool Flush();
//
// where file is the basename of szFile, ext is it's extension
// or .conf (Unix) or .ini (Win) if it has none
- static wxString GetGlobalFileName(const char *szFile);
- static wxString GetLocalFileName(const char *szFile);
+ static wxString GetGlobalFileName(const wxChar *szFile);
+ static wxString GetLocalFileName(const wxChar *szFile);
// ctor & dtor
// New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or
// wxCONFIG_USE_GLOBAL_FILE to say which files should be used.
wxFileConfig(const wxString& appName,
- const wxString& vendorName = "",
- const wxString& localFilename = "",
- const wxString& globalFilename = "",
+ const wxString& vendorName = _T(""),
+ const wxString& localFilename = _T(""),
+ const wxString& globalFilename = _T(""),
long style = wxCONFIG_USE_LOCAL_FILE);
// dtor will save unsaved data
bool IsEmpty() const { return Entries().IsEmpty() && Groups().IsEmpty(); }
// find entry/subgroup (NULL if not found)
- ConfigGroup *FindSubgroup(const char *szName) const;
- ConfigEntry *FindEntry (const char *szName) const;
+ ConfigGroup *FindSubgroup(const wxChar *szName) const;
+ ConfigEntry *FindEntry (const wxChar *szName) const;
// delete entry/subgroup, return FALSE if doesn't exist
- bool DeleteSubgroupByName(const char *szName);
- bool DeleteEntry(const char *szName);
+ bool DeleteSubgroupByName(const wxChar *szName);
+ bool DeleteEntry(const wxChar *szName);
// create new entry/subgroup returning pointer to newly created element
ConfigGroup *AddSubgroup(const wxString& strName);
wxFromEnd
};
-WXDLLEXPORT_DATA(extern const char*) wxEmptyString;
+WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
// ----------------------------------------------------------------------------
// functions
#define FileExists wxFileExists
// does the path exist? (may have or not '/' or '\\' at the end)
-WXDLLEXPORT bool wxPathExists(const char *pszPathName);
+WXDLLEXPORT bool wxPathExists(const wxChar *pszPathName);
#define wxDirExists wxPathExists
#define DirExists wxDirExists
#define IsAbsolutePath wxIsAbsolutePath
// Get filename
-WXDLLEXPORT char* wxFileNameFromPath(char *path);
+WXDLLEXPORT wxChar* wxFileNameFromPath(wxChar *path);
WXDLLEXPORT wxString wxFileNameFromPath(const wxString& path);
#define FileNameFromPath wxFileNameFromPath
// wxString version
WXDLLEXPORT wxString wxRealPath(const wxString& path);
-WXDLLEXPORT void wxDos2UnixFilename(char *s);
+WXDLLEXPORT void wxDos2UnixFilename(wxChar *s);
#define Dos2UnixFilename wxDos2UnixFilename
-WXDLLEXPORT void wxUnix2DosFilename(char *s);
+WXDLLEXPORT void wxUnix2DosFilename(wxChar *s);
#define Unix2DosFilename wxUnix2DosFilename
#ifdef __WXMAC__
- WXDLLEXPORT void wxMacPathToFSSpec( const char *path , FSSpec *spec ) ;
- WXDLLEXPORT void wxMac2UnixFilename(char *s);
- WXDLLEXPORT void wxUnix2MacFilename(char *s);
+ WXDLLEXPORT void wxMacPathToFSSpec( const wxChar *path , FSSpec *spec ) ;
+ WXDLLEXPORT void wxMac2UnixFilename(wxChar *s);
+ WXDLLEXPORT void wxUnix2MacFilename(wxChar *s);
#endif
// Strip the extension, in situ
-WXDLLEXPORT void wxStripExtension(char *buffer);
+WXDLLEXPORT void wxStripExtension(wxChar *buffer);
WXDLLEXPORT void wxStripExtension(wxString& buffer);
// Get a temporary filename, opening and closing the file.
-WXDLLEXPORT char* wxGetTempFileName(const wxString& prefix, char *buf = (char *) NULL);
+WXDLLEXPORT wxChar* wxGetTempFileName(const wxString& prefix, wxChar *buf = (wxChar *) NULL);
// Expand file name (~/ and ${OPENWINHOME}/ stuff)
-WXDLLEXPORT char* wxExpandPath(char *dest, const char *path);
+WXDLLEXPORT wxChar* wxExpandPath(wxChar *dest, const wxChar *path);
// Contract w.r.t environment (</usr/openwin/lib, OPENWHOME> -> ${OPENWINHOME}/lib)
// and make (if under the home tree) relative to home
// [caller must copy-- volatile]
-WXDLLEXPORT char* wxContractPath(const wxString& filename,
- const wxString& envname = wxEmptyString,
- const wxString& user = wxEmptyString);
+WXDLLEXPORT wxChar* wxContractPath(const wxString& filename,
+ const wxString& envname = wxEmptyString,
+ const wxString& user = wxEmptyString);
// Destructive removal of /./ and /../ stuff
-WXDLLEXPORT char* wxRealPath(char *path);
+WXDLLEXPORT wxChar* wxRealPath(wxChar *path);
// Allocate a copy of the full absolute path
-WXDLLEXPORT char* wxCopyAbsolutePath(const wxString& path);
+WXDLLEXPORT wxChar* wxCopyAbsolutePath(const wxString& path);
// Get first file name matching given wild card.
// Flags are reserved for future use.
#define wxFILE 1
#define wxDIR 2
-WXDLLEXPORT wxString wxFindFirstFile(const char *spec, int flags = wxFILE);
+WXDLLEXPORT wxString wxFindFirstFile(const wxChar *spec, int flags = wxFILE);
WXDLLEXPORT wxString wxFindNextFile();
// Does the pattern contain wildcards?
// copies into buf.
// IMPORTANT NOTE getcwd is know not to work under some releases
// of Win32s 1.3, according to MS release notes!
-WXDLLEXPORT char* wxGetWorkingDirectory(char *buf = (char *) NULL, int sz = 1000);
+WXDLLEXPORT wxChar* wxGetWorkingDirectory(wxChar *buf = (wxChar *) NULL, int sz = 1000);
// new and preferred version of wxGetWorkingDirectory
// NB: can't have the same name because of overloading ambiguity
WXDLLEXPORT wxString wxGetCwd();
WXDLLEXPORT bool wxRmdir(const wxString& dir, int flags = 0);
// separators in file names
-#define wxFILE_SEP_EXT '.'
-#define wxFILE_SEP_DSK ':'
-#define wxFILE_SEP_PATH_DOS '\\'
-#define wxFILE_SEP_PATH_UNIX '/'
+#define wxFILE_SEP_EXT _T('.')
+#define wxFILE_SEP_DSK _T(':')
+#define wxFILE_SEP_PATH_DOS _T('\\')
+#define wxFILE_SEP_PATH_UNIX _T('/')
// separator in the path list (as in PATH environment variable)
// NB: these are strings and not characters on purpose!
-#define wxPATH_SEP_DOS ";"
-#define wxPATH_SEP_UNIX ":"
+#define wxPATH_SEP_DOS _T(";")
+#define wxPATH_SEP_UNIX _T(":")
// platform independent versions
#ifdef __UNIX__
#endif // Unix/Windows
// is the char a path separator?
-inline bool wxIsPathSeparator(char c)
+inline bool wxIsPathSeparator(wxChar c)
{ return c == wxFILE_SEP_PATH_DOS || c == wxFILE_SEP_PATH_UNIX; }
// does the string ends with path separator?
-WXDLLEXPORT bool wxEndsWithPathSeparator(const char *pszFileName);
+WXDLLEXPORT bool wxEndsWithPathSeparator(const wxChar *pszFileName);
// split the full path into path (including drive for DOS), name and extension
// (understands both '/' and '\\')
-WXDLLEXPORT void wxSplitPath(const char *pszFileName,
+WXDLLEXPORT void wxSplitPath(const wxChar *pszFileName,
wxString *pstrPath,
wxString *pstrName,
wxString *pstrExt);
// find a file in a list of directories, returns false if not found
-WXDLLEXPORT bool wxFindFileInPath(wxString *pStr, const char *pszPath, const char *pszFile);
+WXDLLEXPORT bool wxFindFileInPath(wxString *pStr, const wxChar *pszPath, const wxChar *pszFile);
// Get the OS directory if appropriate (such as the Windows directory).
// On non-Windows platform, probably just return the empty string.
void Add(const wxString& path);
// Avoid compiler warning
- wxNode *Add(const char *s) { return wxStringList::Add(s); }
+ wxNode *Add(const wxChar *s) { return wxStringList::Add(s); }
// Find the first full path for which the file exists
wxString FindValidPath(const wxString& filename);
// Find the first full path for which the file exists; ensure it's an
#endif
// _WX_FILEFN_H_
-
wxBrush *FindOrCreateBrush(const wxColour& colour, int style);
};
-WXDLLEXPORT_DATA(extern const char*) wxEmptyString;
+WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
class WXDLLEXPORT wxFontList: public wxList
{
DECLARE_DYNAMIC_CLASS(wxSingleChoiceDialog)
public:
wxSingleChoiceDialog(wxWindow *parent, const wxString& message, const wxString& caption,
- int n, const wxString *choices, char **clientData = (char **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
+ int n, const wxString *choices, wxChar **clientData = (wxChar **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
wxSingleChoiceDialog(wxWindow *parent, const wxString& message, const wxString& caption,
- const wxStringList& choices, char **clientData = (char **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
+ const wxStringList& choices, wxChar **clientData = (wxChar **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
bool Create(wxWindow *parent, const wxString& message, const wxString& caption,
- int n, const wxString *choices, char **clientData = (char **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
+ int n, const wxString *choices, wxChar **clientData = (wxChar **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
bool Create(wxWindow *parent, const wxString& message, const wxString& caption,
- const wxStringList& choices, char **clientData = (char **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
+ const wxStringList& choices, wxChar **clientData = (wxChar **) NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
void SetSelection(int sel) ;
inline int GetSelection(void) const { return m_selection; }
inline wxString GetStringSelection(void) const { return m_stringSelection; }
- inline char *GetSelectionClientData(void) const { return m_clientData; }
+ inline wxChar *GetSelectionClientData(void) const { return m_clientData; }
void OnOK(wxCommandEvent& event);
void OnListBoxDClick(wxCommandEvent& event);
long m_dialogStyle;
int m_selection;
wxString m_stringSelection;
- char* m_clientData;
+ wxChar* m_clientData;
};
WXDLLEXPORT wxString wxGetSingleChoice(const wxString& message, const wxString& caption,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
WXDLLEXPORT wxString wxGetSingleChoice(const wxString& message, const wxString& caption,
- int n, char *choices[], wxWindow *parent = (wxWindow *) NULL,
+ int n, wxChar *choices[], wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
WXDLLEXPORT int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption,
- int n, char *choices[], wxWindow *parent = (wxWindow *) NULL,
+ int n, wxChar *choices[], wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
// Return client data instead
-WXDLLEXPORT char* wxGetSingleChoiceData(const wxString& message, const wxString& caption,
- int n, const wxString *choices, char **client_data,
+WXDLLEXPORT wxChar* wxGetSingleChoiceData(const wxString& message, const wxString& caption,
+ int n, const wxString *choices, wxChar **client_data,
wxWindow *parent = (wxWindow *) NULL, int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
-WXDLLEXPORT char* wxGetSingleChoiceData(const wxString& message, const wxString& caption,
- int n, char *choices[], char **client_data,
+WXDLLEXPORT wxChar* wxGetSingleChoiceData(const wxString& message, const wxString& caption,
+ int n, wxChar *choices[], wxChar **client_data,
wxWindow *parent = (wxWindow *) NULL, int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
// data
//-----------------------------------------------------------------------------
-WXDLLEXPORT_DATA(extern const char*) wxFileSelectorPromptStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorPromptStr;
//-----------------------------------------------------------------------------
// classes
#include "wx/dialog.h"
// Handy dialog functions (will be converted into classes at some point)
-WXDLLEXPORT_DATA(extern const char*) wxGetTextFromUserPromptStr;
-WXDLLEXPORT_DATA(extern const char*) wxEmptyString;
+WXDLLEXPORT_DATA(extern const wxChar*) wxGetTextFromUserPromptStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
#define wxID_TEXT 3000
//-----------------------------------------------------------------------------
extern const char* wxComboBoxNameStr;
-extern const char* wxEmptyString;
+extern const wxChar* wxEmptyString;
//-----------------------------------------------------------------------------
// wxComboBox
// File selector
//-------------------------------------------------------------------------
-extern const char *wxFileSelectorPromptStr;
-extern const char *wxFileSelectorDefaultWildcardStr;
+extern const wxChar *wxFileSelectorPromptStr;
+extern const wxChar *wxFileSelectorDefaultWildcardStr;
class wxFileDialog: public wxDialog
{
// File selector - backward compatibility
WXDLLEXPORT wxString
-wxFileSelector(const char *message = wxFileSelectorPromptStr,
- const char *default_path = NULL,
- const char *default_filename = NULL,
- const char *default_extension = NULL,
- const char *wildcard = wxFileSelectorDefaultWildcardStr,
+wxFileSelector(const wxChar *message = wxFileSelectorPromptStr,
+ const wxChar *default_path = NULL,
+ const wxChar *default_filename = NULL,
+ const wxChar *default_extension = NULL,
+ const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
int flags = 0,
wxWindow *parent = NULL,
int x = -1, int y = -1);
// An extended version of wxFileSelector
WXDLLEXPORT wxString
-wxFileSelectorEx(const char *message = wxFileSelectorPromptStr,
- const char *default_path = NULL,
- const char *default_filename = NULL,
+wxFileSelectorEx(const wxChar *message = wxFileSelectorPromptStr,
+ const wxChar *default_path = NULL,
+ const wxChar *default_filename = NULL,
int *indexDefaultExtension = NULL,
- const char *wildcard = wxFileSelectorDefaultWildcardStr,
+ const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
int flags = 0,
wxWindow *parent = NULL,
int x = -1, int y = -1);
// Ask for filename to load
WXDLLEXPORT wxString
-wxLoadFileSelector(const char *what,
- const char *extension,
- const char *default_name = (const char *)NULL,
+wxLoadFileSelector(const wxChar *what,
+ const wxChar *extension,
+ const wxChar *default_name = (const wxChar *)NULL,
wxWindow *parent = (wxWindow *) NULL);
// Ask for filename to save
WXDLLEXPORT wxString
-wxSaveFileSelector(const char *what,
- const char *extension,
- const char *default_name = (const char *) NULL,
+wxSaveFileSelector(const wxChar *what,
+ const wxChar *extension,
+ const wxChar *default_name = (const wxChar *) NULL,
wxWindow *parent = (wxWindow *) NULL);
#endif
/*
extern wxFontNameDirectory *wxTheFontNameDirectory;
*/
-extern const char* wxEmptyString;
+extern const wxChar* wxEmptyString;
//-----------------------------------------------------------------------------
// wxFont
//-----------------------------------------------------------------------------
extern const char* wxComboBoxNameStr;
-extern const char* wxEmptyString;
+extern const wxChar* wxEmptyString;
//-----------------------------------------------------------------------------
// wxComboBox
// File selector
//-------------------------------------------------------------------------
-extern const char *wxFileSelectorPromptStr;
-extern const char *wxFileSelectorDefaultWildcardStr;
+extern const wxChar *wxFileSelectorPromptStr;
+extern const wxChar *wxFileSelectorDefaultWildcardStr;
class wxFileDialog: public wxDialog
{
// File selector - backward compatibility
WXDLLEXPORT wxString
-wxFileSelector(const char *message = wxFileSelectorPromptStr,
- const char *default_path = NULL,
- const char *default_filename = NULL,
- const char *default_extension = NULL,
- const char *wildcard = wxFileSelectorDefaultWildcardStr,
+wxFileSelector(const wxChar *message = wxFileSelectorPromptStr,
+ const wxChar *default_path = NULL,
+ const wxChar *default_filename = NULL,
+ const wxChar *default_extension = NULL,
+ const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
int flags = 0,
wxWindow *parent = NULL,
int x = -1, int y = -1);
// An extended version of wxFileSelector
WXDLLEXPORT wxString
-wxFileSelectorEx(const char *message = wxFileSelectorPromptStr,
- const char *default_path = NULL,
- const char *default_filename = NULL,
+wxFileSelectorEx(const wxChar *message = wxFileSelectorPromptStr,
+ const wxChar *default_path = NULL,
+ const wxChar *default_filename = NULL,
int *indexDefaultExtension = NULL,
- const char *wildcard = wxFileSelectorDefaultWildcardStr,
+ const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
int flags = 0,
wxWindow *parent = NULL,
int x = -1, int y = -1);
// Ask for filename to load
WXDLLEXPORT wxString
-wxLoadFileSelector(const char *what,
- const char *extension,
- const char *default_name = (const char *)NULL,
+wxLoadFileSelector(const wxChar *what,
+ const wxChar *extension,
+ const wxChar *default_name = (const wxChar *)NULL,
wxWindow *parent = (wxWindow *) NULL);
// Ask for filename to save
WXDLLEXPORT wxString
-wxSaveFileSelector(const char *what,
- const char *extension,
- const char *default_name = (const char *) NULL,
+wxSaveFileSelector(const wxChar *what,
+ const wxChar *extension,
+ const wxChar *default_name = (const wxChar *) NULL,
wxWindow *parent = (wxWindow *) NULL);
#endif
/*
extern wxFontNameDirectory *wxTheFontNameDirectory;
*/
-extern const char* wxEmptyString;
+extern const wxChar* wxEmptyString;
//-----------------------------------------------------------------------------
// wxFont
// key and value are NOT necessarily the same
void Put(long key, long value, wxObject *object);
- void Put(long key, const char *value, wxObject *object);
+ void Put(long key, const wxChar *value, wxObject *object);
// key and value are the same
void Put(long value, wxObject *object);
- void Put(const char *value, wxObject *object);
+ void Put(const wxChar *value, wxObject *object);
// key and value not the same
wxObject *Get(long key, long value) const;
- wxObject *Get(long key, const char *value) const;
+ wxObject *Get(long key, const wxChar *value) const;
// key and value are the same
wxObject *Get(long value) const;
- wxObject *Get(const char *value) const;
+ wxObject *Get(const wxChar *value) const;
// Deletes entry and returns data if found
wxObject *Delete(long key);
- wxObject *Delete(const char *key);
+ wxObject *Delete(const wxChar *key);
wxObject *Delete(long key, int value);
- wxObject *Delete(long key, const char *value);
+ wxObject *Delete(long key, const wxChar *value);
// Construct your own integer key from a string, e.g. in case
// you need to combine it with something
- long MakeKey(const char *string) const;
+ long MakeKey(const wxChar *string) const;
// Way of iterating through whole hash table (e.g. to delete everything)
// Not necessary, of course, if you're only storing pointers to
inline ~wxConnectionBase(void) {}
// Calls that CLIENT can make
- virtual bool Execute(char *data, int size = -1, wxIPCFormat format = wxIPC_TEXT ) = 0;
- virtual bool Execute(const wxString& str) { return Execute((char *)(const char *)str, -1, wxIPC_TEXT); }
+ virtual bool Execute(wxChar *data, int size = -1, wxIPCFormat format = wxIPC_TEXT ) = 0;
+ virtual bool Execute(const wxString& str) { return Execute(WXSTRINGCAST str, -1, wxIPC_TEXT); }
virtual char *Request(const wxString& item, int *size = (int *) NULL, wxIPCFormat format = wxIPC_TEXT) = 0;
- virtual bool Poke(const wxString& item, char *data, int size = -1, wxIPCFormat format = wxIPC_TEXT) = 0;
+ virtual bool Poke(const wxString& item, wxChar *data, int size = -1, wxIPCFormat format = wxIPC_TEXT) = 0;
virtual bool StartAdvise(const wxString& item) = 0;
virtual bool StopAdvise(const wxString& item) = 0;
// Calls that SERVER can make
- virtual bool Advise(const wxString& item, char *data, int size = -1, wxIPCFormat format = wxIPC_TEXT) = 0;
+ virtual bool Advise(const wxString& item, wxChar *data, int size = -1, wxIPCFormat format = wxIPC_TEXT) = 0;
// Calls that both can make
virtual bool Disconnect(void) = 0;
// Callbacks to SERVER - override at will
virtual bool OnExecute( const wxString& WXUNUSED(topic), char *WXUNUSED(data), int WXUNUSED(size),
int WXUNUSED(format) ) { return FALSE; };
- virtual char *OnRequest( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item),
- int *WXUNUSED(size), int WXUNUSED(format) ) { return (char *) NULL; };
- virtual bool OnPoke( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item), char *WXUNUSED(data),
+ virtual wxChar *OnRequest( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item),
+ int *WXUNUSED(size), int WXUNUSED(format) ) { return (wxChar *) NULL; };
+ virtual bool OnPoke( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item), wxChar *WXUNUSED(data),
int WXUNUSED(size), int WXUNUSED(format) ) { return FALSE; };
virtual bool OnStartAdvise( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item) )
{ return FALSE; };
{ return FALSE; };
// Callbacks to CLIENT - override at will
- virtual bool OnAdvise( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item), char *WXUNUSED(data),
+ virtual bool OnAdvise( const wxString& WXUNUSED(topic), const wxString& WXUNUSED(item), wxChar *WXUNUSED(data),
int WXUNUSED(size), int WXUNUSED(format) ) { return FALSE; };
// Callbacks to BOTH
// due to circular header dependencies this function has to be declared here
// (normally it's found in utils.h which includes itself list.h...)
-extern WXDLLEXPORT char* copystring(const char *s);
+extern WXDLLEXPORT wxChar* copystring(const wxChar *s);
class WXDLLEXPORT wxObjectListNode;
typedef wxObjectListNode wxNode;
union wxListKeyValue
{
long integer;
- char *string;
+ wxChar *string;
};
// a struct which may contain both types of keys
{ m_keyType = wxKEY_NONE; }
wxListKey(long i)
{ m_keyType = wxKEY_INTEGER; m_key.integer = i; }
- wxListKey(const char *s)
- { m_keyType = wxKEY_STRING; m_key.string = strdup(s); }
+ wxListKey(const wxChar *s)
+ { m_keyType = wxKEY_STRING; m_key.string = wxStrdup(s); }
wxListKey(const wxString& s)
- { m_keyType = wxKEY_STRING; m_key.string = strdup(s.c_str()); }
+ { m_keyType = wxKEY_STRING; m_key.string = wxStrdup(s.c_str()); }
// accessors
wxKeyType GetKeyType() const { return m_keyType; }
- const char *GetString() const
+ const wxChar *GetString() const
{ wxASSERT( m_keyType == wxKEY_STRING ); return m_key.string; }
long GetNumber() const
{ wxASSERT( m_keyType == wxKEY_INTEGER ); return m_key.integer; }
virtual ~wxNodeBase();
// @@ no check is done that the list is really keyed on strings
- const char *GetKeyString() const { return m_key.string; }
+ const wxChar *GetKeyString() const { return m_key.string; }
long GetKeyInteger() const { return m_key.integer; }
// Necessary for some existing code
- void SetKeyString(char* s) { m_key.string = s; }
+ void SetKeyString(wxChar* s) { m_key.string = s; }
void SetKeyInteger(long i) { m_key.integer = i; }
#ifdef wxLIST_COMPATIBILITY
// keyed append
wxNodeBase *Append(long key, void *object);
- wxNodeBase *Append(const char *key, void *object);
+ wxNodeBase *Append(const wxChar *key, void *object);
// removes node from the list but doesn't delete it (returns pointer
// to the node or NULL if it wasn't found in the list)
\
nodetype *Append(long key, void *object) \
{ return (nodetype *)wxListBase::Append(key, object); } \
- nodetype *Append(const char *key, void *object) \
+ nodetype *Append(const wxChar *key, void *object) \
{ return (nodetype *)wxListBase::Append(key, object); } \
\
nodetype *DetachNode(nodetype *node) \
// wxStringList class for compatibility with the old code
// -----------------------------------------------------------------------------
-WX_DECLARE_LIST_2(char, wxStringListBase, wxStringListNode);
+WX_DECLARE_LIST_2(wxChar, wxStringListBase, wxStringListNode);
class WXDLLEXPORT wxStringList : public wxStringListBase
{
// ctors and such
// default
wxStringList() { DeleteContents(TRUE); }
- wxStringList(const char *first ...);
+ wxStringList(const wxChar *first ...);
// copying the string list: the strings are copied, too (extremely
// inefficient!)
// operations
// makes a copy of the string
- wxNode *Add(const char *s)
+ wxNode *Add(const wxChar *s)
{ return (wxNode *)wxStringListBase::Append(copystring(s)); }
- bool Delete(const char *s);
+ bool Delete(const wxChar *s);
- char **ListToArray(bool new_copies = FALSE) const;
- bool Member(const char *s) const;
+ wxChar **ListToArray(bool new_copies = FALSE) const;
+ bool Member(const wxChar *s) const;
// alphabetic sort
void Sort();
class WXDLLEXPORT wxClassInfo
{
public:
- wxClassInfo(char *cName, char *baseName1, char *baseName2, int sz, wxObjectConstructorFn fn);
+ wxClassInfo(wxChar *cName, wxChar *baseName1, wxChar *baseName2, int sz, wxObjectConstructorFn fn);
wxObject *CreateObject(void);
- inline char *GetClassName(void) const { return m_className; }
- inline char *GetBaseClassName1(void) const { return m_baseClassName1; }
- inline char *GetBaseClassName2(void) const { return m_baseClassName2; }
+ inline wxChar *GetClassName(void) const { return m_className; }
+ inline wxChar *GetBaseClassName1(void) const { return m_baseClassName1; }
+ inline wxChar *GetBaseClassName2(void) const { return m_baseClassName2; }
inline wxClassInfo* GetBaseClass1() const { return m_baseInfo1; }
inline wxClassInfo* GetBaseClass2() const { return m_baseInfo2; }
inline int GetSize(void) const { return m_objectSize; }
inline wxClassInfo* GetNext() const { return m_next; }
bool IsKindOf(wxClassInfo *info) const;
- static wxClassInfo *FindClass(char *c);
+ static wxClassInfo *FindClass(wxChar *c);
// Initializes parent pointers and hash table for fast searching.
static void InitializeClasses(void);
static void CleanUpClasses(void);
public:
- char* m_className;
- char* m_baseClassName1;
- char* m_baseClassName2;
+ wxChar* m_className;
+ wxChar* m_baseClassName1;
+ wxChar* m_baseClassName2;
int m_objectSize;
wxObjectConstructorFn m_objectConstructor;
static wxHashTable* sm_classTable;
};
-WXDLLEXPORT wxObject* wxCreateDynamicObject(const char *name);
+WXDLLEXPORT wxObject* wxCreateDynamicObject(const wxChar *name);
#if wxUSE_SERIAL
WXDLLEXPORT wxObject* wxCreateStoredObject( wxInputStream& stream );
#define IMPLEMENT_DYNAMIC_CLASS(name, basename) \
wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \
{ return new name; }\
- wxClassInfo name::sm_class##name((char *) #name, (char *) #basename, (char *) NULL, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
+ wxClassInfo name::sm_class##name((wxChar *) _T(#name), (wxChar *) _T(#basename), (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
// Multiple inheritance with two base classes
#define IMPLEMENT_DYNAMIC_CLASS2(name, basename1, basename2) \
wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \
{ return new name; }\
- wxClassInfo name::sm_class##name((char *) #name, (char *) #basename1, (char *) #basename2, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
+ wxClassInfo name::sm_class##name((wxChar *) _T(#name), (wxChar *) _T(#basename1), (wxChar *) _T(#basename2), (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
//////
////// for abstract classes
// Single inheritance with one base class
#define IMPLEMENT_ABSTRACT_CLASS(name, basename) \
- wxClassInfo name::sm_class##name((char *) #name, (char *) #basename, \
- (char *) NULL, (int) sizeof(name), (wxObjectConstructorFn) NULL);
+ wxClassInfo name::sm_class##name((wxChar *) _T(#name), (wxChar *) _T(#basename), \
+ (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) NULL);
// Multiple inheritance with two base classes
#define IMPLEMENT_ABSTRACT_CLASS2(name, basename1, basename2) \
- wxClassInfo name::sm_class##name((char *) #name, (char *) #basename1, (char *) #basename2, (int) sizeof(name), (wxObjectConstructorFn) NULL);
+ wxClassInfo name::sm_class##name((wxChar *) _T(#name), (wxChar *) _T(#basename1), \
+ (wxChar *) _T(#basename2), (int) sizeof(name), (wxObjectConstructorFn) NULL);
#define IMPLEMENT_CLASS IMPLEMENT_ABSTRACT_CLASS
#define IMPLEMENT_CLASS2 IMPLEMENT_ABSTRACT_CLASS2
// guess the type of file (m_file is supposed to be opened)
wxTextFileType GuessType() const;
// get the name of the file
- const char *GetName() const { return m_strFile.c_str(); }
+ const wxChar *GetName() const { return m_strFile.c_str(); }
// add/remove lines
// add a line to the end
// get the file termination string
// Note: implementation moved to textfile to prevent warning due to switch.
- static const char *GetEOL(wxTextFileType type = typeDefault);
+ static const wxChar *GetEOL(wxTextFileType type = typeDefault);
// dtor
~wxTextFile();
// ----------------------------------------------------------------------------
// Useful buffer (FIXME VZ: yeah, that is. To be removed!)
-WXDLLEXPORT_DATA(extern char*) wxBuffer;
+WXDLLEXPORT_DATA(extern wxChar*) wxBuffer;
// Make a copy of this string using 'new'
-WXDLLEXPORT char* copystring(const char *s);
+WXDLLEXPORT wxChar* copystring(const wxChar *s);
// Matches string one within string two regardless of case
-WXDLLEXPORT bool StringMatch(char *one, char *two, bool subString = TRUE, bool exact = FALSE);
+WXDLLEXPORT bool StringMatch(wxChar *one, wxChar *two, bool subString = TRUE, bool exact = FALSE);
// A shorter way of using strcmp
-#define wxStringEq(s1, s2) (s1 && s2 && (strcmp(s1, s2) == 0))
+#define wxStringEq(s1, s2) (s1 && s2 && (wxStrcmp(s1, s2) == 0))
// ----------------------------------------------------------------------------
// Miscellaneous functions
// Various conversions
// ----------------------------------------------------------------------------
-WXDLLEXPORT_DATA(extern const char*) wxFloatToStringStr;
-WXDLLEXPORT_DATA(extern const char*) wxDoubleToStringStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxFloatToStringStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxDoubleToStringStr;
-WXDLLEXPORT void StringToFloat(char *s, float *number);
-WXDLLEXPORT char* FloatToString(float number, const char *fmt = wxFloatToStringStr);
-WXDLLEXPORT void StringToDouble(char *s, double *number);
-WXDLLEXPORT char* DoubleToString(double number, const char *fmt = wxDoubleToStringStr);
-WXDLLEXPORT void StringToInt(char *s, int *number);
-WXDLLEXPORT void StringToLong(char *s, long *number);
-WXDLLEXPORT char* IntToString(int number);
-WXDLLEXPORT char* LongToString(long number);
+WXDLLEXPORT void StringToFloat(wxChar *s, float *number);
+WXDLLEXPORT wxChar* FloatToString(float number, const wxChar *fmt = wxFloatToStringStr);
+WXDLLEXPORT void StringToDouble(wxChar *s, double *number);
+WXDLLEXPORT wxChar* DoubleToString(double number, const wxChar *fmt = wxDoubleToStringStr);
+WXDLLEXPORT void StringToInt(wxChar *s, int *number);
+WXDLLEXPORT void StringToLong(wxChar *s, long *number);
+WXDLLEXPORT wxChar* IntToString(int number);
+WXDLLEXPORT wxChar* LongToString(long number);
// Convert 2-digit hex number to decimal
WXDLLEXPORT int wxHexToDec(const wxString& buf);
// Convert decimal integer to 2-character hex string
-WXDLLEXPORT void wxDecToHex(int dec, char *buf);
+WXDLLEXPORT void wxDecToHex(int dec, wxChar *buf);
WXDLLEXPORT wxString wxDecToHex(int dec);
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// Execute another program. Returns 0 if there was an error, a PID otherwise.
-WXDLLEXPORT long wxExecute(char **argv, bool sync = FALSE,
+WXDLLEXPORT long wxExecute(wxChar **argv, bool sync = FALSE,
wxProcess *process = (wxProcess *) NULL);
WXDLLEXPORT long wxExecute(const wxString& command, bool sync = FALSE,
wxProcess *process = (wxProcess *) NULL);
// NB: "char *" functions are deprecated, use wxString ones!
// Get eMail address
-WXDLLEXPORT bool wxGetEmailAddress(char *buf, int maxSize);
+WXDLLEXPORT bool wxGetEmailAddress(wxChar *buf, int maxSize);
WXDLLEXPORT wxString wxGetEmailAddress();
// Get hostname.
-WXDLLEXPORT bool wxGetHostName(char *buf, int maxSize);
+WXDLLEXPORT bool wxGetHostName(wxChar *buf, int maxSize);
WXDLLEXPORT wxString wxGetHostName();
// 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(wxChar *buf, int maxSize);
WXDLLEXPORT wxString wxGetUserId();
// Get user name e.g. Julian Smart
-WXDLLEXPORT bool wxGetUserName(char *buf, int maxSize);
+WXDLLEXPORT bool wxGetUserName(wxChar *buf, int maxSize);
WXDLLEXPORT wxString wxGetUserName();
// Get current Home dir and copy to dest (returns pstr->c_str())
-WXDLLEXPORT const char* wxGetHomeDir(wxString *pstr);
+WXDLLEXPORT const wxChar* 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);
+WXDLLEXPORT wxChar* wxGetUserHome(const wxString& user = wxEmptyString);
// ----------------------------------------------------------------------------
// Strip out any menu codes
// ----------------------------------------------------------------------------
-WXDLLEXPORT char* wxStripMenuCodes(char *in, char *out = (char *) NULL);
+WXDLLEXPORT wxChar* wxStripMenuCodes(wxChar *in, wxChar *out = (wxChar *) NULL);
WXDLLEXPORT wxString wxStripMenuCodes(const wxString& str);
// ----------------------------------------------------------------------------
// Format a message on the standard error (UNIX) or the debugging
// stream (Windows)
-WXDLLEXPORT void wxDebugMsg(const char *fmt ...) ;
+WXDLLEXPORT void wxDebugMsg(const wxChar *fmt ...) ;
// Non-fatal error (continues)
-WXDLLEXPORT_DATA(extern const char*) wxInternalErrorStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxInternalErrorStr;
WXDLLEXPORT void wxError(const wxString& msg, const wxString& title = wxInternalErrorStr);
// Fatal error (exits)
-WXDLLEXPORT_DATA(extern const char*) wxFatalErrorStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxFatalErrorStr;
WXDLLEXPORT void wxFatalError(const wxString& msg, const wxString& title = wxFatalErrorStr);
// ----------------------------------------------------------------------------
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, char **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);
// MSW only: get user-defined resource from the .res file.
// Returns NULL or newly-allocated memory, so use delete[] to clean up.
#ifdef __WXMSW__
-WXDLLEXPORT extern const char* wxUserResourceStr;
-WXDLLEXPORT char* wxLoadUserResource(const wxString& resourceName, const wxString& resourceType = wxUserResourceStr);
+WXDLLEXPORT extern const wxChar* wxUserResourceStr;
+WXDLLEXPORT wxChar* wxLoadUserResource(const wxString& resourceName, const wxString& resourceType = wxUserResourceStr);
// Implemented in utils.cpp: VC++, Win95 only. Sets up a console for standard
// input/output