-rw-r--r-- | libopie2/opiepim/core/otodoaccess.cpp | 6 | ||||
-rw-r--r-- | libopie2/opiepim/core/otodoaccess.h | 15 |
2 files changed, 21 insertions, 0 deletions
diff --git a/libopie2/opiepim/core/otodoaccess.cpp b/libopie2/opiepim/core/otodoaccess.cpp index 5e89a1b..37f6fbc 100644 --- a/libopie2/opiepim/core/otodoaccess.cpp +++ b/libopie2/opiepim/core/otodoaccess.cpp @@ -45,12 +45,18 @@ OTodoAccess::List OTodoAccess::overDue() { return lis; } /* sort order */ OTodoAccess::List OTodoAccess::sorted( bool ascending, int sort,int filter, int cat ) { QArray<int> ints = m_todoBackEnd->sorted( ascending, sort, filter, cat ); OTodoAccess::List list( ints, this ); return list; } void OTodoAccess::removeAllCompleted() { m_todoBackEnd->removeAllCompleted(); } +QBitArray OTodoAccess::backendSupport( const QString& ) const{ + return m_todoBackEnd->supports(); +} +bool OTodoAccess::backendSupports( int attr, const QString& ar) const{ + return backendSupport(ar).testBit( attr ); +} diff --git a/libopie2/opiepim/core/otodoaccess.h b/libopie2/opiepim/core/otodoaccess.h index a626731..916923f 100644 --- a/libopie2/opiepim/core/otodoaccess.h +++ b/libopie2/opiepim/core/otodoaccess.h @@ -63,24 +63,39 @@ public: /** * merge a list of OTodos into * the resource */ void mergeWith( const QValueList<OTodo>& ); /** * delete all already completed items */ void removeAllCompleted(); + /** + * request information about what a backend supports. + * Supports in the sense of beeing able to store. + * This is related to the enum in OTodo + * + * @param backend Will be used in the future when we support multiple backend + */ + QBitArray backendSupport( const QString& backend = QString::null )const; + + /** + * see above but for a specefic attribute. This method was added for convience + * @param attr The attribute to be queried for + * @param backend Will be used in the future when we support multiple backends + */ + bool backendSupports( int attr, const QString& backend = QString::null )const; signals: /** * if the OTodoAccess was changed */ void changed( const OTodoAccess* ); void changed( const OTodoAccess*, int uid ); void added( const OTodoAccess*, int uid ); void removed( const OTodoAccess*, int uid ); private: int m_cat; OTodoAccessBackend* m_todoBackEnd; class OTodoAccessPrivate; |