either look up a function using the alphabetical listing of them or find it in
the corresponding topic.
+
+
\section{Alphabetical functions and macros list}
\helpref{CLASSINFO}{classinfo}\\
\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{wxCopyFile}{wxcopyfile}\\
\helpref{wxCreateDynamicObject}{wxcreatedynamicobject}\\
\helpref{wxCreateFileTipProvider}{wxcreatefiletipprovider}\\
+\helpref{wxCRIT\_SECT\_DECLARE}{wxcritsectdeclare}\\
+\helpref{wxCRIT\_SECT\_DECLARE\_MEMBER}{wxcritsectdeclaremember}\\
+\helpref{wxCRIT\_SECT\_LOCKER}{wxcritsectlocker}\\
+\helpref{wxCRITICAL\_SECTION}{wxcriticalsectionmacro}\\ % wxcs already taken!
\helpref{wxDDECleanUp}{wxddecleanup}\\
\helpref{wxDDEInitialize}{wxddeinitialize}\\
\helpref{wxDROP\_ICON}{wxdropicon}\\
\helpref{wxDos2UnixFilename}{wxdos2unixfilename}\\
\helpref{wxDynamicCastThis}{wxdynamiccastthis}\\
\helpref{wxDynamicCast}{wxdynamiccast}\\
+\helpref{wxDYNLIB\_FUNCTION}{wxdynlibfunction}\\
\helpref{wxEmptyClipboard}{wxemptyclipboard}\\
\helpref{wxEnableTopLevelWindows}{wxenabletoplevelwindows}\\
\helpref{wxEndBusyCursor}{wxendbusycursor}\\
+\helpref{wxENTER\_CRIT\_SECT}{wxentercritsect}\\
\helpref{wxEntry}{wxentry}\\
\helpref{wxEnumClipboardFormats}{wxenumclipboardformats}\\
\helpref{wxError}{wxerror}\\
\helpref{wxIsAbsolutePath}{wxisabsolutepath}\\
\helpref{wxIsBusy}{wxisbusy}\\
\helpref{wxIsClipboardFormatAvailable}{wxisclipboardformatavailable}\\
+\helpref{wxIsDebuggerRunning}{wxisdebuggerrunning}\\
\helpref{wxIsEmpty}{wxisempty}\\
+\helpref{wxIsMainThread}{wxismainthread}\\
\helpref{wxIsNaN}{wxisnan}\\
\helpref{wxIsWild}{wxiswild}\\
\helpref{wxKill}{wxkill}\\
+\helpref{wxLEAVE\_CRIT\_SECT}{wxleavecritsect}\\
\helpref{wxLoadUserResource}{wxloaduserresource}\\
\helpref{wxLogDebug}{wxlogdebug}\\
\helpref{wxLogError}{wxlogerror}\\
\helpref{wxSplitPath}{wxsplitfunction}\\
\helpref{wxStartTimer}{wxstarttimer}\\
\helpref{wxStaticCast}{wxstaticcast}\\
+\helpref{wxStrcmp}{wxstrcmp}\\
\helpref{wxStricmp}{wxstricmp}\\
\helpref{wxStringEq}{wxstringeq}\\
\helpref{wxStringMatch}{wxstringmatch}\\
\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}
\wxheading{Include files}
-<wx/app.h>
+<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}}
+\perlnote{In wxPerl this function is called \texttt{Wx::ExecuteCommand}}
+
\func{long}{wxExecute}{\param{char **}{argv}, \param{int }{flags = wxEXEC\_ASYNC}, \param{wxProcess *}{callback = NULL}}
+\perlnote{In wxPerl this function is called \texttt{Wx::ExecuteArgs}}
+
\func{long}{wxExecute}{\param{const wxString\& }{command}, \param{wxArrayString\& }{output}}
-\perlnote{In wxPerl this function only takes the {\tt command} argument,
+\perlnote{In wxPerl this function is called \texttt{Wx::ExecuteStdout} and it
+only takes the {\tt command} argument,
and returns a 2-element list {\tt ( status, output )}, where {\tt output} is
an array reference.}
\func{long}{wxExecute}{\param{const wxString\& }{command}, \param{wxArrayString\& }{output}, \param{wxArrayString\& }{errors}}
-\perlnote{In wxPerl this function only takes the {\tt command} argument,
+\perlnote{In wxPerl this function is called \texttt{Wx::ExecuteStdoutStderr}
+and it only takes the {\tt command} argument,
and returns a 3-element list {\tt ( status, output, errors )}, where
{\tt output} and {\tt errors} are array references.}
<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}}
<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
+may be compiled in multi thread build ({\tt wxUSE\_THREADS} $= 1$) as well as
+in single thread configuration ({\tt wxUSE\_THREADS} $= 0$).
+
+For example, a static variable must be protected against simultaneous access by
+multiple threads in the former configuration but in the latter the extra
+overhead of using the critical section is not needed. To solve this problem,
+the \helpref{wxCRITICAL\_SECTION}{wxcriticalsectionmacro} macro may be used
+to create and use the critical section only when needed.
+
\wxheading{Include files}
<wx/thread.h>
\helpref{wxThread}{wxthread}, \helpref{wxMutex}{wxmutex}, \helpref{Multithreading overview}{wxthreadoverview}
+
+
+\membersection{wxCRIT\_SECT\_DECLARE}\label{wxcritsectdeclare}
+
+\func{}{wxCRIT\_SECT\_DECLARE}{\param{}{cs}}
+
+This macro declares a (static) critical section object named {\it cs} if
+{\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}}
+
+This macro declares a critical section object named {\it cs} if
+{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$. As it doesn't
+include the {\tt static} keyword (unlike
+\helpref{wxCRIT\_SECT\_DECLARE}{wxcritsectdeclare}), it can be used to declare
+a class or struct member which explains its name.
+
+
+
+\membersection{wxCRIT\_SECT\_LOCKER}\label{wxcritsectlocker}
+
+\func{}{wxCRIT\_SECT\_LOCKER}{\param{}{name}, \param{}{cs}}
+
+This macro creates a \helpref{critical section lock}{wxcriticalsectionlocker}
+object named {\it name} and associated with the critical section {\it cs} if
+{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$.
+
+
+
+\membersection{wxCRITICAL\_SECTION}\label{wxcriticalsectionmacro}
+
+\func{}{wxCRITICAL\_SECTION}{\param{}{name}}
+
+This macro combines \helpref{wxCRIT\_SECT\_DECLARE}{wxcritsectdeclare} and
+\helpref{wxCRIT\_SECT\_LOCKER}{wxcritsectlocker}: it creates a static critical
+section object and also the lock object associated with it. Because of this, it
+can be only used inside a function, not at global scope. For example:
+
+\begin{verbatim}
+int IncCount()
+{
+ static int s_counter = 0;
+
+ wxCRITICAL_SECTION(counter);
+
+ return ++s_counter;
+}
+\end{verbatim}
+
+(note that we suppose that the function is called the first time from the main
+thread so that the critical section object is initialized correctly by the time
+other threads start calling it, if this is not the case this approach can
+{\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
+{\tt wxUSE\_THREADS} is $1$ and does nothing if it is $0$.
+
+
+
+\membersection{::wxIsMainThread}\label{wxismainthread}
+
+\func{bool}{wxIsMainThread}{\void}
+
+Returns {\tt true} if this thread is the main one. Always returns {\tt true} if
+{\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
+{\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}}
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}}
{\bf NB:} This function is obsolete: use \helpref{wxGetCwd}{wxgetcwd} instead.
Copies the current working directory into the buffer if supplied, or
-copies the working directory into new storage (which you must delete yourself)
-if the buffer is NULL.
+copies the working directory into new storage (which you {\emph must} delete
+yourself) if the buffer is NULL.
{\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}}
+
+Returns a negative value, 0, or positive value if {\it p1} is less than, equal
+to or greater than {\it p2}. The comparison is case-sensitive.
+
+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}}
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}!
-\membersection{\_}\label{underscore}
+
\section{Dialog functions}\label{dialogfunctions}
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 \pipe wxCENTRE},\\
+\func{int}{wxMessageBox}{\param{const wxString\& }{message}, \param{const wxString\& }{caption = ``Message"}, \param{int}{ style = wxOK},\\
\param{wxWindow *}{parent = NULL}, \param{int}{ x = -1}, \param{int}{ y = -1}}
General purpose message dialog. {\it style} may be a bit list of the
\twocolitem{wxCANCEL}{Puts a Cancel button on the message box. May be combined with
wxYES\_NO or wxOK.}
\twocolitem{wxOK}{Puts an Ok button on the message box. May be combined with wxCANCEL.}
-\twocolitem{wxCENTRE}{Centres the text.}
\twocolitem{wxICON\_EXCLAMATION}{Displays an exclamation mark symbol.}
\twocolitem{wxICON\_HAND}{Displays an error symbol.}
\twocolitem{wxICON\_ERROR}{Displays an error symbol - the same as wxICON\_HAND.}
int answer = wxMessageBox("Quit program?", "Confirm",
wxYES_NO | wxCANCEL, main_frame);
if (answer == wxYES)
- delete main_frame;
+ main_frame->Close();
...
\end{verbatim}
{\it message} may contain newline characters, in which case the
message will be split into separate lines, to cater for large messages.
-Under Windows, the native MessageBox function is used unless wxCENTRE
-is specified in the style, in which case a generic function is used.
-This is because the native MessageBox function cannot centre text.
-The symbols are not shown when the generic function is used.
-
\wxheading{Include files}
<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}}
+
+When loading a function from a DLL you always have to cast the returned
+\tt{void *} pointer to the correct type and, even more annoyingly, you have to
+repeat this type twice if you want to declare and define a function pointer all
+in one line
+
+This macro makes this slightly less painful by allowing you to specify the
+type only once, as the first parameter, and creating a variable of this type
+named after the function but with {\tt pfn} prefix and initialized with the
+function \arg{name} from the \helpref{wxDynamicLibrary}{wxdynamiclibrary}
+\arg{dynlib}.
+
+\wxheading{Parameters}
+
+\docparam{type}{the type of the function}
+
+\docparam{name}{the name of the function to load, not a string (without quotes,
+it is quoted automatically by the macro)}
+
+\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}
<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{...}{}}
\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}
+
+Returns {\tt true} if the program is running under debugger, {\tt false}
+otherwise.
+
+Please note that this function is currently only implemented for Mac builds
+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}}