]> git.saurik.com Git - wxWidgets.git/commitdiff
Fix XTI compilation in STL build.
authorVadim Zeitlin <vadim@wxwidgets.org>
Wed, 30 Mar 2011 14:15:53 +0000 (14:15 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Wed, 30 Mar 2011 14:15:53 +0000 (14:15 +0000)
Use explicit c_str() calls in XTI code as implicit conversion to "const char
*" doesn't exist in STL build.

This fixes compilation problems when wxUSE_EXTENDED_RTTI && wxUSE_STL.

Closes #13087.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/xtitypes.h
src/common/xti.cpp
src/common/xtistrm.cpp
src/common/xtixml.cpp

index bbf9a69d03fdc88eac94f8a13450c16ad6aa2aff..0879897f537da277d01f8246c9a9e067701e668b 100644 (file)
@@ -88,7 +88,7 @@ private:
     wxEnumData s_enumData##e( s_enumDataMembers##e );                   \
     wxEnumData *wxGetEnumData(e) { return &s_enumData##e; }             \
     template<> void wxStringReadValue(const wxString& s, e &data )     \
-        { data = (e) s_enumData##e.GetEnumMemberValue(s); }             \
+        { data = (e) s_enumData##e.GetEnumMemberValue(s.c_str()); }     \
     template<> void wxStringWriteValue(wxString &s, const e &data )    \
         { s = s_enumData##e.GetEnumMemberName((int)data); }             \
     void FromLong##e( long data, wxAny& result )                  \
@@ -202,7 +202,7 @@ void wxFlagsFromString(const wxString &s, e &data )
     {
         flag = array[i];
         int ivalue;
-        if ( edata->HasEnumMemberValue( flag, &ivalue ) )
+        if ( edata->HasEnumMemberValue( flag.c_str(), &ivalue ) )
         {
             data.m_data |= ivalue;
         }
index 3287e237874a65c5bc1cf008863e1650821bc3c0..f207253ad7d48941d36496959c2ed31e108a5a8a 100644 (file)
@@ -931,14 +931,14 @@ void wxGenericPropertyAccessor::SetProperty(wxObject *object, const wxAny &value
 {
     wxDynamicObject* dynobj = wx_dynamic_cast(wxDynamicObject*, object);
     wxASSERT_MSG( dynobj, wxT("cannot call wxDynamicClassInfo::SetProperty on an object other than wxDynamicObject") );
-    dynobj->SetProperty(m_propertyName, value );
+    dynobj->SetProperty(m_propertyName.c_str(), value );
 }
 
 void wxGenericPropertyAccessor::GetProperty(const wxObject *object, wxAny& value) const
 {
     const wxDynamicObject* dynobj = wx_dynamic_cast( const wxDynamicObject * ,  object );
     wxASSERT_MSG( dynobj, wxT("cannot call wxDynamicClassInfo::SetProperty on an object other than wxDynamicObject") );
-    value = dynobj->GetProperty( m_propertyName );
+    value = dynobj->GetProperty( m_propertyName.c_str() );
 }
 
 // ----------------------------------------------------------------------------
index a366c64d96d2d5baac3bba70559f8cc5cd34663a..9f0860b933594d044ebcf9cd3234850896e78a82 100644 (file)
@@ -577,7 +577,7 @@ void wxObjectRuntimeReaderCallback::SetProperty(int objectID,
 {
     wxObject *o;
     o = m_data->GetObject(objectID);
-    classInfo->SetProperty( o, propertyInfo->GetName(), value );
+    classInfo->SetProperty( o, propertyInfo->GetName().c_str(), value );
 }
 
 void wxObjectRuntimeReaderCallback::SetPropertyAsObject(int objectID,
@@ -599,7 +599,7 @@ void wxObjectRuntimeReaderCallback::SetPropertyAsObject(int objectID,
         valo = dynvalo->GetSuperClassInstance();
     }
 
-    classInfo->SetProperty( o, propertyInfo->GetName()
+    classInfo->SetProperty( o, propertyInfo->GetName().c_str(),
                             valClassInfo->ObjectPtrToAny(valo) );
 }
 
@@ -650,7 +650,7 @@ void wxObjectRuntimeReaderCallback::AddToPropertyCollection( int objectID,
 {
     wxObject *o;
     o = m_data->GetObject(objectID);
-    classInfo->AddToPropertyCollection( o, propertyInfo->GetName(), value );
+    classInfo->AddToPropertyCollection( o, propertyInfo->GetName().c_str(), value );
 }
 
 void wxObjectRuntimeReaderCallback::AddToPropertyCollectionAsObject(int objectID,
@@ -674,7 +674,7 @@ void wxObjectRuntimeReaderCallback::AddToPropertyCollectionAsObject(int objectID
         valo = dynvalo->GetSuperClassInstance();
     }
 
-    classInfo->AddToPropertyCollection( o, propertyInfo->GetName()
+    classInfo->AddToPropertyCollection( o, propertyInfo->GetName().c_str(),
                                         valClassInfo->ObjectPtrToAny(valo) );
 }
 
index 2db3aac9b2539a76a29e9c8ce198d9b554fa8a41..33fb30d3415bc993315d3b32eb45538d593795ff 100644 (file)
@@ -483,7 +483,7 @@ int wxObjectXmlReader::ReadComponent(wxXmlNode *node, wxObjectReaderCallback *ca
                             wxClassInfo* sinkClassInfo = GetObjectClassInfo( sinkOid );
 
                             callbacks->SetConnect( objectID, classInfo, pi, sinkClassInfo,
-                                sinkClassInfo->FindHandlerInfo(handlerName),  sinkOid );
+                                sinkClassInfo->FindHandlerInfo(handlerName.c_str()),  sinkOid );
                         }
                         else
                         {