insilmaril@0: #ifndef XLM_H insilmaril@0: #define XLM_H insilmaril@0: insilmaril@0: insilmaril@0: #include insilmaril@0: #include insilmaril@0: insilmaril@0: #include "mapcenterobj.h" insilmaril@0: #include "mapeditor.h" insilmaril@0: insilmaril@0: insilmaril@0: class mapBuilderHandler : public QXmlDefaultHandler insilmaril@0: { insilmaril@0: public: insilmaril@0: mapBuilderHandler(); insilmaril@0: ~mapBuilderHandler(); insilmaril@0: QString errorProtocol(); insilmaril@0: bool startDocument(); insilmaril@0: QString mapBuilderHandler::parseHREF(QString); insilmaril@0: bool startElement ( const QString&, const QString&, insilmaril@0: const QString& eName, const QXmlAttributes& atts ); insilmaril@0: bool endElement ( const QString&, const QString&, const QString& ); insilmaril@0: bool characters ( const QString&); insilmaril@0: QString errorString(); insilmaril@0: bool fatalError( const QXmlParseException&); insilmaril@0: void setMapEditor (MapEditor*); insilmaril@0: void setTmpDir (QString); insilmaril@0: void setLoadMode (const LoadMode &); insilmaril@0: bool readBranchAttr (const QXmlAttributes&); insilmaril@0: bool readNoteAttr (const QXmlAttributes&); insilmaril@0: bool readFloatImageAttr (const QXmlAttributes&); insilmaril@0: bool readHtmlAttr (const QXmlAttributes&); insilmaril@0: bool readSettingAttr (const QXmlAttributes&); insilmaril@0: insilmaril@0: private: insilmaril@0: QString errorProt; insilmaril@0: enum State insilmaril@0: { insilmaril@0: StateInit, StateMap, StateMapSelect, insilmaril@0: StateMapSetting, insilmaril@0: StateMapCenter, StateMapCenterStandardFlag, insilmaril@0: StateMapCenterHeading, StateMapCenterNote, insilmaril@0: StateMapCenterFloatImage, insilmaril@0: insilmaril@0: StateBranch, StateBranchStandardFlag, insilmaril@0: StateBranchHeading, StateBranchNote, insilmaril@0: StateBranchFloatImage, insilmaril@0: StateHtmlNote, StateHtml insilmaril@0: }; insilmaril@0: insilmaril@0: insilmaril@0: LoadMode loadMode; insilmaril@0: bool isVymPart; insilmaril@0: State state; insilmaril@0: State laststate; insilmaril@0: QString htmldata; insilmaril@0: int branchDepth; insilmaril@0: NoteObj no; insilmaril@0: MapCenterObj* mc; insilmaril@0: MapEditor* me; QString tmpDir; insilmaril@0: }; insilmaril@0: #endif