author | harlekin <harlekin> | 2002-03-12 00:11:24 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2002-03-12 00:11:24 (UTC) |
commit | 4c020c281eb21a92175b47330fb7ac60184a2bca (patch) (side-by-side diff) | |
tree | b59dc913190b04728ae96ed3730d523c2b228e75 /core/pim/today/today.cpp | |
parent | 3c5feb8676f75f4e218ea0278f02d225e8985301 (diff) | |
download | opie-4c020c281eb21a92175b47330fb7ac60184a2bca.zip opie-4c020c281eb21a92175b47330fb7ac60184a2bca.tar.gz opie-4c020c281eb21a92175b47330fb7ac60184a2bca.tar.bz2 |
fixes must obvious bugs
-rw-r--r-- | core/pim/today/today.cpp | 82 |
1 files changed, 58 insertions, 24 deletions
diff --git a/core/pim/today/today.cpp b/core/pim/today/today.cpp index d10082f..1cdc6b4 100644 --- a/core/pim/today/today.cpp +++ b/core/pim/today/today.cpp @@ -65,15 +65,14 @@ Today::Today( QWidget* parent, const char* name, WFlags fl ) : TodayBase( parent, name, fl ) { QObject::connect( (QObject*)PushButton1, SIGNAL( clicked() ), this, SLOT(startConfig() ) ); QObject::connect( (QObject*)TodoButton, SIGNAL( clicked() ), this, SLOT(startTodo() ) ); QObject::connect( (QObject*)DatesButton, SIGNAL( clicked() ), this, SLOT(startDatebook() ) ); QObject::connect( (QObject*)MailButton, SIGNAL( clicked() ), this, SLOT(startMail() ) ); - - autoStart(); draw(); + autoStart(); } void Today::autoStart() { Config cfg("today"); cfg.setGroup("Autostart"); AUTOSTART = cfg.readNumEntry("autostart",1); @@ -91,13 +90,13 @@ void Today::autoStart() { void Today::draw() { init(); getDates(); getMail(); getTodo(); // how often refresh - QTimer::singleShot( 30*1000, this, SLOT(draw()) ); + QTimer::singleShot( 10*1000, this, SLOT(draw() ) ); } /* * Check if the todolist.xml was modified (if there are new entries. * Returns true if it was modified. @@ -193,60 +192,72 @@ void Today::startConfig() { cfg.writeEntry("shownotes", notes); cfg.writeEntry("onlylater", onlylater); cfg.setGroup("Autostart"); cfg.writeEntry("autostart", autostart); // sync it to "disk" cfg.write(); - autoStart(); draw(); + autoStart(); } /* * Get all events that are in the datebook xml file for today */ void Today::getDates() { QDate date = QDate::currentDate(); QWidget* AllDateBookEvents = new QWidget( ); QVBoxLayout* layoutDates = new QVBoxLayout(AllDateBookEvents); - //QTime time = QTime::currentTime(); QValueList<EffectiveEvent> list = db->getEffectiveEvents(date, date); Config config( "qpe" ); // if 24 h format //bool ampm = config.readBoolEntry( "AMPM", TRUE ); int count=0; if ( list.count() > 0 ) { - QString msg; - + for ( QValueList<EffectiveEvent>::ConstIterator it=list.begin(); it!=list.end(); ++it ) { count++; if ( count <= MAX_LINES_MEET ) { + + QTime time = QTime::currentTime(); - - DateBookEvent *l=new DateBookEvent(*it, AllDateBookEvents); - layoutDates->addWidget(l); - connect (l, SIGNAL(editEvent(const Event &)), - this, SIGNAL(editEvent(const Event &))); + if (!ONLY_LATER) { + DateBookEvent *l=new DateBookEvent(*it, AllDateBookEvents); + layoutDates->addWidget(l); + connect (l, SIGNAL(editEvent(const Event &)), + this, SIGNAL(editEvent(const Event &))); + } else if ((time.toString() <= TimeString::dateString((*it).event().end())) ) { + // show only later appointments + DateBookEventLater *l=new DateBookEventLater(*it, AllDateBookEvents); + layoutDates->addWidget(l); + connect (l, SIGNAL(editEvent(const Event &)), + this, SIGNAL(editEvent(const Event &))); + } else { + QLabel* noMoreEvents = new QLabel(AllDateBookEvents); + noMoreEvents->setText("No more appointments today"); + layoutDates->addWidget(noMoreEvents); + } } - - } - layoutDates->addItem(new QSpacerItem(1,1, QSizePolicy::Minimum, QSizePolicy::Expanding)); - sv1->addChild(AllDateBookEvents); - - //if (msg.isEmpty()) { - // msg = tr("No more appointments today"); - //} - //DatesField->setText(msg); + } + } else { + QLabel* noEvents = new QLabel(AllDateBookEvents); + noEvents->setText("No appointments today"); + layoutDates->addWidget(noEvents); } + + layoutDates->addItem(new QSpacerItem(1,1, QSizePolicy::Minimum, QSizePolicy::Expanding)); + sv1->addChild(AllDateBookEvents); + + } /* * Parse in the todolist.xml */ QList<TodoItem> Today::loadTodo(const char *filename) { @@ -436,13 +447,30 @@ DateBookEvent::DateBookEvent(const EffectiveEvent &ev, + "<b> - </b>" + TimeString::timeString(QTime((ev).event().end().time()) ); } // include possible note or not if (SHOW_NOTES == 1) { msg += "<br> <i>note</i>:" +((ev).notes()).mid(0, MAX_CHAR_CLIP) + "<br>"; } - } else if ((time.toString() <= TimeString::dateString((ev).event().end())) ) { + } + setText(msg); + connect(this, SIGNAL(clicked()), this, SLOT(editMe())); + setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); +} + + +DateBookEventLater::DateBookEventLater(const EffectiveEvent &ev, + QWidget* parent = 0, + const char* name = 0, + WFlags fl = 0) : + ClickableLabel(parent,name,fl), event(ev) { + + QString msg; + QTime time = QTime::currentTime(); + + if ((time.toString() <= TimeString::dateString((ev).event().end())) ) { + // show only later appointments msg += "<B>" + (ev).description() + "</B>"; if ( (ev).event().hasAlarm() ) { msg += " <b>[with alarm]</b>"; } // include location or not if (SHOW_LOCATION == 1) { @@ -459,19 +487,25 @@ DateBookEvent::DateBookEvent(const EffectiveEvent &ev, + "<b> - </b>" + TimeString::timeString(QTime((ev).event().end().time()) ); } // include possible note or not if (SHOW_NOTES == 1) { msg += "<br> <i>note</i>:" +((ev).notes()).mid(0, MAX_CHAR_CLIP) + "<br>"; } - } - + } + + // if (msg.isEmpty()) { + // msg = tr("No more appointments today"); + // } setText(msg); connect(this, SIGNAL(clicked()), this, SLOT(editMe())); setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); } void DateBookEvent::editMe() { emit editEvent(event.event()); } +void DateBookEventLater::editMe() { + emit editEvent(event.event()); +} |