#ifndef _WX_OBJECTH__
#define _WX_OBJECTH__
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "object.h"
#endif
, m_next(sm_first)
{ sm_first = this; }
- ~wxClassInfo()
- {
- if (sm_first == this)
- {
- sm_first = m_next;
- }
- else
- {
- wxClassInfo * info = sm_first;
- while (info)
- {
- if (info->m_next == this)
- {
- info->m_next = m_next;
- break;
- }
- info = info->m_next;
- }
- }
- }
+ ~wxClassInfo();
wxObject *CreateObject() { return m_objectConstructor ? (*m_objectConstructor)() : 0; }
// to be replaced by dynamic_cast<> in the future
#define wxDynamicCast(obj, className) \
- (className *) wxCheckDynamicCast((wxObject*)(obj), &className::sm_class##className)
+ ((className *) wxCheckDynamicCast((wxObject*)(obj), &className::sm_class##className))
// The 'this' pointer is always true, so use this version
// to cast the this pointer and avoid compiler warnings.
class WXDLLEXPORT wxObjectRefData
{
- friend class wxObject;
+ friend class WXDLLEXPORT wxObject;
public:
wxObjectRefData() : m_count(1) { }