From bca6bd3823b9e2ca8200e2c0a4fa8d15bb1d5c9a Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Fri, 7 Jan 2011 22:52:46 +0000 Subject: [PATCH] gcc fixes git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/xti.h | 32 +++++--------------------------- include/wx/xti2.h | 24 ++++++++++++++++++++++++ src/common/xti.cpp | 5 +++++ 3 files changed, 34 insertions(+), 27 deletions(-) diff --git a/include/wx/xti.h b/include/wx/xti.h index 15abee18a2..ba8183a93a 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" // ---------------------------------------------------------------------------- @@ -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 @@ -464,28 +465,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__ diff --git a/include/wx/xti2.h b/include/wx/xti2.h index 24d5cb3203..5786a86f93 100644 --- a/include/wx/xti2.h +++ b/include/wx/xti2.h @@ -58,6 +58,7 @@ private : }; #include "wx/xtiprop.h" +#include "wx/xtictor.h" // ---------------------------------------------------------------------------- // wxIMPLEMENT class macros for concrete classes @@ -239,6 +240,29 @@ template void wxFromStringConverter( const wxString &s, wxAny &v) { T d; wxStringReadValue(s, d); v = wxAny(d); } +// -------------------------------------------------------------------------- +// Collection Support +// -------------------------------------------------------------------------- + +template void wxListCollectionToAnyList( + const collection_t& coll, wxAnyList &value ) +{ + for ( iter 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 #endif // _WX_XTIH2__ diff --git a/src/common/xti.cpp b/src/common/xti.cpp index bd9fd18cca..60b92656e2 100644 --- a/src/common/xti.cpp +++ b/src/common/xti.cpp @@ -732,6 +732,11 @@ wxAny wxClassInfo::ObjectPtrToAny( wxObject* obj) const return m_objectToVariantConverter(obj); } +bool wxClassInfo::NeedsDirectConstruction() const +{ + return wx_dynamic_cast(wxObjectAllocator*, m_constructor) != NULL; +} + // ---------------------------------------------------------------------------- // wxDynamicObject support // ---------------------------------------------------------------------------- -- 2.45.2