class WXDLLIMPEXP_BASE wxPersister
{
public :
+ virtual ~wxPersister() {}
+
// will be called before an object is written, may veto by returning false
virtual bool BeforeWriteObject( wxWriter *WXUNUSED(writer) , const wxObject *WXUNUSED(object) , const wxClassInfo *WXUNUSED(classInfo) , wxxVariantArray &WXUNUSED(metadata)) { return true ; }
{
public :
wxWriter() ;
- ~wxWriter() ;
+ virtual ~wxWriter() ;
// with this call you start writing out a new top-level object
void WriteObject(const wxObject *object, const wxClassInfo *classInfo , wxPersister *persister , const wxString &name , wxxVariantArray &WXUNUSED(metadata)) ;
{
public :
wxReader() ;
- ~wxReader() ;
+ virtual ~wxReader() ;
// the only thing wxReader knows about is the class info by object ID
wxClassInfo *GetObjectClassInfo(int objectID) ;
class WXDLLIMPEXP_BASE wxDepersister
{
public :
+ virtual ~wxDepersister() {}
+
// allocate the new object on the heap, that object will have the passed in ID
virtual void AllocateObject(int objectID, wxClassInfo *classInfo, wxxVariantArray &metadata) = 0;