author | hakan <hakan> | 2002-03-31 12:56:14 (UTC) |
---|---|---|
committer | hakan <hakan> | 2002-03-31 12:56:14 (UTC) |
commit | 7208583b0b7ff339e6019b188332d8bcb8f30973 (patch) (side-by-side diff) | |
tree | 4d0b064f1aa0a8553703af4f6e481393cf0ee13c | |
parent | a386e428cbd6b468d4dbff5bf2df4fdba6df9b6e (diff) | |
download | opie-7208583b0b7ff339e6019b188332d8bcb8f30973.zip opie-7208583b0b7ff339e6019b188332d8bcb8f30973.tar.gz opie-7208583b0b7ff339e6019b188332d8bcb8f30973.tar.bz2 |
Moved getEvent(uid) into some hack DateBookDBHack::eventByUID(uid) in the datbeook that might work as long as the QDate implementation are not chnaged.
-rw-r--r-- | core/pim/datebook/datebook.cpp | 25 | ||||
-rw-r--r-- | core/pim/datebook/datebook.h | 7 | ||||
-rw-r--r-- | library/datebookdb.cpp | 14 | ||||
-rw-r--r-- | library/datebookdb.h | 1 |
4 files changed, 29 insertions, 18 deletions
diff --git a/core/pim/datebook/datebook.cpp b/core/pim/datebook/datebook.cpp index 97c305c..c23129a 100644 --- a/core/pim/datebook/datebook.cpp +++ b/core/pim/datebook/datebook.cpp @@ -81,13 +81,13 @@ DateBook::DateBook( QWidget *parent, const char *, WFlags f ) startTime( 8 ), // an acceptable default syncing(FALSE), inSearch(FALSE) { QTime t; t.start(); - db = new DateBookDB; + db = new DateBookDBHack; qDebug("loading db t=%d", t.elapsed() ); loadSettings(); setCaption( tr("Calendar") ); setIcon( Resource::loadPixmap( "datebook_icon" ) ); setToolBarsMovable( FALSE ); @@ -230,13 +230,13 @@ void DateBook::receive( const QCString &msg, const QByteArray &data ) else if ( monthAction->isOn() ) viewMonth(); } else if (msg == "editEvent(int)") { int uid; stream >> uid; - Event e=db->getEvent(uid); + Event e=db->eventByUID(uid); editEvent(e); } } DateBook::~DateBook() { @@ -962,6 +962,27 @@ void DateBook::slotDoFind( const QString& txt, const QDate &dt, nonrev.setStart( rev.start() ); } else emit signalNotFound(); wrapAround = !wrapAround; } } + +Event DateBookDBHack::eventByUID(int uid) { + + // FIXME: Dirty Hacks to get hold of the private event lists + QDate start; + QDate end=start.addDays(-1); + QValueList<Event> myEventList=getNonRepeatingEvents(start,end); + QValueList<Event> myRepeatEvents=getRawRepeats(); + + QValueList<Event>::ConstIterator it; + + for (it = myEventList.begin(); it != myEventList.end(); it++) { + if ((*it).uid() == uid) return *it; + } + for (it = myRepeatEvents.begin(); it != myRepeatEvents.end(); it++) { + if ((*it).uid() == uid) return *it; + } + + qDebug("Event not found: uid=%d\n", uid); +} + diff --git a/core/pim/datebook/datebook.h b/core/pim/datebook/datebook.h index 2ffcdbe..d1fe90d 100644 --- a/core/pim/datebook/datebook.h +++ b/core/pim/datebook/datebook.h @@ -31,12 +31,17 @@ class DateBookWeek; class DateBookWeekLst; class DateBookMonth; class Event; class QDate; class Ir; +class DateBookDBHack : public DateBookDB { + public: + Event eventByUID(int id); +}; + class DateBook : public QMainWindow { Q_OBJECT public: DateBook( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); @@ -96,13 +101,13 @@ private: void initWeekLst(); void initMonth(); void loadSettings(); void saveSettings(); private: - DateBookDB *db; + DateBookDBHack *db; QWidgetStack *views; DateBookDay *dayView; DateBookWeek *weekView; DateBookMonth *monthView; DateBookWeekLst *weekLstView; QAction *dayAction, *weekAction, *weekLstAction, *monthAction; diff --git a/library/datebookdb.cpp b/library/datebookdb.cpp index da5a797..2ac9a0c 100644 --- a/library/datebookdb.cpp +++ b/library/datebookdb.cpp @@ -584,26 +584,12 @@ QValueList<EffectiveEvent> DateBookDB::getEffectiveEvents( const QDateTime &dt) if ( QABS(dt.secsTo(dtTmp)) < 60 ) tmpList.append( *it ); } return tmpList; } -Event DateBookDB::getEvent( int uid ) { - QValueList<Event>::ConstIterator it; - - for (it = eventList.begin(); it != eventList.end(); it++) { - if ((*it).uid() == uid) return *it; - } - for (it = repeatEvents.begin(); it != repeatEvents.end(); it++) { - if ((*it).uid() == uid) return *it; - } - - qDebug("Event not found: uid=%d\n", uid); -} - - void DateBookDB::addEvent( const Event &ev, bool doalarm ) { // write to the journal... saveJournalEntry( ev, ACTION_ADD, -1, false ); addJFEvent( ev, doalarm ); d->clean = false; diff --git a/library/datebookdb.h b/library/datebookdb.h index e4c251c..0add028 100644 --- a/library/datebookdb.h +++ b/library/datebookdb.h @@ -41,13 +41,12 @@ public: QValueList<Event> getEvents( const QDateTime &start ); // USE THESE!!! QValueList<EffectiveEvent> getEffectiveEvents( const QDate &from, const QDate &to ); QValueList<EffectiveEvent> getEffectiveEvents( const QDateTime &start ); - Event getEvent( int uid ); QValueList<Event> getRawRepeats() const; QValueList<Event> getNonRepeatingEvents( const QDate &from, const QDate &to ) const; // Use these when dealing with adding removing events... |