1 \section{Preprocesser symbols defined by wxWindows
}\label{cppconst
}
3 Here is the list of preprocessor symbols used in the wxWindows source grouped
4 by category (and sorted by alphabetical order inside each category).
6 \subsection{GUI system
}
8 \begin{twocollist
}\itemsep=
0pt
9 \twocolitem{\_\_WINDOWS\_\_}{any Windows, yom may also use
\_\_WXMSW\_\_}
10 \twocolitem{\_\_WIN16\_\_}{Win16 API
}
11 \twocolitem{\_\_WIN32\_\_}{Win32 API
}
12 \twocolitem{\_\_WIN95\_\_}{Windows
95 or NT
4.0 and above system (not NT
3.5x)
}
13 \twocolitem{\_\_WXGTK\_\_}{GTK
}
14 \twocolitem{\_\_WXGTK12\_\_}{GTK
1.2 or higher
}
15 \twocolitem{\_\_WXGTK20\_\_}{GTK
2.0 or higher
}
16 \twocolitem{\_\_WXMOTIF\_\_}{Motif
}
17 \twocolitem{\_\_WXMAC\_\_}{Mac OS whether Classic (Mac OS
8/
9 TARGET
\_CARBON ==
0) or Carbon (including Mac OS X TARGET
\_CARBON ==
1)
}
18 \twocolitem{\_\_WXMGL\_\_}{SciTech Soft MGL (
\_\_WXUNIVERSAL\_\_ will be also
20 \twocolitem{\_\_WXMSW\_\_}{Any Windows
}
21 \twocolitem{\_\_WXOS2\_\_}{Identical to
\_\_WXPM\_\_}
22 \twocolitem{\_\_WXPM\_\_}{OS/
2 native Presentation Manager
}
23 \twocolitem{\_\_WXSTUBS\_\_}{Stubbed version ('template' wxWin implementation)
}
24 \twocolitem{\_\_WXXT\_\_}{Xt; mutually exclusive with WX
\_MOTIF, not
25 implemented in wxWindows
2.x
}
26 \twocolitem{\_\_WXX11\_\_}{wxX11 (
\_\_WXUNIVERSAL\_\_ will be also defined)
}
27 \twocolitem{\_\_WXWINE\_\_}{WINE (i.e. Win32 on Unix)
}
28 \twocolitem{\_\_WXUNIVERSAL\_\_}{wxUniversal port, always defined in addition
29 to one of the symbols above so this should be tested first.
}
30 \twocolitem{\_\_X\_\_}{any X11-based GUI toolkit except GTK+
}
33 In fact, they should better all start with
\_\_WX instead of
\_\_ only. The
34 only GUIs implemented for
2.0 are
\_\_WXGTK\_\_,
\_\_WXMSW\_\_ and
35 \_\_WXMOTIF\_\_ yet. Any new ones, please start the define with
\_\_WX.
37 \subsection{Operating systems
}
39 \begin{twocollist
}\itemsep=
0pt
40 \twocolitem{\_\_APPLE\_\_}{any Mac OS version
}
41 \twocolitem{\_\_AIX\_\_}{AIX
}
42 \twocolitem{\_\_BSD\_\_}{Any *BSD system
}
43 \twocolitem{\_\_CYGWIN\_\_}{Cygwin: Unix on Win32
}
44 \twocolitem{\_\_DARWIN\_\_}{Mac OS X using the BSD Unix C library (as opposed to using the Metrowerks MSL C/C++ library)
}
45 \twocolitem{\_\_DATA\_GENERAL\_\_}{DG-UX
}
46 \twocolitem{\_\_DOS\_GENERAL\_\_}{DOS (used with wxMGL only)
}
47 \twocolitem{\_\_FREEBSD\_\_}{FreeBSD
}
48 \twocolitem{\_\_HPUX\_\_}{HP-UX (Unix)
}
49 \twocolitem{\_\_LINUX\_\_}{Linux
}
50 \twocolitem{\_\_MACH\_\_}{Mach-O Architecture (Mac OS X only builds)
}
51 \twocolitem{\_\_OSF\_\_}{OSF/
1}
52 \twocolitem{\_\_SGI\_\_}{IRIX
}
53 \twocolitem{\_\_SOLARIS\_\_}{Solaris
}
54 \twocolitem{\_\_SUN\_\_}{Any Sun
}
55 \twocolitem{\_\_SUNOS\_\_}{Sun OS
}
56 \twocolitem{\_\_SVR4\_\_}{SystemV R4
}
57 \twocolitem{\_\_SYSV\_\_}{SystemV generic
}
58 \twocolitem{\_\_ULTRIX\_\_}{Ultrix
}
59 \twocolitem{\_\_UNIX\_\_}{any Unix
}
60 \twocolitem{\_\_UNIX\_LIKE\_\_}{Unix, BeOS or VMS
}
61 \twocolitem{\_\_VMS\_\_}{VMS
}
62 \twocolitem{\_\_WINDOWS\_\_}{any Windows
}
65 \subsection{Hardware architectures
}
67 Note that not all of these symbols are always defined, it depends on the
70 \begin{twocollist
}\itemsep=
0pt
71 \twocolitem{\_\_ALPHA\_\_}{DEC Alpha architecture
}
72 \twocolitem{\_\_INTEL\_\_}{Intel i386 or compatible
}
73 \twocolitem{\_\_POWERPC\_\_}{Motorola Power PC
}
76 \subsection{Compilers
}
78 \begin{twocollist
}\itemsep=
0pt
79 \twocolitem{\_\_BORLANDC\_\_}{Borland C++. The value of the macro corresponds
80 to the compiler version: $
500$ is $
5.0$.
}
81 \twocolitem{\_\_DJGPP\_\_}{DJGPP
}
82 \twocolitem{\_\_GNUG\_\_}{Gnu C++ on any platform, see also
83 \helpref{wxCHECK
\_GCC\_VERSION}{wxcheckgccversion
}}
84 \twocolitem{\_\_GNUWIN32\_\_}{Gnu-Win32 compiler, see also
85 \helpref{wxCHECK
\_W32API\_VERSION}{wxcheckw32apiversion
}}
86 \twocolitem{\_\_MWERKS\_\_}{CodeWarrior MetroWerks compiler
}
87 \twocolitem{\_\_SUNCC\_\_}{Sun CC
}
88 \twocolitem{\_\_SYMANTECC\_\_}{Symantec C++
}
89 \twocolitem{\_\_VISAGECPP\_\_}{IBM Visual Age (OS/
2)
}
90 \twocolitem{\_\_VISUALC\_\_}{Microsoft Visual C++. The value of this macro
91 corresponds to the compiler version: $
1020$ for $
4.2$ (the first supported
92 version), $
1100$ for $
5.0$, $
1200$ for $
6.0$ and so on
}
93 \twocolitem{\_\_XLC\_\_}{AIX compiler
}
94 \twocolitem{\_\_WATCOMC\_\_}{Watcom C++. The value of this macro corresponds to
95 the compiler version, $
1100$ is $
11.0$ and $
1200$ is OpenWatcom.
}
98 \subsection{Miscellaneous
}
100 \begin{twocollist
}\itemsep=
0pt
101 \twocolitem{\_\_WXDEBUG\_\_}{defined in debug mode, undefined in release mode
}
102 \twocolitem{wxUSE
\_XXX}{if defined as $
1$, feature XXX is active
103 (the symbols of this form are always defined, use #if and not #ifdef to test