From: Stefan Csomor Date: Sun, 24 Aug 2003 15:22:07 +0000 (+0000) Subject: linkage corrections, destructors added X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/1c263d56675aa7e75115d2380515a7a539f5a880 linkage corrections, destructors added git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/flags.h b/include/wx/flags.h index c5b44e7e76..e251ed7da2 100644 --- a/include/wx/flags.h +++ b/include/wx/flags.h @@ -158,7 +158,7 @@ private : }; #define WX_DEFINE_FLAGS( flags ) \ - struct flags \ + struct WXDLLEXPORT flags \ {\ flags(long data=0) :m_data(data) {} \ long m_data ;\ diff --git a/include/wx/xti.h b/include/wx/xti.h index d4ee06e0e2..357dab4b1a 100644 --- a/include/wx/xti.h +++ b/include/wx/xti.h @@ -255,7 +255,7 @@ void wxFlagsFromString(const wxString &s , e &data ) wxArrayString array ; wxSetStringToArray( s , array ) ; wxString flag; - for ( int i = 0 ; i < array.Count() ; ++i ) + for ( size_t i = 0 ; i < array.Count() ; ++i ) { flag = array[i] ; int ivalue ; @@ -705,6 +705,7 @@ class wxSetter##property : public wxSetter \ { \ public: \ wxSetter##property() : wxSetter( #setterMethod ) {} \ + ~wxSetter() {} \ void Set( wxObject *object, const wxxVariant &variantValue ) const \ { \ Klass *obj = dynamic_cast(object) ; \ @@ -720,6 +721,7 @@ class wxGetter##property : public wxGetter \ { \ public : \ wxGetter##property() : wxGetter( #gettermethod ) {} \ + ~wxGetter() {} \ void Get( const wxObject *object , wxxVariant &result) const \ { \ const Klass *obj = dynamic_cast(object) ; \ @@ -732,6 +734,7 @@ class wxAdder##property : public wxAdder \ { \ public: \ wxAdder##property() : wxAdder( #addermethod ) {} \ + ~wxAdder() {} \ void Add( wxObject *object, const wxxVariant &variantValue ) const \ { \ Klass *obj = dynamic_cast(object) ; \ @@ -747,6 +750,7 @@ class wxCollectionGetter##property : public wxCollectionGetter \ { \ public : \ wxCollectionGetter##property() : wxCollectionGetter( #gettermethod ) {} \ + ~wxCollectionGetter() {} \ void Get( const wxObject *object , wxxVariantArray &result) const \ { \ const Klass *obj = dynamic_cast(object) ; \ @@ -893,6 +897,8 @@ public : Insert(iter); } + ~wxPropertyInfo() ; + // return the class this property is declared in const wxClassInfo* GetDeclaringClass() const { return m_itsClass ; } @@ -1049,6 +1055,8 @@ public : } } + ~wxHandlerInfo() ; + // return the name of this handler const wxString& GetName() const { return m_name ; } @@ -1354,6 +1362,8 @@ typedef bool (*wxObjectStreamingCallback) ( const wxObject *, wxWriter * , wxPer class WXDLLIMPEXP_BASE wxClassInfo { + friend class WXDLLEXPORT wxPropertyInfo ; + friend class WXDLLEXPORT wxHandlerInfo ; public: wxClassInfo(const wxClassInfo **_Parents, const wxChar *_UnitName, diff --git a/include/wx/xtistrm.h b/include/wx/xtistrm.h index 4fa90d91f7..d24ea83dec 100644 --- a/include/wx/xtistrm.h +++ b/include/wx/xtistrm.h @@ -43,10 +43,10 @@ Main interfaces for streaming out objects. // or modify the value before it is streamed-out. // ---------------------------------------------------------------------------- -class wxWriter ; -class wxReader ; +class WXDLLIMPEXP_BASE wxWriter ; +class WXDLLIMPEXP_BASE wxReader ; -class wxPersister +class WXDLLIMPEXP_BASE wxPersister { public : // will be called before an object is written, may veto by returning false @@ -74,7 +74,7 @@ public : const wxObject *&WXUNUSED(eventSink) , const wxHandlerInfo* &WXUNUSED(handlerInfo) ) { } } ; -class wxWriter : public wxObject +class WXDLLIMPEXP_BASE wxWriter : public wxObject { public : wxWriter() ; @@ -152,14 +152,14 @@ private : Streaming callbacks for depersisting XML to code, or running objects */ -class wxDepersister ; +class WXDLLIMPEXP_BASE wxDepersister ; /* wxReader handles streaming in a class from a arbitrary format. While walking through it issues calls out to interfaces to depersist the guts from the underlying storage format. */ -class wxReader : public wxObject +class WXDLLIMPEXP_BASE wxReader : public wxObject { public : wxReader() ; @@ -185,7 +185,7 @@ private : // When generating code, these will just create statements of C++ // code to create the objects. -class wxDepersister +class WXDLLIMPEXP_BASE wxDepersister { public : // allocate the new object on the heap, that object will have the passed in ID @@ -246,7 +246,8 @@ wxRuntimeDepersister implements the callbacks that will depersist an object into a running memory image, as opposed to writing C++ initialization code to bring the object to life. */ -class wxRuntimeDepersister : public wxDepersister + +class WXDLLIMPEXP_BASE wxRuntimeDepersister : public wxDepersister { struct wxRuntimeDepersisterInternal ; wxRuntimeDepersisterInternal * m_data ; @@ -314,12 +315,13 @@ public : /* wxDepersisterCode implements the callbacks that will depersist -an object into a C++ initialization function. +an object into a C++ initialization function. this will move to +a utility lib soon */ -class wxTextOutputStream ; +class WXDLLIMPEXP_BASE wxTextOutputStream ; -class wxCodeDepersister : public wxDepersister +class WXDLLIMPEXP_BASE wxCodeDepersister : public wxDepersister { private : struct wxCodeDepersisterInternal ; diff --git a/include/wx/xtixml.h b/include/wx/xtixml.h index a61129dfcb..7ddda9032e 100644 --- a/include/wx/xtixml.h +++ b/include/wx/xtixml.h @@ -22,9 +22,9 @@ #include "wx/xtistrm.h" -class wxXmlNode ; +class WXDLLIMPEXP_XML wxXmlNode ; -class wxXmlWriter : public wxWriter +class WXDLLIMPEXP_XML wxXmlWriter : public wxWriter { public : @@ -84,7 +84,7 @@ private : wxXmlReader handles streaming in a class from XML */ -class wxXmlReader : public wxReader +class WXDLLIMPEXP_XML wxXmlReader : public wxReader { public: wxXmlReader(wxXmlNode *parent) { m_parent = parent ; }