bool CustomDataSampleApp::OnInit() { // load application settings if the configuration file exists, otherwise create new // settings class object with default values // initialize serializer m_XmlIO.SetSerializerOwner(wxT("CustomDataSampleApp")); m_XmlIO.SetSerializerRootName(wxT("settings")); m_XmlIO.SetSerializerVersion(wxT("1.0.0")); // register new property I/O handler 'xsColourDataPropIO' for data type with name 'colourdata' XS_REGISTER_IO_HANDLER(wxT("colourdata"), xsColourDataPropIO); // create serialized settings class object manualy with default values m_pSettings = new Settings(); // insert settings class object into serializer as its root node m_XmlIO.SetRootItem(m_pSettings); if( wxFileExists(wxT("settings.xml")) ) { // load settings from configuration file m_XmlIO.DeserializeFromXml(wxT("settings.xml")); } // create and show main application frame MainFrame *frame = new MainFrame(NULL); SetTopWindow(frame); frame->Show(); return true; }
void wxJigsawEditorMainFrame::InitConfigSerialization() { m_XmlIO.SetSerializerOwner(wxT("wxJigsawEditor")); m_XmlIO.SetSerializerRootName(wxT("settings")); m_XmlIO.SetSerializerVersion(wxT("1.0.0")); XS_REGISTER_IO_HANDLER(wxT("jigsawshape"), xsJigsawShapePropIO); XS_REGISTER_IO_HANDLER(wxT("listjigsawshape"), xsListJigsawShapePropIO); XS_REGISTER_IO_HANDLER(wxT("jigsawinputparameter"), xsJigsawInputParameterPropIO); XS_REGISTER_IO_HANDLER(wxT("listjigsawinputparameter"), xsListJigsawInputParameterPropIO); XS_REGISTER_IO_HANDLER(wxT("colourdata"), xsColourDataPropIO); XS_REGISTER_IO_HANDLER(wxT("jigsawshapecategory"), xsJigsawShapeCategoryPropIO); XS_REGISTER_IO_HANDLER(wxT("listjigsawshapecategory"), xsListJigsawShapeCategoryPropIO); XS_REGISTER_IO_HANDLER(wxT("emit"), xsCodeEmitter); m_Config = new wxJigsawEditorConfig; m_XmlIO.SetRootItem(m_Config); }
wxJigsawEditorDocument::wxJigsawEditorDocument() : m_Diagram(new wxJigsawDiagram) { XS_REGISTER_IO_HANDLER(wxT("jigsawshape"), xsJigsawShapePropIO); XS_REGISTER_IO_HANDLER(wxT("listjigsawshape"), xsListJigsawShapePropIO); XS_REGISTER_IO_HANDLER(wxT("jigsawinputparameter"), xsJigsawInputParameterPropIO); XS_REGISTER_IO_HANDLER(wxT("listjigsawinputparameter"), xsListJigsawInputParameterPropIO); XS_REGISTER_IO_HANDLER(wxT("jigsawshapegroup"), xsJigsawShapeGroupPropIO); XS_REGISTER_IO_HANDLER(wxT("listjigsawshapegroup"), xsListJigsawShapeGroupPropIO); XS_REGISTER_IO_HANDLER(wxT("emit"), xsCodeEmitter); m_XmlIO.SetSerializerOwner(wxT("wxJigsawShapeEngine")); m_XmlIO.SetSerializerRootName(wxT("wxJigsawDiagram")); m_XmlIO.SetSerializerVersion(wxT("1.0.0")); m_XmlIO.SetRootItem(m_Diagram); m_DiagramSize = wxSize(0,0); }
void wxXmlSerializer::InitializeAllIOHandlers() { ClearIOHandlers(); XS_REGISTER_IO_HANDLER(wxT("string"), xsStringPropIO); XS_REGISTER_IO_HANDLER(wxT("char"), xsCharPropIO); XS_REGISTER_IO_HANDLER(wxT("int"), xsIntPropIO); XS_REGISTER_IO_HANDLER(wxT("long"), xsLongPropIO); XS_REGISTER_IO_HANDLER(wxT("float"), xsFloatPropIO); XS_REGISTER_IO_HANDLER(wxT("double"), xsDoublePropIO); XS_REGISTER_IO_HANDLER(wxT("bool"), xsBoolPropIO); XS_REGISTER_IO_HANDLER(wxT("point"), xsPointPropIO); XS_REGISTER_IO_HANDLER(wxT("size"), xsSizePropIO); XS_REGISTER_IO_HANDLER(wxT("realpoint"), xsRealPointPropIO); XS_REGISTER_IO_HANDLER(wxT("colour"), xsColourPropIO); XS_REGISTER_IO_HANDLER(wxT("brush"), xsBrushPropIO); XS_REGISTER_IO_HANDLER(wxT("pen"), xsPenPropIO); XS_REGISTER_IO_HANDLER(wxT("font"), xsFontPropIO); XS_REGISTER_IO_HANDLER(wxT("arraystring"), xsArrayStringPropIO); XS_REGISTER_IO_HANDLER(wxT("arraychar"), xsArrayCharPropIO); XS_REGISTER_IO_HANDLER(wxT("arrayint"), xsArrayIntPropIO); XS_REGISTER_IO_HANDLER(wxT("arraylong"), xsArrayLongPropIO); XS_REGISTER_IO_HANDLER(wxT("arraydouble"), xsArrayDoublePropIO); XS_REGISTER_IO_HANDLER(wxT("arrayrealpoint"), xsArrayRealPointPropIO); XS_REGISTER_IO_HANDLER(wxT("mapstring"), xsMapStringPropIO); XS_REGISTER_IO_HANDLER(wxT("listrealpoint"), xsListRealPointPropIO); XS_REGISTER_IO_HANDLER(wxT("listserializable"), xsListSerializablePropIO); XS_REGISTER_IO_HANDLER(wxT("serializablestatic"), xsStaticObjPropIO); XS_REGISTER_IO_HANDLER(wxT("serializabledynamic"), xsDynObjPropIO); XS_REGISTER_IO_HANDLER(wxT("serializabledynamicnocreate"), xsDynNCObjPropIO); }