#ifndef tododb_h #define tododb_h #include #include class ToDoResource; class ToDoDB { public: // if no argument is supplied pick the default book ToDoDB(const QString &fileName = QString::null, ToDoResource* resource= 0 ); ~ToDoDB(); QValueList effectiveToDos(const QDate &from, const QDate &to, bool includeNoDates = true); QValueList effectiveToDos(const QDate &start, bool includeNoDates = true ); QValueList rawToDos(); // all events QValueList overDue(); void addEvent(const ToDoEvent &event ); void editEvent(const ToDoEvent &editEvent ); void removeEvent(const ToDoEvent &event); void replaceEvent(const ToDoEvent &event ); // QValueList& ); void reload(); void setFileName(const QString & ); QString fileName()const; bool save(); ToDoResource *resource(); void setResource(ToDoResource* res); private: class ToDoDBPrivate; ToDoDBPrivate *d; QString m_fileName; ToDoResource *m_res; QValueList m_todos; void load(); }; #endif