-rw-r--r-- | core/pim/today/today.cpp | 60 | ||||
-rw-r--r-- | core/pim/today/today.h | 14 |
2 files changed, 61 insertions, 13 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 @@ -67,11 +67,10 @@ Today::Today( QWidget* parent, const char* name, WFlags fl ) 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"); @@ -93,9 +92,9 @@ void Today::draw() { getDates(); getMail(); getTodo(); // how often refresh - QTimer::singleShot( 30*1000, this, SLOT(draw()) ); + QTimer::singleShot( 10*1000, this, SLOT(draw() ) ); } /* @@ -195,10 +194,10 @@ void Today::startConfig() { cfg.setGroup("Autostart"); cfg.writeEntry("autostart", autostart); // sync it to "disk" cfg.write(); - autoStart(); draw(); + autoStart(); } /* @@ -207,9 +206,8 @@ void Today::startConfig() { 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" ); @@ -218,33 +216,46 @@ void Today::getDates() { 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(); + 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); } - } + } + } 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); - //if (msg.isEmpty()) { - // msg = tr("No more appointments today"); - //} - //DatesField->setText(msg); - } + } /* * Parse in the todolist.xml @@ -438,9 +449,26 @@ DateBookEvent::DateBookEvent(const EffectiveEvent &ev, // 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>"; } @@ -463,8 +491,11 @@ DateBookEvent::DateBookEvent(const EffectiveEvent &ev, 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 ) ); } @@ -472,6 +503,9 @@ DateBookEvent::DateBookEvent(const EffectiveEvent &ev, void DateBookEvent::editMe() { emit editEvent(event.event()); } +void DateBookEventLater::editMe() { + emit editEvent(event.event()); +} diff --git a/core/pim/today/today.h b/core/pim/today/today.h index 0a0837c..b3f0654 100644 --- a/core/pim/today/today.h +++ b/core/pim/today/today.h @@ -79,6 +79,20 @@ private slots: private: const EffectiveEvent event; }; +class DateBookEventLater: public ClickableLabel { + Q_OBJECT +public: + DateBookEventLater(const EffectiveEvent &ev, + QWidget* parent = 0, const char* name = 0, + WFlags fl = 0); +signals: + void editEvent(const Event &e); +private slots: + void editMe(); +private: + const EffectiveEvent event; +}; + #endif // TODAY_H |