]> git.saurik.com Git - wxWidgets.git/blame - docs/doxygen/mainpages/cat_macros.h
delete wxNativeContainerWindow when the native window is destroyed, even if this...
[wxWidgets.git] / docs / doxygen / mainpages / cat_macros.h
CommitLineData
f4463614
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: cat_macros.h
3// Purpose: Macros-by-category page of the Doxygen manual
4// Author: wxWidgets team
5// RCS-ID: $Id$
6// Licence: wxWindows license
7/////////////////////////////////////////////////////////////////////////////
8
9
10/*!
11
12 @page page_macro_cat Macros by category
13
14 A classification of wxWidgets macros by category.
15
16 @li @ref page_macro_cat_version
17 @li @ref page_macro_cat_misc
18 @li @ref page_macro_cat_byteorder
19 @li @ref page_macro_cat_rtti
20 @li @ref page_macro_cat_debugging
21
22
23 <hr>
24
25
26
27 @section page_macro_cat_version Version macros
28
29 The following constants are defined in wxWidgets:
30
31 @li @c wxMAJOR_VERSION is the major version of wxWidgets
32 @li @c wxMINOR_VERSION is the minor version of wxWidgets
33 @li @c wxRELEASE_NUMBER is the release number
34 @li @c wxSUBRELEASE_NUMBER is the subrelease number which is @c 0
35 for all official releases
36
37 For example, the values or these constants for wxWidgets 2.8.7
38 are 2, 8, 7 and 0.
39
40 Additionally, @c wxVERSION_STRING is a user-readable string containing
41 the full wxWidgets version and @c wxVERSION_NUMBER is a combination of the
42 three version numbers above: for 2.1.15, it is 2115 and it is 2200 for
43 wxWidgets 2.2.
44
45 The subrelease number is only used for the sources in between official releases
46 and so normally is not useful.
47
48 @header{wx/version.h}
49 @header{wx/defs.h}
50
51 @li wxCHECK_GCC_VERSION
52 @li wxCHECK_SUNCC_VERSION
53 @li wxCHECK_VERSION
54 @li wxCHECK_VERSION_FULL
55 @li wxCHECK_VISUALC_VERSION
56 @li wxCHECK_W32API_VERSION
57
58
59 @section page_macro_cat_misc Miscellaneous macros
60
61 @header{FIXME}
62
63 @li wxCONCAT
64 @li wxDECLARE_APP
65 @li wxDYNLIB_FUNCTION
66 @li wxDEPRECATED
67 @li wxDEPRECATED_BUT_USED_INTERNALLY
68 @li wxDEPRECATED_INLINE
69 @li wxEXPLICIT
70 @li wxON_BLOCK_EXIT
71 @li wxON_BLOCK_EXIT_OBJ
72 @li wxSTRINGIZE
73 @li wxSTRINGIZE_T
74 @li wxSUPPRESS_GCC_PRIVATE_DTOR_WARNING
75 @li __WXFUNCTION__
29d21088
FM
76 @li wxS
77 @li wxT
78 @li wxTRANSLATE
79 @li _
80 @li wxPLURAL
81 @li _T
82 @li WXTRACE
83 @li WXTRACELEVEL
f4463614
FM
84
85
86 @section page_macro_cat_byteorder Byte order macros
87
88 @header{FIXME}
89
90 The endian-ness issues (that is the difference between big-endian
91 and little-endian architectures) are important for the portable
92 programs working with the external binary data (for example, data
93 files or data coming from network) which is usually in some fixed,
94 platform-independent format.
95
96 The macros are helpful for transforming the data to the correct format.
97
98 @li wxINTXX_SWAP_ALWAYS
99 @li wxINTXX_SWAP_ON_BE
100 @li wxINTXX_SWAP_ON_LE
101 @li wxFORCE_LINK_THIS_MODULE
102 @li wxFORCE_LINK_MODULE
103 @li wxIMPLEMENT_APP
104
105
106 @section page_macro_cat_rtti RTTI macros
107
108 wxWidgets uses its own RTTI ("run-time type identification") system
109 which predates the current standard C++ RTTI and so is kept for backwards
110 compatibility reasons but also because it allows some things which the
111 standard RTTI doesn't directly support (such as creating a class from its name).
112 The standard C++ RTTI can be used in the user code without any problems and in
113 general you shouldn't need to use the functions and the macros in this section
114 unless you are thinking of modifying or adding any wxWidgets classes.
115
29d21088 116 @sa
f4463614
FM
117 @ref overview_rtti
118
119 @li CLASSINFO
120 @li DECLARE_ABSTRACT_CLASS
121 @li DECLARE_APP
122 @li DECLARE_CLASS
123 @li DECLARE_DYNAMIC_CLASS
124 @li IMPLEMENT_ABSTRACT_CLASS
125 @li IMPLEMENT_ABSTRACT_CLASS2
126 @li IMPLEMENT_APP
127 @li IMPLEMENT_CLASS
128 @li IMPLEMENT_CLASS2
129 @li IMPLEMENT_DYNAMIC_CLASS
130 @li IMPLEMENT_DYNAMIC_CLASS2
131 @li wxConstCast
132 @li ::wxCreateDynamicObject
133 @li WXDEBUG_NEW
134 @li wxDynamicCast
135 @li wxDynamicCastThis
136 @li wxStaticCast
137 @li wx_const_cast
138 @li wx_reinterpret_cast
139 @li wx_static_cast
140 @li wx_truncate_cast
141
142
29d21088 143 @section page_macro_cat_debugging Debugging macros
f4463614
FM
144
145 Useful macros and functions for error checking and defensive programming.
146 wxWidgets defines three families of the assert-like macros: the wxASSERT
147 and wxFAIL macros only do anything if __WXDEBUG__ is defined (in other words,
148 in the debug build) but disappear completely in the release build. On the other
149 hand, the wxCHECK macros stay event in release builds but a check failure doesn't
150 generate any user-visible effects then. Finally, the compile time assertions
151 don't happen during the run-time but result in the compilation error messages
152 if the condition they check fail.
153
154 @header{wx/debug.h}
155
156 @li wxASSERT
157 @li wxASSERT_MIN_BITSIZE
158 @li wxASSERT_MSG
159 @li wxCOMPILE_TIME_ASSERT
160 @li wxCOMPILE_TIME_ASSERT2
161 @li wxFAIL
162 @li wxFAIL_MSG
163 @li wxCHECK
164 @li wxCHECK_MSG
165 @li wxCHECK_RET
166 @li wxCHECK2
167 @li wxCHECK2_MSG
168
169
170*/