X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/398e314854788981104ad57751e914bcf9681930..b5fe7ca67bf3121959a0b5a59afd00c1708f2f03:/interface/wx/defs.h diff --git a/interface/wx/defs.h b/interface/wx/defs.h index 77c1148ce7..924470bed1 100644 --- a/interface/wx/defs.h +++ b/interface/wx/defs.h @@ -927,9 +927,9 @@ typedef double wxDouble; In such case, this macro can be used to disable the automatic assignment operator generation. - @see DECLARE_NO_COPY_CLASS() + @see wxDECLARE_NO_COPY_CLASS() */ -#define DECLARE_NO_ASSIGN_CLASS(classname) +#define wxDECLARE_NO_ASSIGN_CLASS(classname) /** This macro can be used in a class declaration to disable the generation of @@ -954,27 +954,47 @@ typedef double wxDouble; private: // widgets can't be copied - DECLARE_NO_COPY_CLASS(FooWidget) + wxDECLARE_NO_COPY_CLASS(FooWidget); }; @endcode - Notice that a semicolon should not be used after this macro and that it - changes the access specifier to private internally so it is better to use - it at the end of the class declaration. + Notice that a semicolon must be used after this macro and that it changes + the access specifier to private internally so it is better to use it at the + end of the class declaration. + + @see wxDECLARE_NO_ASSIGN_CLASS(), wxDECLARE_NO_COPY_TEMPLATE_CLASS() */ -#define DECLARE_NO_COPY_CLASS(classname) +#define wxDECLARE_NO_COPY_CLASS(classname) /** - Equivalent of DECLARE_NO_COPY_CLASS() for template classes. + Analog of wxDECLARE_NO_COPY_CLASS() for template classes. This macro can be used for template classes (with a single template - parameter) for the same purpose as DECLARE_NO_COPY_CLASS() is used with the + parameter) for the same purpose as wxDECLARE_NO_COPY_CLASS() is used with the non-template classes. @param classname The name of the template class. @param arg The name of the template parameter. + + @see wxDECLARE_NO_COPY_TEMPLATE_CLASS_2 */ -#define DECLARE_NO_COPY_TEMPLATE_CLASS(classname, arg) +#define wxDECLARE_NO_COPY_TEMPLATE_CLASS(classname, arg) + +/** + Analog of wxDECLARE_NO_COPY_TEMPLATE_CLASS() for templates with 2 + parameters. + + This macro can be used for template classes with two template + parameters for the same purpose as wxDECLARE_NO_COPY_CLASS() is used with + the non-template classes. + + @param classname The name of the template class. + @param arg1 The name of the first template parameter. + @param arg2 The name of the second template parameter. + + @see wxDECLARE_NO_COPY_TEMPLATE_CLASS + */ +#define wxDECLARE_NO_COPY_TEMPLATE_CLASS_2(classname, arg1, arg2) /** A function which deletes and nulls the pointer. @@ -1063,7 +1083,7 @@ template wxDELETEA(T*& array); public: // OldMethod() is deprecated, use NewMethod() instead void NewMethod(); - wxDEPRECATED_INLINE( void OldMethod(), NewMethod() ); + wxDEPRECATED_INLINE( void OldMethod(), NewMethod(); ) }; @endcode @@ -1071,6 +1091,17 @@ template wxDELETEA(T*& array); */ #define wxDEPRECATED_INLINE(func, body) +/** + Combination of wxDEPRECATED_BUT_USED_INTERNALLY() and wxDEPRECATED_INLINE(). + + This macro should be used for deprecated functions called by the library + itself (usually for backwards compatibility reasons) and which are defined + inline. + + @header{wx/defs.h} +*/ +#define wxDEPRECATED_BUT_USED_INTERNALLY_INLINE(func, body) + /** @c wxEXPLICIT is a macro which expands to the C++ @c explicit keyword if the compiler supports it or nothing otherwise. Thus, it can be used even in