X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cbca59a8fb340a4ed288eed5fad9589df63c49ec..f6669958924c3c3833e2932b65598b06073d2e65:/include/wx/xti.h diff --git a/include/wx/xti.h b/include/wx/xti.h index 15abee18a2..dbbfc2d09a 100644 --- a/include/wx/xti.h +++ b/include/wx/xti.h @@ -50,11 +50,13 @@ class WXDLLIMPEXP_FWD_BASE wxHashTable_Node; class WXDLLIMPEXP_FWD_BASE wxStringToAnyHashMap; class WXDLLIMPEXP_FWD_BASE wxPropertyInfoMap; class WXDLLIMPEXP_FWD_BASE wxPropertyAccessor; +class WXDLLIMPEXP_FWD_BASE wxObjectAllocatorAndCreator; +class WXDLLIMPEXP_FWD_BASE wxObjectAllocator; + #define wx_dynamic_cast(t, x) dynamic_cast(x) #include "wx/xtitypes.h" -#include "wx/xtictor.h" #include "wx/xtihandler.h" // ---------------------------------------------------------------------------- @@ -94,7 +96,7 @@ typedef bool (*wxObjectStreamingCallback) ( const wxObject *, wxObjectWriter *, class WXDLLIMPEXP_BASE wxClassInfo { friend class WXDLLIMPEXP_BASE wxPropertyInfo; - friend class WXDLLIMPEXP_BASE wxHandlerInfo; + friend class /* WXDLLIMPEXP_BASE */ wxHandlerInfo; friend wxObject *wxCreateDynamicObject(const wxString& name); public: @@ -205,9 +207,8 @@ public: // direct construction call for classes that cannot construct instances via alloc/create wxObject *ConstructObject(int ParamCount, wxAny *Params) const; - bool NeedsDirectConstruction() const - { return wx_dynamic_cast(wxObjectAllocator*, m_constructor) != NULL; } - + bool NeedsDirectConstruction() const; + const wxChar *GetClassName() const { return m_className; } const wxChar *GetBaseClassName1() const @@ -332,7 +333,6 @@ private: wxPropertyInfoFn m_firstPropertyFn; wxHandlerInfoFn m_firstHandlerFn; - mutable bool m_firstInited; protected: void EnsureInfosInited() const @@ -350,6 +350,8 @@ protected: mutable wxHandlerInfo* m_firstHandler; private: + mutable bool m_firstInited; + const wxClassInfo** m_parents; const wxChar* m_unitName; @@ -464,28 +466,5 @@ private: #define wxDECLARE_ABSTRACT_CLASS(name) _DECLARE_DYNAMIC_CLASS(name) #define wxCLASSINFO(name) (&name::ms_classInfo) -// -------------------------------------------------------------------------- -// Collection Support -// -------------------------------------------------------------------------- - -template void wxListCollectionToAnyList( - const collection_t& coll, wxAnyList &value ) -{ - for ( collection_t::compatibility_iterator current = coll.GetFirst(); current; - current = current->GetNext() ) - { - value.Append( new wxAny(current->GetData()) ); - } -} - -template void wxArrayCollectionToVariantArray( - const collection_t& coll, wxAnyList &value ) -{ - for( size_t i = 0; i < coll.GetCount(); i++ ) - { - value.Append( new wxAny(coll[i]) ); - } -} - #endif // wxUSE_EXTENDED_RTTI #endif // _WX_XTIH__