/* This file is part of the Opie Project Copyright (C) Stefan Eilers (Eilers.Stefan@epost.de) =. Copyright (C) The Opie Team .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU Library General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; Library General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = Library General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef OPIE_DATE_BOOK_ACCESS_H #define OPIE_DATE_BOOK_ACCESS_H #include "odatebookaccessbackend.h" #include "opimaccesstemplate.h" #include namespace Opie { /** * This is the object orientated datebook database. It'll use OBackendFactory * to query for a backend. * All access to the datebook should be done via this class. * Make sure to load and save the datebook this is not part of * destructing and creating the object * * @author Holger Freyther, Stefan Eilers */ class ODateBookAccess : public OPimAccessTemplate { public: /** * Filter for sorted() * @see SortFilterBase in OPimBase */ enum SortFilter { }; /** * Sort order for sorted() * @see SortOrderBase in OPimBase */ enum SortOrder { SortDescription = SortCustom, SortLocation, SortNote, SortStartTime, SortEndTime, SortStartDate, SortEndDate, SortStartDateTime, SortEndDateTime, SortAlarmDateTime, }; ODateBookAccess( ODateBookAccessBackend* = 0l, enum Access acc = Random ); ~ODateBookAccess(); /* return repeating events */ List rawRepeats()const; /* return non repeating events */ List nonRepeats()const; /* return non repeating events (from,to) */ OPimOccurrence::List effectiveNonRepeatingEvents( const QDate& from, const QDate& to ) const; OPimOccurrence::List effectiveNonRepeatingEvents( const QDateTime& start ) const; /** * Return identification of used records */ int rtti() const; private: ODateBookAccessBackend* m_backEnd; class Private; Private* d; }; } #endif