+class WXDLLIMPEXP_BASE wxObjectPropertyWriter: public wxObjectWriterFunctor
+{
+public:
+ wxObjectPropertyWriter(const wxClassTypeInfo* cti,
+ wxObjectWriterCallback *writercallback,
+ wxObjectWriter* writer,
+ wxStringToAnyHashMap &props) :
+ m_cti(cti),m_persister(writercallback),m_writer(writer),m_props(props)
+ {}
+
+ virtual void operator()(const wxObject *vobj)
+ {
+ m_writer->WriteObject( vobj, (vobj ? vobj->GetClassInfo() : m_cti->GetClassInfo() ),
+ m_persister, m_cti->GetKind()== wxT_OBJECT, m_props );
+ }
+private:
+ const wxClassTypeInfo* m_cti;
+ wxObjectWriterCallback *m_persister;
+ wxObjectWriter* m_writer;
+ wxStringToAnyHashMap& m_props;
+};
+