\helpref{IMPLEMENT\_CLASS}{implementclass}\\
\helpref{IMPLEMENT\_DYNAMIC\_CLASS2}{implementdynamicclass2}\\
\helpref{IMPLEMENT\_DYNAMIC\_CLASS}{implementdynamicclass}\\
+\helpref{ngettext}{ngettext}\\
+\helpref{wxCONCAT}{wxconcat}\\
\helpref{WXDEBUG\_NEW}{debugnew}\\
\helpref{WXTRACELEVEL}{tracelevel}\\
\helpref{WXTRACE}{trace}\\
\helpref{wxSysErrorCode}{wxsyserrorcode}\\
\helpref{wxSysErrorMsg}{wxsyserrormsg}\\
\helpref{wxT}{wxt}\\
-\helpref{wxToLower}{wxtolower}\\
-\helpref{wxToUpper}{wxtoupper}\\
\helpref{wxTraceLevel}{wxtracelevel}\\
\helpref{wxTrace}{wxtrace}\\
\helpref{wxTransferFileToStream}{wxtransferfiletostream}\\
\helpref{wxTransferStreamToFile}{wxtransferstreamtofile}\\
\helpref{wxTrap}{wxtrap}\\
+\helpref{wxULL}{wxull}\\
\helpref{wxUninitialize}{wxuninitialize}\\
\helpref{wxUnix2DosFilename}{wxunix2dosfilename}\\
\helpref{wxUnsetEnv}{wxunsetenv}\\
\helpref{\_}{underscore}\\
\helpref{\_T}{underscoret}
+
+
\section{Version macros}\label{versionfunctions}
The following constants are defined in wxWindows:
<wx/version.h> or <wx/defs.h>
+
\membersection{wxCHECK\_VERSION}\label{wxcheckversion}
\func{bool}{wxCHECK\_VERSION}{\param{}{major, minor, release}}
}
\end{verbatim}
+
\membersection{wxCHECK\_GCC\_VERSION}\label{wxcheckgccversion}
\func{bool}{wxCHECK\_GCC\_VERSION}{\param{}{major, minor, release}}
compiler (g++) version major.minor.release or greater. Otherwise, and also if
the compiler is not GNU C++ at all, returns $0$.
+
\membersection{wxCHECK\_W32API\_VERSION}\label{wxcheckw32apiversion}
\func{bool}{wxCHECK\_GCC\_VERSION}{\param{}{major, minor, release}}
greater. Otherwise, and also if we are not compiling with mingw32/cygwin under
Win32 at all, returns $0$.
+
+
\section{Application initialization and termination}\label{appinifunctions}
The functions in this section are used on application startup/shutdown and also
to control the behaviour of the main event loop of the GUI programs.
+
\membersection{::wxEntry}\label{wxentry}
This initializes wxWindows in a platform-dependent way. Use this if you
<wx/app.h>
+
\membersection{::wxGetApp}\label{wxgetapp}
\func{wxAppDerivedClass\&}{wxGetApp}{\void}
allow you to access the functions specific to your application class but not
present in wxApp while wxGetApp() returns the object of the right type.
+
\membersection{::wxHandleFatalExceptions}\label{wxhandlefatalexceptions}
\func{bool}{wxHandleFatalExceptions}{\param{bool}{ doIt = true}}
Calling wxHandleFatalExceptions() with {\it doIt} equal to false will restore
this default behaviour.
+
\membersection{::wxInitAllImageHandlers}\label{wxinitallimagehandlers}
\func{void}{wxInitAllImageHandlers}{\void}
<wx/image.h>
+
\membersection{::wxInitialize}\label{wxinitialize}
\func{bool}{wxInitialize}{\void}
<wx/app.h>
+
\membersection{::wxSafeYield}\label{wxsafeyield}
\func{bool}{wxSafeYield}{\param{wxWindow*}{ win = NULL}, \param{bool}{
<wx/utils.h>
+
\membersection{::wxUninitialize}\label{wxuninitialize}
\func{void}{wxUninitialize}{\void}
<wx/app.h>
+
\membersection{::wxYield}\label{wxyield}
\func{bool}{wxYield}{\void}
<wx/app.h> or <wx/utils.h>
+
\membersection{::wxWakeUpIdle}\label{wxwakeupidle}
\func{void}{wxWakeUpIdle}{\void}
<wx/event.h>
+
+
\section{Process control functions}\label{processfunctions}
The functions in this section are used to launch or terminate the other
processes.
+
\membersection{::wxExecute}\label{wxexecute}
\func{long}{wxExecute}{\param{const wxString\& }{command}, \param{int }{sync = wxEXEC\_ASYNC}, \param{wxProcess *}{callback = NULL}}
array, any additional ones are the command parameters and the array must be
terminated with a NULL pointer.}
-\docparam{flags}{Combination of bit masks {\tt wxEXEC\_ASYNC},
+\docparam{flags}{Combination of bit masks {\tt wxEXEC\_ASYNC},\rtfsp
{\tt wxEXEC\_SYNC} and {\tt wxEXEC\_NOHIDE}}
\docparam{callback}{An optional pointer to \helpref{wxProcess}{wxprocess}}
<wx/utils.h>
+
\membersection{::wxExit}\label{wxexit}
\func{void}{wxExit}{\void}
<wx/app.h>
+
\membersection{::wxKill}\label{wxkill}
\func{int}{wxKill}{\param{long}{ pid}, \param{int}{ sig = wxSIGTERM}, \param{wxKillError }{*rc = NULL}}
\end{verbatim}
{\tt wxSIGNONE}, {\tt wxSIGKILL} and {\tt wxSIGTERM} have the same meaning
-under both Unix and Windows but all the other signals are equivalent to
+under both Unix and Windows but all the other signals are equivalent to
{\tt wxSIGTERM} under Windows.
Returns 0 on success, -1 on failure. If {\it rc} parameter is not NULL, it will
<wx/utils.h>
+
\membersection{::wxGetProcessId}\label{wxgetprocessid}
\func{unsigned long}{wxGetProcessId}{\void}
<wx/utils.h>
+
\membersection{::wxShell}\label{wxshell}
\func{bool}{wxShell}{\param{const wxString\& }{command = NULL}}
<wx/utils.h>
+
\membersection{::wxShutdown}\label{wxshutdown}
\func{bool}{wxShutdown}{\param{wxShutdownFlags}{flags}}
<wx/utils.h>
+
+
\section{Thread functions}\label{threadfunctions}
The functions and macros here mainly exist to make it writing the code which
\helpref{wxThread}{wxthread}, \helpref{wxMutex}{wxmutex}, \helpref{Multithreading overview}{wxthreadoverview}
+
\membersection{wxCRIT\_SECT\_DECLARE}\label{wxcritsectdeclare}
\func{}{wxCRIT\_SECT\_DECLARE}{\param{}{cs}}
{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$.
+
\membersection{wxCRIT\_SECT\_DECLARE\_MEMBER}\label{wxcritsectdeclaremember}
\func{}{wxCRIT\_SECT\_DECLARE}{\param{}{cs}}
a class or struct member which explains its name.
+
\membersection{wxCRIT\_SECT\_LOCKER}\label{wxcritsectlocker}
\func{}{wxCRIT\_SECT\_LOCKER}{\param{}{name}, \param{}{cs}}
{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$.
+
\membersection{wxCRITICAL\_SECTION}\label{wxcriticalsectionmacro}
\func{}{wxCRITICAL\_SECTION}{\param{}{name}}
{\bf not} be used and the critical section must be made a global instead).
+
\membersection{wxENTER\_CRIT\_SECT}\label{wxentercritsect}
\func{}{wxENTER\_CRIT\_SECT}{\param{wxCriticalSection\& }{cs}}
-This macro is equivalent to \helpref{cs.Enter()}{wxcriticalsectionenter} if
+This macro is equivalent to \helpref{cs.Enter()}{wxcriticalsectionenter} if
{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$.
+
\membersection{::wxIsMainThread}\label{wxismainthread}
\func{bool}{wxIsMainThread}{\void}
{\tt wxUSE\_THREADS} is $0$.
+
\membersection{wxLEAVE\_CRIT\_SECT}\label{wxleavecritsect}
\func{}{wxLEAVE\_CRIT\_SECT}{\param{wxCriticalSection\& }{cs}}
-This macro is equivalent to \helpref{cs.Leave()}{wxcriticalsectionleave} if
+This macro is equivalent to \helpref{cs.Leave()}{wxcriticalsectionleave} if
{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$.
+
\membersection{::wxMutexGuiEnter}\label{wxmutexguienter}
\func{void}{wxMutexGuiEnter}{\void}
This function is only defined on platforms which support preemptive
threads.
+
\membersection{::wxMutexGuiLeave}\label{wxmutexguileave}
\func{void}{wxMutexGuiLeave}{\void}
This function is only defined on platforms which support preemptive
threads.
+
+
\section{File functions}\label{filefunctions}
\wxheading{Include files}
\helpref{wxFile}{wxfile}\\
\helpref{wxFileName}{wxfilename}
+
\membersection{::wxDirExists}\label{functionwxdirexists}
\func{bool}{wxDirExists}{\param{const wxString\& }{dirname}}
Returns true if the directory exists.
+
\membersection{::wxDos2UnixFilename}\label{wxdos2unixfilename}
\func{void}{wxDos2UnixFilename}{\param{wxChar *}{s}}
Converts a DOS to a Unix filename by replacing backslashes with forward
slashes.
+
\membersection{::wxFileExists}\label{functionwxfileexists}
\func{bool}{wxFileExists}{\param{const wxString\& }{filename}}
-Returns true if the file exists. It also returns true if the file is
-a directory.
+Returns true if the file exists and is a plain file.
+
\membersection{::wxFileModificationTime}\label{wxfilemodificationtime}
Returns time of last modification of given file.
+
\membersection{::wxFileNameFromPath}\label{wxfilenamefrompath}
\func{wxString}{wxFileNameFromPath}{\param{const wxString\& }{path}}
Returns the filename for a full path. The second form returns a pointer to
temporary storage that should not be deallocated.
+
\membersection{::wxFindFirstFile}\label{wxfindfirstfile}
\func{wxString}{wxFindFirstFile}{\param{const char *}{spec}, \param{int}{ flags = 0}}
}
\end{verbatim}
+
\membersection{::wxFindNextFile}\label{wxfindnextfile}
\func{wxString}{wxFindNextFile}{\void}
See \helpref{wxFindFirstFile}{wxfindfirstfile} for an example.
+
\membersection{::wxGetDiskSpace}\label{wxgetdiskspace}
\func{bool}{wxGetDiskSpace}{\param{const wxString\& }{path}, \param{wxLongLong }{*total = NULL}, \param{wxLongLong }{*free = NULL}}
\wxheading{Portability}
-This function is implemented for Win16 (only for drives less than 2Gb), Win32,
+This function is implemented for Win32,
Mac OS and generic Unix provided the system has {\tt statfs()} function.
This function first appeared in wxWindows 2.3.2.
+
\membersection{::wxGetOSDirectory}\label{wxgetosdirectory}
\func{wxString}{wxGetOSDirectory}{\void}
Returns the Windows directory under Windows; on other platforms returns the empty string.
+
\membersection{::wxIsAbsolutePath}\label{wxisabsolutepath}
\func{bool}{wxIsAbsolutePath}{\param{const wxString\& }{filename}}
Returns true if the argument is an absolute filename, i.e. with a slash
or drive name at the beginning.
+
\membersection{::wxPathOnly}\label{wxpathonly}
\func{wxString}{wxPathOnly}{\param{const wxString\& }{path}}
Returns the directory part of the filename.
+
\membersection{::wxUnix2DosFilename}\label{wxunix2dosfilename}
\func{void}{wxUnix2DosFilename}{\param{const wxString\& }{s}}
Converts a Unix to a DOS filename by replacing forward
slashes with backslashes.
+
\membersection{::wxConcatFiles}\label{wxconcatfiles}
\func{bool}{wxConcatFiles}{\param{const wxString\& }{file1}, \param{const wxString\& }{file2},
Concatenates {\it file1} and {\it file2} to {\it file3}, returning
true if successful.
+
\membersection{::wxCopyFile}\label{wxcopyfile}
\func{bool}{wxCopyFile}{\param{const wxString\& }{file1}, \param{const wxString\& }{file2}, \param{bool }{overwrite = true}}
if it exists, but if {\it overwrite} is false, the functions fails in this
case.
+
\membersection{::wxGetCwd}\label{wxgetcwd}
\func{wxString}{wxGetCwd}{\void}
Returns a string containing the current (or working) directory.
+
\membersection{::wxGetWorkingDirectory}\label{wxgetworkingdirectory}
\func{wxString}{wxGetWorkingDirectory}{\param{char *}{buf=NULL}, \param{int }{sz=1000}}
{\it sz} is the size of the buffer if supplied.
+
\membersection{::wxGetTempFileName}\label{wxgettempfilename}
\func{char *}{wxGetTempFileName}{\param{const wxString\& }{prefix}, \param{char *}{buf=NULL}}
\helpref{wxFileName::CreateTempFileName}{wxfilenamecreatetempfilename}\rtfsp
instead.
+
\membersection{::wxIsWild}\label{wxiswild}
\func{bool}{wxIsWild}{\param{const wxString\& }{pattern}}
Returns true if the pattern contains wildcards. See \helpref{wxMatchWild}{wxmatchwild}.
+
\membersection{::wxMatchWild}\label{wxmatchwild}
\func{bool}{wxMatchWild}{\param{const wxString\& }{pattern}, \param{const wxString\& }{text}, \param{bool}{ dot\_special}}
dot\_special}\/ is true, filenames beginning with a dot are not matched
with wildcard characters. See \helpref{wxIsWild}{wxiswild}.
+
\membersection{::wxMkdir}\label{wxmkdir}
\func{bool}{wxMkdir}{\param{const wxString\& }{dir}, \param{int }{perm = 0777}}
{\it perm} is the access mask for the directory for the systems on which it is
supported (Unix) and doesn't have effect for the other ones.
+
\membersection{::wxRemoveFile}\label{wxremovefile}
\func{bool}{wxRemoveFile}{\param{const wxString\& }{file}}
Removes {\it file}, returning true if successful.
+
\membersection{::wxRenameFile}\label{wxrenamefile}
\func{bool}{wxRenameFile}{\param{const wxString\& }{file1}, \param{const wxString\& }{file2}}
Renames {\it file1} to {\it file2}, returning true if successful.
+
\membersection{::wxRmdir}\label{wxrmdir}
\func{bool}{wxRmdir}{\param{const wxString\& }{dir}, \param{int}{ flags=0}}
The {\it flags} parameter is reserved for future use.
+
\membersection{::wxSetWorkingDirectory}\label{wxsetworkingdirectory}
\func{bool}{wxSetWorkingDirectory}{\param{const wxString\& }{dir}}
Sets the current working directory, returning true if the operation succeeded.
Under MS Windows, the current drive is also changed if {\it dir} contains a drive specification.
+
\membersection{::wxSplitPath}\label{wxsplitfunction}
\func{void}{wxSplitPath}{\param{const char *}{ fullname}, \param{wxString *}{ path}, \param{wxString *}{ name}, \param{wxString *}{ ext}}
strings pointed to by these parameters will be overwritten in any case (if the pointers
are not NULL).
+
\membersection{::wxTransferFileToStream}\label{wxtransferfiletostream}
\func{bool}{wxTransferFileToStream}{\param{const wxString\& }{filename}, \param{ostream\& }{stream}}
<wx/docview.h>
+
\membersection{::wxTransferStreamToFile}\label{wxtransferstreamtofile}
\func{bool}{wxTransferStreamToFile}{\param{istream\& }{stream} \param{const wxString\& }{filename}}
<wx/docview.h>
+
+
\section{Network, user and OS functions}\label{networkfunctions}
The functions in this section are used to retrieve information about the
current computer and/or user characteristics.
+
\membersection{::wxGetFreeMemory}\label{wxgetfreememory}
\func{long}{wxGetFreeMemory}{\void}
<wx/utils.h>
+
\membersection{::wxGetFullHostName}\label{wxgetfullhostname}
\func{wxString}{wxGetFullHostName}{\void}
<wx/utils.h>
+
\membersection{::wxGetEmailAddress}\label{wxgetemailaddress}
\func{bool}{wxGetEmailAddress}{\param{const wxString\& }{buf}, \param{int }{sz}}
<wx/utils.h>
+
\membersection{::wxGetHomeDir}\label{wxgethomedir}
\func{wxString}{wxGetHomeDir}{\void}
<wx/utils.h>
+
\membersection{::wxGetHostName}\label{wxgethostname}
\func{wxString}{wxGetHostName}{\void}
<wx/utils.h>
+
\membersection{::wxGetUserId}\label{wxgetuserid}
\func{wxString}{wxGetUserId}{\void}
<wx/utils.h>
+
\membersection{::wxGetOsDescription}\label{wxgetosdescription}
\func{wxString}{wxGetOsDescription}{\void}
<wx/utils.h>
+
\membersection{::wxGetOsVersion}\label{wxgetosversion}
\func{int}{wxGetOsVersion}{\param{int *}{major = NULL}, \param{int *}{minor = NULL}}
<wx/utils.h>
+
\membersection{::wxGetUserHome}\label{wxgetuserhome}
\func{const wxChar *}{wxGetUserHome}{\param{const wxString\& }{user = ""}}
<wx/utils.h>
+
\membersection{::wxGetUserName}\label{wxgetusername}
\func{wxString}{wxGetUserName}{\void}
<wx/utils.h>
+
+
\section{String functions}
+
\membersection{::copystring}\label{copystring}
\func{char *}{copystring}{\param{const char *}{s}}
This function is deprecated, use \helpref{wxString}{wxstring} class instead.
+
+\membersection{ngettext}\label{ngettext}
+
+\func{const wxChar *}{ngettext}{\param{const char *}{str}, \param{const char *}{strPlural}, \param{size\_t }{n}}
+
+This macro expands into a call to plural form version of
+\helpref{wxGetTranslation}{wxgettranslation}
+function, so it marks the message for the extraction by {\tt xgettext} just as
+\helpref{wxTRANSLATE}{wxtranslate} does, but also returns the translation of
+the string for the current locale during execution, either singular or plural
+form depending on the value of \arg{n}.
+
+\wxheading{See also}
+
+\helpref{\_}{underscore}
+
+
\membersection{::wxGetTranslation}\label{wxgettranslation}
\func{const char *}{wxGetTranslation}{\param{const char * }{str}}
+\func{const char *}{wxGetTranslation}{\param{const char * }{str}, \param{const char * }{strPlural}, \param{size\_t }{n}}
+
This function returns the translation of string {\it str} in the current
\helpref{locale}{wxlocale}. If the string is not found in any of the loaded
message catalogs (see \helpref{internationalization overview}{internationalization}), the
provided: the \helpref{\_()}{underscore} macro is defined to do the same thing
as wxGetTranslation.
+The second form is used when retrieving translation of string that has
+different singular and plural form in English or different plural forms in some
+other language. It takes two extra arguments: \arg{str}
+parameter must contain the singular form of the string to be converted.
+It is also used as the key for the search in the catalog.
+The \arg{strPlural} parameter is the plural form (in English).
+The parameter \arg{n} is used to determine the plural form. If no
+message catalog is found \arg{str} is returned if `n == 1',
+otherwise \arg{strPlural}. The \helpref{ngettext}{ngettext} macro is defined
+to do the same thing.
+See \urlref{GNU gettext manual}{http://www.gnu.org/manual/gettext/html\_chapter/gettext\_10.html\#SEC150} for additional information on plural forms handling.
+
\membersection{::wxIsEmpty}\label{wxisempty}
\func{bool}{wxIsEmpty}{\param{const char *}{ p}}
Returns {\tt true} if the pointer is either {\tt NULL} or points to an empty
string, {\tt false} otherwise.
+
\membersection{::wxStrcmp}\label{wxstrcmp}
\func{int}{wxStrcmp}{\param{const char *}{p1}, \param{const char *}{p2}}
This function complements the standard C function {\it stricmp()} which performs
case-insensitive comparison.
+
\membersection{::wxStricmp}\label{wxstricmp}
\func{int}{wxStricmp}{\param{const char *}{p1}, \param{const char *}{p2}}
This function complements the standard C function {\it strcmp()} which performs
case-sensitive comparison.
+
\membersection{::wxStringMatch}\label{wxstringmatch}
\func{bool}{wxStringMatch}{\param{const wxString\& }{s1}, \param{const wxString\& }{s2},\\
ignoring case if {\it exact} is false. If {\it subString} is {\tt false},
no substring matching is done.
+
\membersection{::wxStringEq}\label{wxstringeq}
\func{bool}{wxStringEq}{\param{const wxString\& }{s1}, \param{const wxString\& }{s2}}
#define wxStringEq(s1, s2) (s1 && s2 && (strcmp(s1, s2) == 0))
\end{verbatim}
+
\membersection{::wxStrlen}\label{wxstrlen}
\func{size\_t}{wxStrlen}{\param{const char *}{ p}}
same thing (i.e. returns the length of the string) except that it returns 0 if
{\it p} is the {\tt NULL} pointer.
+
\membersection{::wxSnprintf}\label{wxsnprintf}
\func{int}{wxSnprintf}{\param{wxChar *}{buf}, \param{size\_t }{len}, \param{const wxChar *}{format}, \param{}{...}}
\helpref{wxVsnprintf}{wxvsnprintf}, \helpref{wxString::Printf}{wxstringprintf}
+
\membersection{wxT}\label{wxt}
\func{wxChar}{wxT}{\param{char }{ch}}
#endif
\end{verbatim}
+
\membersection{wxTRANSLATE}\label{wxtranslate}
\func{const wxChar *}{wxTRANSLATE}{\param{const char *}{s}}
translated (note that it is a bad example, really, as
\helpref{wxDateTime}{wxdatetime} already can be used to get the localized week
day names already). If you write
+
\begin{verbatim}
static const wxChar * const weekdays[] = { _("Mon"), ..., _("Sun") };
...
// use weekdays[n] as usual
\end{verbatim}
+
the code wouldn't compile because the function calls are forbidden in the array
initializer. So instead you should do
+
\begin{verbatim}
static const wxChar * const weekdays[] = { wxTRANSLATE("Mon"), ..., wxTRANSLATE("Sun") };
...
// use wxGetTranslation(weekdays[n])
\end{verbatim}
+
here.
Note that although the code {\bf would} compile if you simply omit
wxGetTranslation wouldn't find them.
-\membersection{::wxToLower}\label{wxtolower}
-
-\func{char}{wxToLower}{\param{char }{ch}}
-
-Converts the character to lower case. This is implemented as a macro for efficiency.
-
-\wxheading{Include files}
-
-<wx/utils.h>
-
-\membersection{::wxToUpper}\label{wxtoupper}
-
-\func{char}{wxToUpper}{\param{char }{ch}}
-
-Converts the character to upper case. This is implemented as a macro for efficiency.
-
-\wxheading{Include files}
-
-<wx/utils.h>
\membersection{::wxVsnprintf}\label{wxvsnprintf}
\helpref{wxSnprintf}{wxsnprintf}, \helpref{wxString::PrintfV}{wxstringprintfv}
+
\membersection{\_}\label{underscore}
\func{const wxChar *}{\_}{\param{const char *}{s}}
Don't confuse this macro with \helpref{\_T()}{underscoret}!
+\wxheading{See also}
+
+\helpref{ngettext}{ngettext}
+
+
\membersection{\_T}\label{underscoret}
Don't confuse this macro with \helpref{\_()}{underscore}!
+
+
\section{Dialog functions}\label{dialogfunctions}
Below are a number of convenience functions for getting input from the
parameter, or (in MS Windows or Motif) the wrong window frame may be brought to
the front when the dialog box is popped up.
+
\membersection{::wxBeginBusyCursor}\label{wxbeginbusycursor}
\func{void}{wxBeginBusyCursor}{\param{wxCursor *}{cursor = wxHOURGLASS\_CURSOR}}
<wx/utils.h>
+
\membersection{::wxBell}\label{wxbell}
\func{void}{wxBell}{\void}
<wx/utils.h>
+
\membersection{::wxCreateFileTipProvider}\label{wxcreatefiletipprovider}
\func{wxTipProvider *}{wxCreateFileTipProvider}{\param{const wxString\& }{filename},
<wx/tipdlg.h>
+
\membersection{::wxDirSelector}\label{wxdirselector}
\func{wxString}{wxDirSelector}{\param{const wxString\& }{message = wxDirSelectorPromptStr},\\
<wx/dirdlg.h>
+
\membersection{::wxFileSelector}\label{wxfileselector}
\func{wxString}{wxFileSelector}{\param{const wxString\& }{message}, \param{const wxString\& }{default\_path = ""},\\
<wx/filedlg.h>
+
\membersection{::wxEndBusyCursor}\label{wxendbusycursor}
\func{void}{wxEndBusyCursor}{\void}
<wx/utils.h>
+
\membersection{::wxGetColourFromUser}\label{wxgetcolourfromuser}
\func{wxColour}{wxGetColourFromUser}{\param{wxWindow *}{parent}, \param{const wxColour\& }{colInit}}
<wx/colordlg.h>
+
\membersection{::wxGetFontFromUser}\label{wxgetfontfromuser}
\func{wxFont}{wxGetFontFromUser}{\param{wxWindow *}{parent}, \param{const wxFont\& }{fontInit}}
<wx/fontdlg.h>
+
\membersection{::wxGetMultipleChoices}\label{wxgetmultiplechoices}
\func{size\_t}{wxGetMultipleChoices}{\\
and {\tt choices}, and no {\tt selections} parameter; the function
returns an array containing the user selections.}
+
\membersection{::wxGetNumberFromUser}\label{wxgetnumberfromuser}
\func{long}{wxGetNumberFromUser}{
<wx/textdlg.h>
+
\membersection{::wxGetPasswordFromUser}\label{wxgetpasswordfromuser}
\func{wxString}{wxGetTextFromUser}{\param{const wxString\& }{message}, \param{const wxString\& }{caption = ``Input text"},\\
<wx/textdlg.h>
+
\membersection{::wxGetTextFromUser}\label{wxgettextfromuser}
\func{wxString}{wxGetTextFromUser}{\param{const wxString\& }{message}, \param{const wxString\& }{caption = ``Input text"},\\
<wx/textdlg.h>
+
\membersection{::wxGetMultipleChoice}\label{wxgetmultiplechoice}
\func{int}{wxGetMultipleChoice}{\param{const wxString\& }{message}, \param{const wxString\& }{caption}, \param{int}{ n}, \param{const wxString\& }{choices[]},\\
<wx/choicdlg.h>
+
\membersection{::wxGetSingleChoice}\label{wxgetsinglechoice}
\func{wxString}{wxGetSingleChoice}{\param{const wxString\& }{message},\\
\perlnote{In wxPerl there is just an array reference in place of {\tt n}
and {\tt choices}.}
+
\membersection{::wxGetSingleChoiceIndex}\label{wxgetsinglechoiceindex}
\func{int}{wxGetSingleChoiceIndex}{\param{const wxString\& }{message},\\
\perlnote{In wxPerl there is just an array reference in place of {\tt n}
and {\tt choices}.}
+
\membersection{::wxGetSingleChoiceData}\label{wxgetsinglechoicedata}
\func{wxString}{wxGetSingleChoiceData}{\param{const wxString\& }{message},\\
and {\tt choices}, and the client data array must have the
same length as the choices array.}
+
\membersection{::wxIsBusy}\label{wxisbusy}
\func{bool}{wxIsBusy}{\void}
<wx/utils.h>
+
\membersection{::wxMessageBox}\label{wxmessagebox}
\func{int}{wxMessageBox}{\param{const wxString\& }{message}, \param{const wxString\& }{caption = ``Message"}, \param{int}{ style = wxOK},\\
<wx/msgdlg.h>
+
\membersection{::wxShowTip}\label{wxshowtip}
\func{bool}{wxShowTip}{\param{wxWindow *}{parent},
<wx/tipdlg.h>
+
+
\section{Math functions}
\wxheading{Include files}
<wx/math.h>
+
\membersection{wxFinite}\label{wxfinite}
\func{int}{wxFinite}{\param{double }{x}}
Returns a non-zero value if {\it x} is neither infinite or NaN (not a number),
returns 0 otherwise.
+
\membersection{wxIsNaN}\label{wxisnan}
\func{bool}{wxIsNaN}{\param{double }{x}}
otherwise.
+
+
\section{GDI functions}\label{gdifunctions}
The following are relevant to the GDI (Graphics Device Interface).
<wx/gdicmn.h>
+
\membersection{wxBITMAP}\label{wxbitmapmacro}
\func{}{wxBITMAP}{bitmapName}
<wx/gdicmn.h>
+
\membersection{::wxClientDisplayRect}\label{wxclientdisplayrect}
\func{void}{wxClientDisplayRect}{\param{int *}{x}, \param{int *}{y},
are currently defaulting to the whole display until a way is found to
provide this info for all window managers, etc.
+
\membersection{::wxColourDisplay}\label{wxcolourdisplay}
\func{bool}{wxColourDisplay}{\void}
Returns true if the display is colour, false otherwise.
+
\membersection{::wxDisplayDepth}\label{wxdisplaydepth}
\func{int}{wxDisplayDepth}{\void}
Returns the depth of the display (a value of 1 denotes a monochrome display).
+
\membersection{::wxDisplaySize}\label{wxdisplaysize}
\func{void}{wxDisplaySize}{\param{int *}{width}, \param{int *}{height}}
Returns the display size in pixels.
+
\membersection{::wxDisplaySizeMM}\label{wxdisplaysizemm}
\func{void}{wxDisplaySizeMM}{\param{int *}{width}, \param{int *}{height}}
Returns the display size in millimeters.
+
\membersection{::wxDROP\_ICON}\label{wxdropicon}
\func{wxIconOrCursor}{wxDROP\_ICON}{\param{const char *}{name}}
<wx/dnd.h>
+
\membersection{wxICON}\label{wxiconmacro}
\func{}{wxICON}{iconName}
<wx/gdicmn.h>
+
\membersection{::wxMakeMetafilePlaceable}\label{wxmakemetafileplaceable}
\func{bool}{wxMakeMetafilePlaceable}{\param{const wxString\& }{filename}, \param{int }{minX}, \param{int }{minY},
This function is only available under Windows.
+
\membersection{::wxSetCursor}\label{wxsetcursor}
\func{void}{wxSetCursor}{\param{wxCursor *}{cursor}}
Globally sets the cursor; only has an effect in Windows and GTK.
See also \helpref{wxCursor}{wxcursor}, \helpref{wxWindow::SetCursor}{wxwindowsetcursor}.
+
+
\section{Printer settings}\label{printersettings}
{\bf NB:} These routines are obsolete and should no longer be used!
<wx/dcps.h>
+
\membersection{::wxGetPrinterCommand}\label{wxgetprintercommand}
\func{wxString}{wxGetPrinterCommand}{\void}
Gets the printer command used to print a file. The default is {\tt lpr}.
+
\membersection{::wxGetPrinterFile}\label{wxgetprinterfile}
\func{wxString}{wxGetPrinterFile}{\void}
Gets the PostScript output filename.
+
\membersection{::wxGetPrinterMode}\label{wxgetprintermode}
\func{int}{wxGetPrinterMode}{\void}
Gets the printing mode controlling where output is sent (PS\_PREVIEW, PS\_FILE or PS\_PRINTER).
The default is PS\_PREVIEW.
+
\membersection{::wxGetPrinterOptions}\label{wxgetprinteroptions}
\func{wxString}{wxGetPrinterOptions}{\void}
Gets the additional options for the print command (e.g. specific printer). The default is nothing.
+
\membersection{::wxGetPrinterOrientation}\label{wxgetprinterorientation}
\func{int}{wxGetPrinterOrientation}{\void}
Gets the orientation (PS\_PORTRAIT or PS\_LANDSCAPE). The default is PS\_PORTRAIT.
+
\membersection{::wxGetPrinterPreviewCommand}\label{wxgetprinterpreviewcommand}
\func{wxString}{wxGetPrinterPreviewCommand}{\void}
Gets the command used to view a PostScript file. The default depends on the platform.
+
\membersection{::wxGetPrinterScaling}\label{wxgetprinterscaling}
\func{void}{wxGetPrinterScaling}{\param{float *}{x}, \param{float *}{y}}
Gets the scaling factor for PostScript output. The default is 1.0, 1.0.
+
\membersection{::wxGetPrinterTranslation}\label{wxgetprintertranslation}
\func{void}{wxGetPrinterTranslation}{\param{float *}{x}, \param{float *}{y}}
Gets the translation (from the top left corner) for PostScript output. The default is 0.0, 0.0.
+
\membersection{::wxSetPrinterCommand}\label{wxsetprintercommand}
\func{void}{wxSetPrinterCommand}{\param{const wxString\& }{command}}
Sets the printer command used to print a file. The default is {\tt lpr}.
+
\membersection{::wxSetPrinterFile}\label{wxsetprinterfile}
\func{void}{wxSetPrinterFile}{\param{const wxString\& }{filename}}
Sets the PostScript output filename.
+
\membersection{::wxSetPrinterMode}\label{wxsetprintermode}
\func{void}{wxSetPrinterMode}{\param{int }{mode}}
Sets the printing mode controlling where output is sent (PS\_PREVIEW, PS\_FILE or PS\_PRINTER).
The default is PS\_PREVIEW.
+
\membersection{::wxSetPrinterOptions}\label{wxsetprinteroptions}
\func{void}{wxSetPrinterOptions}{\param{const wxString\& }{options}}
Sets the additional options for the print command (e.g. specific printer). The default is nothing.
+
\membersection{::wxSetPrinterOrientation}\label{wxsetprinterorientation}
\func{void}{wxSetPrinterOrientation}{\param{int}{ orientation}}
Sets the orientation (PS\_PORTRAIT or PS\_LANDSCAPE). The default is PS\_PORTRAIT.
+
\membersection{::wxSetPrinterPreviewCommand}\label{wxsetprinterpreviewcommand}
\func{void}{wxSetPrinterPreviewCommand}{\param{const wxString\& }{command}}
Sets the command used to view a PostScript file. The default depends on the platform.
+
\membersection{::wxSetPrinterScaling}\label{wxsetprinterscaling}
\func{void}{wxSetPrinterScaling}{\param{float }{x}, \param{float }{y}}
Sets the scaling factor for PostScript output. The default is 1.0, 1.0.
+
\membersection{::wxSetPrinterTranslation}\label{wxsetprintertranslation}
\func{void}{wxSetPrinterTranslation}{\param{float }{x}, \param{float }{y}}
Sets the translation (from the top left corner) for PostScript output. The default is 0.0, 0.0.
+
+
\section{Clipboard functions}\label{clipsboard}
These clipboard functions are implemented for Windows only. The use of these functions
<wx/clipbrd.h>
+
\membersection{::wxClipboardOpen}\label{functionwxclipboardopen}
\func{bool}{wxClipboardOpen}{\void}
Returns true if this application has already opened the clipboard.
+
\membersection{::wxCloseClipboard}\label{wxcloseclipboard}
\func{bool}{wxCloseClipboard}{\void}
Closes the clipboard to allow other applications to use it.
+
\membersection{::wxEmptyClipboard}\label{wxemptyclipboard}
\func{bool}{wxEmptyClipboard}{\void}
Empties the clipboard.
+
\membersection{::wxEnumClipboardFormats}\label{wxenumclipboardformats}
\func{int}{wxEnumClipboardFormats}{\param{int}{dataFormat}}
Before it enumerates the formats function, an application must open the clipboard by using the
wxOpenClipboard function.
+
\membersection{::wxGetClipboardData}\label{wxgetclipboarddata}
\func{wxObject *}{wxGetClipboardData}{\param{int}{dataFormat}}
The clipboard must have previously been opened for this call to succeed.
+
\membersection{::wxGetClipboardFormatName}\label{wxgetclipboardformatname}
\func{bool}{wxGetClipboardFormatName}{\param{int}{dataFormat}, \param{const wxString\& }{formatName}, \param{int}{maxCount}}
Gets the name of a registered clipboard format, and puts it into the buffer {\it formatName} which is of maximum
length {\it maxCount}. {\it dataFormat} must not specify a predefined clipboard format.
+
\membersection{::wxIsClipboardFormatAvailable}\label{wxisclipboardformatavailable}
\func{bool}{wxIsClipboardFormatAvailable}{\param{int}{dataFormat}}
Returns true if the given data format is available on the clipboard.
+
\membersection{::wxOpenClipboard}\label{wxopenclipboard}
\func{bool}{wxOpenClipboard}{\void}
Opens the clipboard for passing data to it or getting data from it.
+
\membersection{::wxRegisterClipboardFormat}\label{wxregisterclipboardformat}
\func{int}{wxRegisterClipboardFormat}{\param{const wxString\& }{formatName}}
Registers the clipboard data format name and returns an identifier.
+
\membersection{::wxSetClipboardData}\label{wxsetclipboarddata}
\func{bool}{wxSetClipboardData}{\param{int}{dataFormat}, \param{wxObject *}{data}, \param{int}{width}, \param{int}{height}}
The clipboard must have previously been opened for this call to succeed.
+
+
\section{Miscellaneous functions}\label{miscellany}
+
+\membersection{wxCONCAT}\label{wxconcat}
+
+\func{}{wxCONCAT}{\param{}{x}, \param{}{y}}
+
+This macro returns the concatenation of two tokens \arg{x} and \arg{y}.
+
+
\membersection{wxDYNLIB\_FUNCTION}\label{wxdynlibfunction}
\func{}{wxDYNLIB\_FUNCTION}{\param{}{type}, \param{}{name}, \param{}{dynlib}}
\docparam{dynlib}{the library to load the function from}
+
\membersection{wxEXPLICIT}\label{wxexplicit}
{\tt wxEXPLICIT} is a macro which expands to the C++ {\tt explicit} keyword if
code which might have to be compiled with an old compiler without support for
this language feature but still take advantage of it when it is available.
+
\membersection{wxLL}\label{wxll}
\func{wxLongLong\_t}{wxLL}{\param{}{number}}
<wx/longlong.h>
+\wxheading{See also}
+
+\helpref{wxULL}{wxull}, \helpref{wxLongLong}{wxlonglong}
+
+
\membersection{wxLongLongFmtSpec}\label{wxlonglongfmtspec}
This macro is defined to contain the {\tt printf()} format specifier using
<wx/longlong.h>
+
\membersection{::wxNewId}\label{wxnewid}
\func{long}{wxNewId}{\void}
<wx/utils.h>
+
\membersection{::wxRegisterId}\label{wxregisterid}
\func{void}{wxRegisterId}{\param{long}{ id}}
<wx/utils.h>
+
\membersection{::wxDDECleanUp}\label{wxddecleanup}
\func{void}{wxDDECleanUp}{\void}
<wx/dde.h>
+
\membersection{::wxDDEInitialize}\label{wxddeinitialize}
\func{void}{wxDDEInitialize}{\void}
This no longer needs to be called by the application: it will be called
by wxWindows if necessary.
-See also \helpref{wxDDEServer}{wxddeserver}, \helpref{wxDDEClient}{wxddeclient}, \helpref{wxDDEConnection}{wxddeconnection},
+See also \helpref{wxDDEServer}{wxddeserver}, \helpref{wxDDEClient}{wxddeclient}, \helpref{wxDDEConnection}{wxddeconnection},\rtfsp
\helpref{wxDDECleanUp}{wxddecleanup}.
\wxheading{Include files}
<wx/dde.h>
+
\membersection{::wxEnableTopLevelWindows}\label{wxenabletoplevelwindows}
\func{void}{wxEnableTopLevelWindow}{\param{bool}{ enable = true}}
<wx/utils.h>
+
\membersection{::wxFindMenuItemId}\label{wxfindmenuitemid}
\func{int}{wxFindMenuItemId}{\param{wxFrame *}{frame}, \param{const wxString\& }{menuString}, \param{const wxString\& }{itemString}}
<wx/utils.h>
+
\membersection{::wxFindWindowByLabel}\label{wxfindwindowbylabel}
\func{wxWindow *}{wxFindWindowByLabel}{\param{const wxString\& }{label}, \param{wxWindow *}{parent=NULL}}
<wx/utils.h>
+
\membersection{::wxFindWindowByName}\label{wxfindwindowbyname}
\func{wxWindow *}{wxFindWindowByName}{\param{const wxString\& }{name}, \param{wxWindow *}{parent=NULL}}
<wx/utils.h>
+
\membersection{::wxFindWindowAtPoint}\label{wxfindwindowatpoint}
\func{wxWindow *}{wxFindWindowAtPoint}{\param{const wxPoint\& }{pt}}
Find the deepest window at the given mouse position in screen coordinates,
returning the window if found, or NULL if not.
+
\membersection{::wxFindWindowAtPointer}\label{wxfindwindowatpointer}
\func{wxWindow *}{wxFindWindowAtPointer}{\param{wxPoint\& }{pt}}
Find the deepest window at the mouse pointer position, returning the window
and current pointer position in screen coordinates.
+
\membersection{::wxGetActiveWindow}\label{wxgetactivewindow}
\func{wxWindow *}{wxGetActiveWindow}{\void}
<wx/windows.h>
+
\membersection{::wxGetDisplayName}\label{wxgetdisplayname}
\func{wxString}{wxGetDisplayName}{\void}
<wx/utils.h>
+
\membersection{::wxGetMousePosition}\label{wxgetmouseposition}
\func{wxPoint}{wxGetMousePosition}{\void}
<wx/utils.h>
+
\membersection{::wxGetResource}\label{wxgetresource}
\func{bool}{wxGetResource}{\param{const wxString\& }{section}, \param{const wxString\& }{entry},
<wx/utils.h>
+
\membersection{::wxGetTopLevelParent}\label{wxgettoplevelparent}
\func{wxWindow *}{wxGetTopLevelParent}{\param{wxWindow }{*win}}
<wx/window.h>
+
\membersection{::wxLoadUserResource}\label{wxloaduserresource}
\func{wxString}{wxLoadUserResource}{\param{const wxString\& }{resourceName}, \param{const wxString\& }{resourceType=``TEXT"}}
<wx/utils.h>
+
\membersection{::wxPostDelete}\label{wxpostdelete}
\func{void}{wxPostDelete}{\param{wxObject *}{object}}
<wx/utils.h>
+
\membersection{::wxPostEvent}\label{wxpostevent}
\func{void}{wxPostEvent}{\param{wxEvtHandler *}{dest}, \param{wxEvent\& }{event}}
<wx/app.h>
+
\membersection{::wxSetDisplayName}\label{wxsetdisplayname}
\func{void}{wxSetDisplayName}{\param{const wxString\& }{displayName}}
<wx/utils.h>
+
\membersection{::wxStripMenuCodes}\label{wxstripmenucodes}
\func{wxString}{wxStripMenuCodes}{\param{const wxString\& }{in}}
<wx/utils.h>
+
+\membersection{wxULL}\label{wxull}
+
+\func{wxLongLong\_t}{wxULL}{\param{}{number}}
+
+This macro is defined for the platforms with a native 64 bit integer type and
+allows to define unsigned 64 bit compile time constants:
+
+\begin{verbatim}
+ #ifdef wxLongLong_t
+ unsigned wxLongLong_t ll = wxULL(0x1234567890abcdef);
+ #endif
+\end{verbatim}
+
+\wxheading{Include files}
+
+<wx/longlong.h>
+
+\wxheading{See also}
+
+\helpref{wxLL}{wxll}, \helpref{wxLongLong}{wxlonglong}
+
+
\membersection{::wxWriteResource}\label{wxwriteresource}
\func{bool}{wxWriteResource}{\param{const wxString\& }{section}, \param{const wxString\& }{entry},
<wx/utils.h>
+
+
\section{Byte order macros}\label{byteordermacros}
The endian-ness issues (that is the difference between big-endian and
network) which is usually in some fixed, platform-independent format. The
macros are helpful for transforming the data to the correct format.
+
\membersection{wxINTXX\_SWAP\_ALWAYS}\label{intswapalways}
\func{wxInt32}{wxINT32\_SWAP\_ALWAYS}{\param{wxInt32 }{value}}
endian to big endian or vice versa unconditionally, i.e. independently of the
current platform.
+
\membersection{wxINTXX\_SWAP\_ON\_BE}\label{intswaponbe}
\func{wxInt32}{wxINT32\_SWAP\_ON\_BE}{\param{wxInt32 }{value}}
Use these macros to read data from and write data to a file that stores
data in little-endian (for example Intel i386) format.
+
\membersection{wxINTXX\_SWAP\_ON\_LE}\label{intswaponle}
\func{wxInt32}{wxINT32\_SWAP\_ON\_LE}{\param{wxInt32 }{value}}
Use these macros to read data from and write data to a file that stores
data in big-endian format.
+
+
\section{RTTI functions}\label{rttimacros}
wxWindows uses its own RTTI ("run-time type identification") system which
\helpref{RTTI overview}{runtimeclassoverview}
+
\membersection{CLASSINFO}\label{classinfo}
\func{wxClassInfo *}{CLASSINFO}{className}
<wx/object.h>
+
\membersection{DECLARE\_ABSTRACT\_CLASS}\label{declareabstractclass}
\func{}{DECLARE\_ABSTRACT\_CLASS}{className}
<wx/object.h>
+
\membersection{DECLARE\_APP}\label{declareapp}
\func{}{DECLARE\_APP}{className}
<wx/app.h>
+
\membersection{DECLARE\_CLASS}\label{declareclass}
\func{}{DECLARE\_CLASS}{className}
<wx/object.h>
+
\membersection{DECLARE\_DYNAMIC\_CLASS}\label{declaredynamicclass}
\func{}{DECLARE\_DYNAMIC\_CLASS}{className}
<wx/object.h>
+
\membersection{IMPLEMENT\_ABSTRACT\_CLASS}\label{implementabstractclass}
\func{}{IMPLEMENT\_ABSTRACT\_CLASS}{className, baseClassName}
<wx/object.h>
+
\membersection{IMPLEMENT\_ABSTRACT\_CLASS2}\label{implementabstractclass2}
\func{}{IMPLEMENT\_ABSTRACT\_CLASS2}{className, baseClassName1, baseClassName2}
<wx/object.h>
+
\membersection{IMPLEMENT\_APP}\label{implementapp}
\func{}{IMPLEMENT\_APP}{className}
<wx/app.h>
+
\membersection{IMPLEMENT\_CLASS}\label{implementclass}
\func{}{IMPLEMENT\_CLASS}{className, baseClassName}
<wx/object.h>
+
\membersection{IMPLEMENT\_CLASS2}\label{implementclass2}
\func{}{IMPLEMENT\_CLASS2}{className, baseClassName1, baseClassName2}
<wx/object.h>
+
\membersection{IMPLEMENT\_DYNAMIC\_CLASS}\label{implementdynamicclass}
\func{}{IMPLEMENT\_DYNAMIC\_CLASS}{className, baseClassName}
<wx/object.h>
+
\membersection{IMPLEMENT\_DYNAMIC\_CLASS2}\label{implementdynamicclass2}
\func{}{IMPLEMENT\_DYNAMIC\_CLASS2}{className, baseClassName1, baseClassName2}
<wx/object.h>
+
\membersection{wxConstCast}\label{wxconstcast}
\func{classname *}{wxConstCast}{ptr, classname}
\helpref{wxDynamicCast}{wxdynamiccast}\\
\helpref{wxStaticCast}{wxstaticcast}
+
\membersection{::wxCreateDynamicObject}\label{wxcreatedynamicobject}
\func{wxObject *}{wxCreateDynamicObject}{\param{const wxString\& }{className}}
Creates and returns an object of the given class, if the class has been
registered with the dynamic class system using DECLARE... and IMPLEMENT... macros.
+
\membersection{WXDEBUG\_NEW}\label{debugnew}
\func{}{WXDEBUG\_NEW}{arg}
<wx/object.h>
+
\membersection{wxDynamicCast}\label{wxdynamiccast}
\func{classname *}{wxDynamicCast}{ptr, classname}
\helpref{wxConstCast}{wxconstcast}\\
\helpref{wxStatiicCast}{wxstaticcast}
+
\membersection{wxDynamicCastThis}\label{wxdynamiccastthis}
\func{classname *}{wxDynamicCastThis}{classname}
\helpref{wxDynamicCast}{wxdynamiccast}
+
\membersection{wxStaticCast}\label{wxstaticcast}
\func{classname *}{wxStaticCast}{ptr, classname}
\helpref{wxDynamicCast}{wxdynamiccast}\\
\helpref{wxConstCast}{wxconstcast}
+
+
\section{Log functions}\label{logfunctions}
These functions provide a variety of logging functions: see \helpref{Log classes overview}{wxlogoverview} for
<wx/log.h>
+
\membersection{::wxDebugMsg}\label{wxdebugmsg}
\func{void}{wxDebugMsg}{\param{const wxString\& }{fmt}, \param{...}{}}
<wx/utils.h>
+
\membersection{::wxError}\label{wxerror}
\func{void}{wxError}{\param{const wxString\& }{msg}, \param{const wxString\& }{title = "wxWindows Internal Error"}}
<wx/utils.h>
+
\membersection{::wxFatalError}\label{wxfatalerror}
\func{void}{wxFatalError}{\param{const wxString\& }{msg}, \param{const wxString\& }{title = "wxWindows Fatal Error"}}
<wx/utils.h>
+
\membersection{::wxLogError}\label{wxlogerror}
\func{void}{wxLogError}{\param{const char *}{formatString}, \param{...}{}}
to the user. The default processing is to pop up a message box to inform the
user about it.
+
\membersection{::wxLogFatalError}\label{wxlogfatalerror}
\func{void}{wxLogFatalError}{\param{const char *}{formatString}, \param{...}{}}
terminates the program with the exit code 3. Using {\it abort()} standard
function also terminates the program with this exit code.
+
\membersection{::wxLogWarning}\label{wxlogwarning}
\func{void}{wxLogWarning}{\param{const char *}{formatString}, \param{...}{}}
For warnings - they are also normally shown to the user, but don't interrupt
the program work.
+
\membersection{::wxLogMessage}\label{wxlogmessage}
\func{void}{wxLogMessage}{\param{const char *}{formatString}, \param{...}{}}
that the later error messages make the informational messages preceding them
meaningless.
+
\membersection{::wxLogVerbose}\label{wxlogverbose}
\func{void}{wxLogVerbose}{\param{const char *}{formatString}, \param{...}{}}
might be activated if the user wishes to know more details about the program
progress (another, but possibly confusing name for the same function is {\bf wxLogInfo}).
+
\membersection{::wxLogStatus}\label{wxlogstatus}
\func{void}{wxLogStatus}{\param{wxFrame *}{frame}, \param{const char *}{formatString}, \param{...}{}}
If the target frame doesn't have a statusbar, the message will be lost.
+
\membersection{::wxLogSysError}\label{wxlogsyserror}
\func{void}{wxLogSysError}{\param{const char *}{formatString}, \param{...}{}}
\helpref{wxSysErrorCode}{wxsyserrorcode},
\helpref{wxSysErrorMsg}{wxsyserrormsg}
+
\membersection{::wxLogDebug}\label{wxlogdebug}
\func{void}{wxLogDebug}{\param{const char *}{formatString}, \param{...}{}}
mode (when the preprocessor symbol \_\_WXDEBUG\_\_ is defined) and expand to
nothing in release mode (otherwise).
+
\membersection{::wxLogTrace}\label{wxlogtrace}
\func{void}{wxLogTrace}{\param{const char *}{formatString}, \param{...}{}}
For the second function (taking a string mask), the message is logged only if
the mask has been previously enabled by the call to
-\helpref{AddTraceMask}{wxlogaddtracemask}. The predefined string trace masks
+\helpref{AddTraceMask}{wxlogaddtracemask} or by setting
+\helpref{{\tt WXTRACE} environment variable}{envvars}.
+The predefined string trace masks
used by wxWindows are:
\begin{itemize}\itemsep=0pt
\item wxTraceOleCalls: trace OLE method calls (Win32 only)
\end{itemize}
+
\membersection{::wxSafeShowMessage}\label{wxsafeshowmessage}
\func{void}{wxSafeShowMessage}{\param{const wxString\& }{title}, \param{const wxString\& }{text}}
<wx/log.h>
+
\membersection{::wxSysErrorCode}\label{wxsyserrorcode}
\func{unsigned long}{wxSysErrorCode}{\void}
\helpref{wxSysErrorMsg}{wxsyserrormsg},
\helpref{wxLogSysError}{wxlogsyserror}
+
\membersection{::wxSysErrorMsg}\label{wxsyserrormsg}
\func{const wxChar *}{wxSysErrorMsg}{\param{unsigned long }{errCode = 0}}
\helpref{wxSysErrorCode}{wxsyserrorcode},
\helpref{wxLogSysError}{wxlogsyserror}
+
\membersection{WXTRACE}\label{trace}
\wxheading{Include files}
<wx/memory.h>
+
\membersection{WXTRACELEVEL}\label{tracelevel}
\func{}{WXTRACELEVEL}{level, formatString, ...}
<wx/memory.h>
+
\membersection{::wxTrace}\label{wxtrace}
\func{void}{wxTrace}{\param{const wxString\& }{fmt}, \param{...}{}}
<wx/memory.h>
+
\membersection{::wxTraceLevel}\label{wxtracelevel}
\func{void}{wxTraceLevel}{\param{int}{ level}, \param{const wxString\& }{fmt}, \param{...}{}}
<wx/memory.h>
+
+
\section{Time functions}\label{timefunctions}
The functions in this section deal with getting the current time and
\helpref{wxDateTime::Now}{wxdatetimenow} or
\helpref{wxDateTime::UNow}{wxdatetimeunow} methods.
+
\membersection{::wxGetElapsedTime}\label{wxgetelapsedtime}
\func{long}{wxGetElapsedTime}{\param{bool}{ resetTimer = true}}
<wx/timer.h>
+
\membersection{::wxGetLocalTime}\label{wxgetlocaltime}
\func{long}{wxGetLocalTime}{\void}
<wx/timer.h>
+
\membersection{::wxGetLocalTimeMillis}\label{wxgetlocaltimemillis}
\func{wxLongLong}{wxGetLocalTimeMillis}{\void}
<wx/timer.h>
+
\membersection{::wxGetUTCTime}\label{wxgetutctime}
\func{long}{wxGetUTCTime}{\void}
<wx/timer.h>
+
\membersection{::wxNow}\label{wxnow}
\func{wxString}{wxNow}{\void}
<wx/utils.h>
+
\membersection{::wxSleep}\label{wxsleep}
\func{void}{wxSleep}{\param{int}{ secs}}
<wx/utils.h>
+
\membersection{::wxStartTimer}\label{wxstarttimer}
\func{void}{wxStartTimer}{\void}
<wx/timer.h>
+
\membersection{::wxUsleep}\label{wxusleep}
\func{void}{wxUsleep}{\param{unsigned long}{ milliseconds}}
<wx/utils.h>
+
+
\section{Debugging macros and functions}\label{debugmacros}
Useful macros and functions for error checking and defensive programming.
<wx/debug.h>
+
\membersection{::wxOnAssert}\label{wxonassert}
\func{void}{wxOnAssert}{\param{const char *}{fileName}, \param{int}{ lineNumber}, \param{const char *}{cond}, \param{const char *}{msg = NULL}}
\helpref{wxApp::OnAssert}{wxapponassert} which is called by this function if
the global application object exists.
+
\membersection{wxASSERT}\label{wxassert}
\func{}{wxASSERT}{\param{}{condition}}
\helpref{wxASSERT\_MSG}{wxassertmsg},\\
\helpref{wxCOMPILE\_TIME\_ASSERT}{wxcompiletimeassert}
+
\membersection{wxASSERT\_MIN\_BITSIZE}\label{wxassertminbitsize}
\func{}{wxASSERT\_MIN\_BITSIZE}{\param{}{type}, \param{}{size}}
wxASSERT_MIN_BITSIZE(wchar_t, 16);
\end{verbatim}
+
\membersection{wxASSERT\_MSG}\label{wxassertmsg}
\func{}{wxASSERT\_MSG}{\param{}{condition}, \param{}{msg}}
\helpref{wxASSERT}{wxassert},\\
\helpref{wxCOMPILE\_TIME\_ASSERT}{wxcompiletimeassert}
+
\membersection{wxCOMPILE\_TIME\_ASSERT}\label{wxcompiletimeassert}
\func{}{wxCOMPILE\_TIME\_ASSERT}{\param{}{condition}, \param{}{msg}}
either change the line in which either of them appears on or use the
\helpref{wxCOMPILE\_TIME\_ASSERT2}{wxcompiletimeassert2} macro.
+Also note that Microsoft Visual C++ has a bug which results in compiler errors
+if you use this macro with ``Program Database For Edit And Continue''
+(\texttt{/ZI}) option, so you shouldn't use it (``Program Database''
+(\texttt{/Zi}) is ok though) for the code making use of this macro.
+
\wxheading{See also}
\helpref{wxASSERT\_MSG}{wxassertmsg},\\
\helpref{wxASSERT\_MIN\_BITSIZE}{wxassertminbitsize}
+
\membersection{wxCOMPILE\_TIME\_ASSERT2}\label{wxcompiletimeassert2}
\func{}{wxCOMPILE\_TIME\_ASSERT}{\param{}{condition}, \param{}{msg}, \param{}{name}}
internally defined by this macro to avoid getting the compilation errors
described \helpref{above}{wxcompiletimeassert}.
+
\membersection{wxFAIL}\label{wxfail}
\func{}{wxFAIL}{\void}
See also: \helpref{wxFAIL\_MSG}{wxfailmsg}
+
\membersection{wxFAIL\_MSG}\label{wxfailmsg}
\func{}{wxFAIL\_MSG}{\param{}{msg}}
\helpref{wxFAIL}{wxfail}
+
\membersection{wxCHECK}\label{wxcheck}
\func{}{wxCHECK}{\param{}{condition}, \param{}{retValue}}
Checks that the condition is true, returns with the given return value if not (FAILs in debug mode).
This check is done even in release mode.
+
\membersection{wxCHECK\_MSG}\label{wxcheckmsg}
\func{}{wxCHECK\_MSG}{\param{}{condition}, \param{}{retValue}, \param{}{msg}}
This macro may be only used in non void functions, see also
\helpref{wxCHECK\_RET}{wxcheckret}.
+
\membersection{wxCHECK\_RET}\label{wxcheckret}
\func{}{wxCHECK\_RET}{\param{}{condition}, \param{}{msg}}
This macro should be used in void functions instead of
\helpref{wxCHECK\_MSG}{wxcheckmsg}.
+
\membersection{wxCHECK2}\label{wxcheck2}
\func{}{wxCHECK2}{\param{}{condition}, \param{}{operation}}
This check is done even in release mode.
+
\membersection{wxCHECK2\_MSG}\label{wxcheck2msg}
\func{}{wxCHECK2}{\param{}{condition}, \param{}{operation}, \param{}{msg}}
\helpref{wxFAIL\_MSG}{wxfailmsg} with the specified {\it msg} is called
instead of wxFAIL() if the {\it condition} is false.
+
\membersection{::wxTrap}\label{wxtrap}
\func{void}{wxTrap}{\void}
<wx/debug.h>
+
\membersection{::wxIsDebuggerRunning}\label{wxisdebuggerrunning}
\func{bool}{wxIsDebuggerRunning}{\void}
using CodeWarrior and always returns {\tt false} elsewhere.
+
+
\section{Environment access functions}\label{environfunctions}
The functions in this section allow to access (get) or change value of
<wx/utils.h>
+
\membersection{wxGetenv}\label{wxgetenvmacro}
\func{wxChar *}{wxGetEnv}{\param{const wxString\&}{ var}}
with \helpref{wxSetEnv}{wxsetenv}, use \helpref{wxGetEnv}{wxgetenv} function
instead.
+
\membersection{wxGetEnv}\label{wxgetenv}
\func{bool}{wxGetEnv}{\param{const wxString\&}{ var}, \param{wxString *}{value}}
Returns {\tt true} if the variable exists, {\tt false} otherwise.
+
\membersection{wxSetEnv}\label{wxsetenv}
\func{bool}{wxSetEnv}{\param{const wxString\&}{ var}, \param{const wxChar *}{value}}
Returns {\tt true} on success.
+
\membersection{wxUnsetEnv}\label{wxunsetenv}
\func{bool}{wxUnsetEnv}{\param{const wxString\&}{ var}}