insilmaril@566: #ifndef XML_FREEMIND_H insilmaril@566: #define XML_FREEMIND_H insilmaril@566: insilmaril@566: insilmaril@566: #include insilmaril@566: #include insilmaril@566: insilmaril@566: #include "file.h" insilmaril@566: #include "mapcenterobj.h" insilmaril@566: #include "mapeditor.h" insilmaril@566: insilmaril@566: insilmaril@566: class parseFMHandler : public QXmlDefaultHandler insilmaril@566: { insilmaril@566: public: insilmaril@566: parseFMHandler(); insilmaril@566: ~parseFMHandler(); insilmaril@566: QString errorProtocol(); insilmaril@566: bool startDocument(); insilmaril@566: QString parseHREF(QString); insilmaril@566: bool startElement ( const QString&, const QString&, insilmaril@566: const QString& eName, const QXmlAttributes& atts ); insilmaril@566: bool endElement ( const QString&, const QString&, const QString& ); insilmaril@566: bool characters ( const QString&); insilmaril@566: QString errorString(); insilmaril@566: bool fatalError( const QXmlParseException&); insilmaril@566: void setMapEditor (MapEditor*); insilmaril@566: void setTmpDir (QString); insilmaril@566: void setInputFile (QString); insilmaril@566: void setLoadMode (const LoadMode &); insilmaril@566: bool readNodeAttr (const QXmlAttributes&); insilmaril@566: insilmaril@566: private: insilmaril@566: QString errorProt; insilmaril@566: enum State insilmaril@566: { insilmaril@566: StateInit, insilmaril@566: StateMap, insilmaril@566: StateNode, insilmaril@566: StateCloud, insilmaril@566: StateEdge, insilmaril@566: StateIcon, insilmaril@566: StateFont, insilmaril@566: StateArrowLink, insilmaril@566: StateHook, insilmaril@566: StateText insilmaril@566: }; insilmaril@566: insilmaril@566: insilmaril@566: LoadMode loadMode; insilmaril@566: bool isVymPart; insilmaril@566: State state; insilmaril@566: State laststate; insilmaril@566: QList stateStack; insilmaril@566: QString htmldata; insilmaril@566: int branchDepth; insilmaril@566: NoteObj no; insilmaril@566: MapCenterObj* mc; insilmaril@566: MapEditor* me; insilmaril@566: QString tmpDir; insilmaril@566: QString inputFile; insilmaril@566: }; insilmaril@566: #endif