summaryrefslogtreecommitdiff
authorharlekin <harlekin>2002-03-12 00:11:24 (UTC)
committer harlekin <harlekin>2002-03-12 00:11:24 (UTC)
commit4c020c281eb21a92175b47330fb7ac60184a2bca (patch) (side-by-side diff)
treeb59dc913190b04728ae96ed3730d523c2b228e75
parent3c5feb8676f75f4e218ea0278f02d225e8985301 (diff)
downloadopie-4c020c281eb21a92175b47330fb7ac60184a2bca.zip
opie-4c020c281eb21a92175b47330fb7ac60184a2bca.tar.gz
opie-4c020c281eb21a92175b47330fb7ac60184a2bca.tar.bz2
fixes must obvious bugs
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/today/today.cpp82
-rw-r--r--core/pim/today/today.h14
2 files changed, 72 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
@@ -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();
-
- 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
@@ -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>";
}
@@ -461,10 +489,13 @@ 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>";
}
- }
-
+ }
+
+ // 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