X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/73fbb031f560f00a859d12c2eba133551f807622..2c01d33555e3125057f4575ca7d0d2aba93f421f:/include/wx/object.h diff --git a/include/wx/object.h b/include/wx/object.h index 5c5393eb96..35ff626b4e 100644 --- a/include/wx/object.h +++ b/include/wx/object.h @@ -13,10 +13,6 @@ #ifndef _WX_OBJECTH__ #define _WX_OBJECTH__ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "object.h" -#endif - // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- @@ -191,7 +187,7 @@ inline void wxClassInfo::CleanUpClasses() {} wxIMPLEMENT_CLASS_COMMON(name, basename, NULL, func) #define wxIMPLEMENT_CLASS_COMMON2(name, basename1, basename2, func) \ - wxIMPLEMENT_CLASS_COMMON(name, basename1, &basename2::ms_classInfo) + wxIMPLEMENT_CLASS_COMMON(name, basename1, &basename2::ms_classInfo, func) // ----------------------------------- // for concrete classes @@ -330,7 +326,8 @@ inline void* wxCheckCast(void *ptr) ((className *)wxCheckCast(wxDynamicCast(obj, className))) #else // !__WXDEBUG__ -#define wxStaticCast(obj, className) wx_static_cast(className *, obj) +#define wxStaticCast(obj, className) \ + wx_const_cast(className *, wx_static_cast(const className *, obj)) #endif // __WXDEBUG__ @@ -390,7 +387,7 @@ inline void* wxCheckCast(void *ptr) #endif // wxUSE_ARRAY_MEMORY_OPERATORS -#endif // WXDEBUG && wxUSE_MEMORY_TRACING +#endif // __WXDEBUG__ && wxUSE_MEMORY_TRACING // ---------------------------------------------------------------------------- // wxObject: the root class of wxWidgets object hierarchy @@ -408,9 +405,9 @@ public: virtual ~wxObject() { UnRef(); } wxObject(const wxObject& other) - { - InitFrom(other); - } + { + InitFrom(other); + } wxObject& operator=(const wxObject& other) { @@ -467,6 +464,18 @@ public: // destroy a reference void UnRef(); + + // Reserved for future use + virtual void ReservedObjectFunc1() {} + virtual void ReservedObjectFunc2() {} + virtual void ReservedObjectFunc3() {} + virtual void ReservedObjectFunc4() {} + virtual void ReservedObjectFunc5() {} + virtual void ReservedObjectFunc6() {} + virtual void ReservedObjectFunc7() {} + virtual void ReservedObjectFunc8() {} + virtual void ReservedObjectFunc9() {} + protected: // ensure that our data is not shared with anybody else: if we have no // data, it is created using CreateRefData() below, if we have shared data