From 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- karm/plannerparser.h | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 karm/plannerparser.h (limited to 'karm/plannerparser.h') diff --git a/karm/plannerparser.h b/karm/plannerparser.h new file mode 100644 index 000000000..a626d6f03 --- /dev/null +++ b/karm/plannerparser.h @@ -0,0 +1,62 @@ +// +// C++ Interface: plannerparser +// +// Description: +// +// +// Author: Thorsten Staerk , (C) 2004 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef PLANNERPARSER_H +#define PLANNERPARSER_H + +/** +this class is here to import tasks from a planner project file to karm. +the import shall not be limited to karm (kPlaTo sends greetings) +it imports planner's top-level-tasks on the same level-depth as current_item. +if there is no current_item, planner's top-level-tasks will become top-level-tasks in karm. +it imports as well the level-depth of each task, as its name, as its percent-complete. +test cases: + - deleting all tasks away, then import! + - having started with an empty ics, import! + - with current_item being a top-level-task, import! + - with current_item being a subtask, import! + +@author Thorsten Staerk +*/ + +#include +#include +#include "taskview.h" +#include "task.h" +#include "karmstorage.h" +#include "kapplication.h" + +class PlannerParser : public QXmlDefaultHandler +{ +public: + + /** Stores the active TaskView in this parser. Returns error code (not always, hopefully) */ + PlannerParser(TaskView * tv); + + /** given by the framework from qxml. Called when parsing the xml-document starts. */ + bool startDocument(); + + /** given by the framework from qxml. Called when the reader occurs an open tag (e.g. \ ) */ + bool startElement( const QString&, const QString&, const QString& qName, const QXmlAttributes& att ); + + /** given by the framework from qxml. Called when the reader occurs a closed tag (e.g. \ )*/ + bool endElement( const QString&, const QString&, const QString& qName); + +private: + bool withInTasks; // within ? + TaskView *_taskView; + Task *task; + Task *parentTask; + int level; // level=1: task is top-level-task +}; + + +#endif -- cgit v1.2.1