linkage corrections, destructors added

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2003-08-24 15:22:07 +00:00
parent 7d2d5d8195
commit 1c263d5667
4 changed files with 28 additions and 16 deletions

View File

@@ -158,7 +158,7 @@ private :
}; };
#define WX_DEFINE_FLAGS( flags ) \ #define WX_DEFINE_FLAGS( flags ) \
struct flags \ struct WXDLLEXPORT flags \
{\ {\
flags(long data=0) :m_data(data) {} \ flags(long data=0) :m_data(data) {} \
long m_data ;\ long m_data ;\

View File

@@ -255,7 +255,7 @@ void wxFlagsFromString(const wxString &s , e &data )
wxArrayString array ; wxArrayString array ;
wxSetStringToArray( s , array ) ; wxSetStringToArray( s , array ) ;
wxString flag; wxString flag;
for ( int i = 0 ; i < array.Count() ; ++i ) for ( size_t i = 0 ; i < array.Count() ; ++i )
{ {
flag = array[i] ; flag = array[i] ;
int ivalue ; int ivalue ;
@@ -705,6 +705,7 @@ class wxSetter##property : public wxSetter \
{ \ { \
public: \ public: \
wxSetter##property() : wxSetter( #setterMethod ) {} \ wxSetter##property() : wxSetter( #setterMethod ) {} \
~wxSetter() {} \
void Set( wxObject *object, const wxxVariant &variantValue ) const \ void Set( wxObject *object, const wxxVariant &variantValue ) const \
{ \ { \
Klass *obj = dynamic_cast<Klass*>(object) ; \ Klass *obj = dynamic_cast<Klass*>(object) ; \
@@ -720,6 +721,7 @@ class wxGetter##property : public wxGetter \
{ \ { \
public : \ public : \
wxGetter##property() : wxGetter( #gettermethod ) {} \ wxGetter##property() : wxGetter( #gettermethod ) {} \
~wxGetter() {} \
void Get( const wxObject *object , wxxVariant &result) const \ void Get( const wxObject *object , wxxVariant &result) const \
{ \ { \
const Klass *obj = dynamic_cast<const Klass*>(object) ; \ const Klass *obj = dynamic_cast<const Klass*>(object) ; \
@@ -732,6 +734,7 @@ class wxAdder##property : public wxAdder \
{ \ { \
public: \ public: \
wxAdder##property() : wxAdder( #addermethod ) {} \ wxAdder##property() : wxAdder( #addermethod ) {} \
~wxAdder() {} \
void Add( wxObject *object, const wxxVariant &variantValue ) const \ void Add( wxObject *object, const wxxVariant &variantValue ) const \
{ \ { \
Klass *obj = dynamic_cast<Klass*>(object) ; \ Klass *obj = dynamic_cast<Klass*>(object) ; \
@@ -747,6 +750,7 @@ class wxCollectionGetter##property : public wxCollectionGetter \
{ \ { \
public : \ public : \
wxCollectionGetter##property() : wxCollectionGetter( #gettermethod ) {} \ wxCollectionGetter##property() : wxCollectionGetter( #gettermethod ) {} \
~wxCollectionGetter() {} \
void Get( const wxObject *object , wxxVariantArray &result) const \ void Get( const wxObject *object , wxxVariantArray &result) const \
{ \ { \
const Klass *obj = dynamic_cast<const Klass*>(object) ; \ const Klass *obj = dynamic_cast<const Klass*>(object) ; \
@@ -893,6 +897,8 @@ public :
Insert(iter); Insert(iter);
} }
~wxPropertyInfo() ;
// return the class this property is declared in // return the class this property is declared in
const wxClassInfo* GetDeclaringClass() const { return m_itsClass ; } const wxClassInfo* GetDeclaringClass() const { return m_itsClass ; }
@@ -1049,6 +1055,8 @@ public :
} }
} }
~wxHandlerInfo() ;
// return the name of this handler // return the name of this handler
const wxString& GetName() const { return m_name ; } const wxString& GetName() const { return m_name ; }
@@ -1354,6 +1362,8 @@ typedef bool (*wxObjectStreamingCallback) ( const wxObject *, wxWriter * , wxPer
class WXDLLIMPEXP_BASE wxClassInfo class WXDLLIMPEXP_BASE wxClassInfo
{ {
friend class WXDLLEXPORT wxPropertyInfo ;
friend class WXDLLEXPORT wxHandlerInfo ;
public: public:
wxClassInfo(const wxClassInfo **_Parents, wxClassInfo(const wxClassInfo **_Parents,
const wxChar *_UnitName, const wxChar *_UnitName,

View File

@@ -43,10 +43,10 @@ Main interfaces for streaming out objects.
// or modify the value before it is streamed-out. // or modify the value before it is streamed-out.
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
class wxWriter ; class WXDLLIMPEXP_BASE wxWriter ;
class wxReader ; class WXDLLIMPEXP_BASE wxReader ;
class wxPersister class WXDLLIMPEXP_BASE wxPersister
{ {
public : public :
// will be called before an object is written, may veto by returning false // 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) ) { } const wxObject *&WXUNUSED(eventSink) , const wxHandlerInfo* &WXUNUSED(handlerInfo) ) { }
} ; } ;
class wxWriter : public wxObject class WXDLLIMPEXP_BASE wxWriter : public wxObject
{ {
public : public :
wxWriter() ; wxWriter() ;
@@ -152,14 +152,14 @@ private :
Streaming callbacks for depersisting XML to code, or running objects 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 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. 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 : public :
wxReader() ; wxReader() ;
@@ -185,7 +185,7 @@ private :
// When generating code, these will just create statements of C++ // When generating code, these will just create statements of C++
// code to create the objects. // code to create the objects.
class wxDepersister class WXDLLIMPEXP_BASE wxDepersister
{ {
public : public :
// allocate the new object on the heap, that object will have the passed in ID // 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 an object into a running memory image, as opposed to writing
C++ initialization code to bring the object to life. C++ initialization code to bring the object to life.
*/ */
class wxRuntimeDepersister : public wxDepersister
class WXDLLIMPEXP_BASE wxRuntimeDepersister : public wxDepersister
{ {
struct wxRuntimeDepersisterInternal ; struct wxRuntimeDepersisterInternal ;
wxRuntimeDepersisterInternal * m_data ; wxRuntimeDepersisterInternal * m_data ;
@@ -314,12 +315,13 @@ public :
/* /*
wxDepersisterCode implements the callbacks that will depersist 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 : private :
struct wxCodeDepersisterInternal ; struct wxCodeDepersisterInternal ;

View File

@@ -22,9 +22,9 @@
#include "wx/xtistrm.h" #include "wx/xtistrm.h"
class wxXmlNode ; class WXDLLIMPEXP_XML wxXmlNode ;
class wxXmlWriter : public wxWriter class WXDLLIMPEXP_XML wxXmlWriter : public wxWriter
{ {
public : public :
@@ -84,7 +84,7 @@ private :
wxXmlReader handles streaming in a class from XML wxXmlReader handles streaming in a class from XML
*/ */
class wxXmlReader : public wxReader class WXDLLIMPEXP_XML wxXmlReader : public wxReader
{ {
public: public:
wxXmlReader(wxXmlNode *parent) { m_parent = parent ; } wxXmlReader(wxXmlNode *parent) { m_parent = parent ; }