From 1e7f8f22fc10e3ed85b6563332ddc348c95792d0 Mon Sep 17 00:00:00 2001 From: zecke Date: Thu, 18 Nov 2004 21:49:23 +0000 Subject: Backend Changes: Each Backend can: -Sort and Filter a set of Records/AllRecords (which can be filtered again) -QueryByExample by every Backend -Occurrences for a period of time and a QDateTime -More common implementation -OPimBackendOccurrence with common splitting to OPimOccurrence --- (limited to 'libopie2/opiepim/backend/otodoaccessbackend.h') diff --git a/libopie2/opiepim/backend/otodoaccessbackend.h b/libopie2/opiepim/backend/otodoaccessbackend.h index 9dfda45..66297bb 100644 --- a/libopie2/opiepim/backend/otodoaccessbackend.h +++ b/libopie2/opiepim/backend/otodoaccessbackend.h @@ -39,21 +39,41 @@ class OPimTodoAccessBackend : public OPimAccessBackend { public: OPimTodoAccessBackend(); ~OPimTodoAccessBackend(); - virtual QArray effectiveToDos( const QDate& start, - const QDate& end, - bool includeNoDates ) = 0; - virtual QArray overDue() = 0; - virtual QArray sorted( bool asc, int sortOrder, int sortFilter, - int cat ) = 0; - virtual void removeAllCompleted() = 0; - virtual QBitArray supports()const = 0; - + virtual UIDArray effectiveToDos( const QDate& start, + const QDate& end, + bool includeNoDates )const = 0; + virtual UIDArray overDue()const = 0; + virtual void removeAllCompleted() = 0; + + /** + * Common and probably inefficent implementation + * for queryByExample, matchRegexp, sorted + * and occurrences + */ + //@{ + UIDArray queryByExample( const OPimTodo&, int settings, const QDateTime& d = QDateTime() )const; + UIDArray sorted( const UIDArray&, bool asc, int, int, const QArray& )const; + OPimBackendOccurrence::List occurrences( const QDate&, const QDate& )const; + //@} + private: class Private; Private *d; }; - } + +/** + * \fn Opie::OPimBackendOccurrence::List Opie::OPimTodoAccessBackend::occurrences(const QDate& start,const QDate& end)const + * \brief Return occurrences for a period of time + * + * This method will return the 'effective' Todos and also + * 'Overdue' Todos. Overdues will be shown on the 'current' + * day if it is in the range or on \par start. If the overdue + * is inside the 'Effective Todos' we will skip the + * special overdue handling. + * + * + */ #endif -- cgit v0.9.0.2