summaryrefslogtreecommitdiff
path: root/core/pim/datebook2/bookmanager.cpp
Unidiff
Diffstat (limited to 'core/pim/datebook2/bookmanager.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/datebook2/bookmanager.cpp67
1 files changed, 67 insertions, 0 deletions
diff --git a/core/pim/datebook2/bookmanager.cpp b/core/pim/datebook2/bookmanager.cpp
new file mode 100644
index 0000000..4fcd413
--- a/dev/null
+++ b/core/pim/datebook2/bookmanager.cpp
@@ -0,0 +1,67 @@
1#include "bookmanager.h"
2
3using namespace Datebook;
4
5BookManager::BookManager() {
6 m_db = 0;
7}
8BookManager::~BookManager() {
9 delete m_db;
10}
11void BookManager::add( const OEvent& ev) {
12 if (!m_db ) return;
13
14 m_db->add( ev );
15}
16void BookManager::add( const OPimRecord& rec ) {
17 if (!m_db) load(); // we might where called by setDocument... before we even fully initialized
18 m_db->add( rec );
19}
20void BookManager::update( const OEvent& up) {
21 if ( !m_db ) return;
22 m_db->replace( up );
23}
24void BookManager::remove( int uid ) {
25 if ( !m_db ) return;
26 m_db->remove( uid );
27}
28void BookManager::remove( const QArray<int>& ar) {
29 uint count = ar.count();
30 for (uint i = 0; i < count; i++ )
31 remove( ar[i] );
32}
33QList<OPimRecord> BookManager::records( const QDate& , const QDate& ) {
34 return QList<OPimRecord>();
35}
36bool BookManager::isLoaded() const{
37 return ( m_db != 0 );
38}
39bool BookManager::load() {
40 m_db = new ODateBookAccess;
41 return m_db->load();
42}
43void BookManager::reload() {
44 if (!m_db ) return;
45
46 m_db->reload();
47}
48OEvent BookManager::event( int uid ) {
49 if (!m_db ) return OEvent();
50
51 return m_db->find( uid );
52}
53ODateBookAccess::List BookManager::allRecords()const {
54 if (!m_db) return ODateBookAccess::List();
55
56 return m_db->rawEvents();
57}
58OEffectiveEvent::ValueList BookManager::list( const QDate& from,
59 const QDate& to ) {
60 if (!m_db) return OEffectiveEvent::ValueList();
61
62 return m_db->effectiveEvents( from, to );
63}
64bool BookManager::save() {
65 if (!m_db) return false;
66 return m_db->save();
67}