]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/object.h
wxCocoa: CodeWarrior (like GCC) mangles struct X and @class X identically.
[wxWidgets.git] / include / wx / object.h
index 2f5ffd3b5e97e50b1bff8731673c072d5778374b..e91d7b9fe6e977f05ba40d31a472b996eaaac064 100644 (file)
@@ -83,8 +83,10 @@ public:
     wxObject *CreateObject() { return m_objectConstructor ? (*m_objectConstructor)() : 0; }
 
     const wxChar       *GetClassName() const { return m_className; }
-    const wxChar       *GetBaseClassName1() const { return m_baseInfo1->GetClassName(); }
-    const wxChar       *GetBaseClassName2() const { return m_baseInfo2->GetClassName(); }
+    const wxChar       *GetBaseClassName1() const
+        { return m_baseInfo1 ? m_baseInfo1->GetClassName() : NULL; }
+    const wxChar       *GetBaseClassName2() const
+        { return m_baseInfo2 ? m_baseInfo2->GetClassName() : NULL; }
     const wxClassInfo  *GetBaseClass1() const { return m_baseInfo1; }
     const wxClassInfo  *GetBaseClass2() const { return m_baseInfo2; }
     int                 GetSize() const { return m_objectSize; }
@@ -535,13 +537,14 @@ inline wxObject *wxCheckDynamicCast(wxObject *obj, wxClassInfo *classInfo)
 #if wxUSE_EXTENDED_RTTI
 class WXDLLIMPEXP_BASE wxDynamicObject : public wxObject
 {
+    friend class WXDLLIMPEXP_BASE wxDynamicClassInfo ;
 public:
     // instantiates this object with an instance of its superclass
     wxDynamicObject(wxObject* superClassInstance, const wxDynamicClassInfo *info) ;
     ~wxDynamicObject();
 
-    void SetProperty (const wxChar *PropertyName, const wxxVariant &Value);
-    wxxVariant GetProperty (const wxChar *PropertyName) const ;
+    void SetProperty (const wxChar *propertyName, const wxxVariant &value);
+    wxxVariant GetProperty (const wxChar *propertyName) const ;
 
     // get the runtime identity of this object
     wxClassInfo *GetClassInfo() const
@@ -554,6 +557,12 @@ public:
         return m_superClassInstance ;
     }
 private :
+    // removes an existing runtime-property
+    void RemoveProperty( const wxChar *propertyName ) ;
+
+    // renames an existing runtime-property
+    void RenameProperty( const wxChar *oldPropertyName , const wxChar *newPropertyName ) ;
+
     wxObject *m_superClassInstance ;
     const wxDynamicClassInfo *m_classInfo;
     struct wxDynamicObjectInternal;