wxPAPER_FANFOLD_STD_GERMAN, ///< German Std Fanfold, 8 1/2 by 12 inches
wxPAPER_FANFOLD_LGL_GERMAN, ///< German Legal Fanfold, 8 1/2 by 13 inches
- // Windows 95 Only
+ // wxMSW Only
wxPAPER_ISO_B4, ///< B4 (ISO) 250 x 353 mm
wxPAPER_JAPANESE_POSTCARD, ///< Japanese Postcard 100 x 148 mm
wxPAPER_10X11, ///< 10 x 11 in
wxPAPER_15X11, ///< 15 x 11 in
wxPAPER_ENV_INVITE, ///< Envelope Invite 220 x 220 mm
- wxPAPER_LETTER_EXTRA, ///< Letter Extra 9 \275 x 12 in
- wxPAPER_LEGAL_EXTRA, ///< Legal Extra 9 \275 x 15 in
+ wxPAPER_LETTER_EXTRA, ///< Letter Extra 9.5 x 12 in
+ wxPAPER_LEGAL_EXTRA, ///< Legal Extra 9.5 x 15 in
wxPAPER_TABLOID_EXTRA, ///< Tabloid Extra 11.69 x 18 in
wxPAPER_A4_EXTRA, ///< A4 Extra 9.27 x 12.69 in
- wxPAPER_LETTER_TRANSVERSE, ///< Letter Transverse 8 \275 x 11 in
+ wxPAPER_LETTER_TRANSVERSE, ///< Letter Transverse 8.5 x 11 in
wxPAPER_A4_TRANSVERSE, ///< A4 Transverse 210 x 297 mm
- wxPAPER_LETTER_EXTRA_TRANSVERSE, ///< Letter Extra Transverse 9\275 x 12 in
+ wxPAPER_LETTER_EXTRA_TRANSVERSE, ///< Letter Extra Transverse 9.5 x 12 in
wxPAPER_A_PLUS, ///< SuperA/SuperA/A4 227 x 356 mm
wxPAPER_B_PLUS, ///< SuperB/SuperB/A3 305 x 487 mm
wxPAPER_LETTER_PLUS, ///< Letter Plus 8.5 x 12.69 in
};
-/** @ingroup group_funcmacro_byteorder */
+/** @addtogroup group_funcmacro_byteorder */
//@{
/**
@header{wx/defs.h}
*/
-#define wxINT32_SWAP_ALWAYS( wxInt32 value )
-#define wxUINT32_SWAP_ALWAYS( wxUint32 value )
-#define wxINT16_SWAP_ALWAYS( wxInt16 value )
-#define wxUINT16_SWAP_ALWAYS( wxUint16 value )
+#define wxINT32_SWAP_ALWAYS( wxInt32_value )
+#define wxUINT32_SWAP_ALWAYS( wxUint32_value )
+#define wxINT16_SWAP_ALWAYS( wxInt16_value )
+#define wxUINT16_SWAP_ALWAYS( wxUint16_value )
//@}
-/** @ingroup group_funcmacro_byteorder */
+/** @addtogroup group_funcmacro_byteorder */
//@{
/**
@header{wx/defs.h}
*/
-#define wxINT32_SWAP_ON_BE( wxInt32 value )
-#define wxUINT32_SWAP_ON_BE( wxUint32 value )
-#define wxINT16_SWAP_ON_BE( wxInt16 value )
-#define wxUINT16_SWAP_ON_BE( wxUint16 value )
+#define wxINT32_SWAP_ON_BE( wxInt32_value )
+#define wxUINT32_SWAP_ON_BE( wxUint32_value )
+#define wxINT16_SWAP_ON_BE( wxInt16_value )
+#define wxUINT16_SWAP_ON_BE( wxUint16_value )
//@}
-/** @ingroup group_funcmacro_byteorder */
+/** @addtogroup group_funcmacro_byteorder */
//@{
/**
@header{wx/defs.h}
*/
-#define wxINT32_SWAP_ON_LE( wxInt32 value )
-#define wxUINT32_SWAP_ON_LE( wxUint32 value )
-#define wxINT16_SWAP_ON_LE( wxInt16 value )
-#define wxUINT16_SWAP_ON_LE( wxUint16 value )
+#define wxINT32_SWAP_ON_LE( wxInt32_value )
+#define wxUINT32_SWAP_ON_LE( wxUint32_value )
+#define wxINT16_SWAP_ON_LE( wxInt16_value )
+#define wxUINT16_SWAP_ON_LE( wxUint16_value )
//@}
-/** @ingroup group_funcmacro_misc */
+/** @addtogroup group_funcmacro_misc */
//@{
/**
*/
#define DECLARE_NO_COPY_TEMPLATE_CLASS(classname, arg)
+/**
+ A function which deletes and nulls the pointer.
+
+ This function uses operator delete to free the pointer and also sets it to
+ @NULL. Notice that this does @em not work for arrays, use wxDELETEA() for
+ them.
+
+ @code
+ MyClass *ptr = new MyClass;
+ ...
+ wxDELETE(ptr);
+ wxASSERT(!ptr);
+ @endcode
+
+ @header{wx/defs.h}
+*/
+template <typename T> wxDELETE(T*& ptr);
+
+/**
+ A function which deletes and nulls the pointer.
+
+ This function uses vector operator delete (@c delete[]) to free the array
+ pointer and also sets it to @NULL. Notice that this does @em not work for
+ non-array pointers, use wxDELETE() for them.
+
+ @code
+ MyClass *array = new MyClass[17];
+ ...
+ wxDELETEA(array);
+ wxASSERT(!array);
+ @endcode
+
+ @see wxDELETE()
+
+ @header{wx/defs.h}
+*/
+template <typename T> wxDELETEA(T*& array);
+
/**
This macro can be used around a function declaration to generate warnings
indicating that this function is deprecated (i.e. obsolete and planned to
*/
#define wxSUPPRESS_GCC_PRIVATE_DTOR_WARNING(name)
+/**
+ Swaps the contents of two variables.
+
+ This is similar to std::swap() but can be used even on the platforms where
+ the standard C++ library is not available (if you don't target such
+ platforms, please use std::swap() instead).
+
+ The function relies on type T being copy constructible and assignable.
+
+ Example of use:
+ @code
+ int x = 3,
+ y = 4;
+ wxSwap(x, y);
+ wxASSERT( x == 4 && y == 3 );
+ @endcode
+ */
+template <typename T> wxSwap(T& first, T& second);
+
/**
This macro is the same as the standard C99 @c va_copy for the compilers
which support it or its replacement for those that don't. It must be used