author | umopapisdn <umopapisdn> | 2003-04-12 03:56:46 (UTC) |
---|---|---|
committer | umopapisdn <umopapisdn> | 2003-04-12 03:56:46 (UTC) |
commit | 8c690a7bb709773217ba3d39d3ef769a2414cc72 (patch) (unidiff) | |
tree | a34bae70ee8dc46f40f60150e1703088fbc4da36 | |
parent | 212aef7fd20182fe926644af2ab10a4b49549440 (diff) | |
download | opie-8c690a7bb709773217ba3d39d3ef769a2414cc72.zip opie-8c690a7bb709773217ba3d39d3ef769a2414cc72.tar.gz opie-8c690a7bb709773217ba3d39d3ef769a2414cc72.tar.bz2 |
New feature:
Added a configurable option to make the weeklist view display either no times at all, only start times, or both start and end time.
Also moved the configuration of default view from the menu into the preference dialog.
-rw-r--r-- | core/pim/datebook/datebook.cpp | 380 | ||||
-rw-r--r-- | core/pim/datebook/datebook.h | 8 | ||||
-rw-r--r-- | core/pim/datebook/datebooksettingsbase.ui | 628 | ||||
-rw-r--r-- | core/pim/datebook/datebookweeklst.cpp | 297 | ||||
-rw-r--r-- | core/pim/datebook/datebookweeklst.h | 22 |
5 files changed, 741 insertions, 594 deletions
diff --git a/core/pim/datebook/datebook.cpp b/core/pim/datebook/datebook.cpp index 829f8f8..4fbcb10 100644 --- a/core/pim/datebook/datebook.cpp +++ b/core/pim/datebook/datebook.cpp | |||
@@ -61,30 +61,24 @@ | |||
61 | #include <qtimer.h> | 61 | #include <qtimer.h> |
62 | #include <qtl.h> | 62 | #include <qtl.h> |
63 | #include <qwidgetstack.h> | 63 | #include <qwidgetstack.h> |
64 | #include <qwindowsystem_qws.h> | 64 | #include <qwindowsystem_qws.h> |
65 | 65 | ||
66 | #include <sys/stat.h> | 66 | #include <sys/stat.h> |
67 | #include <sys/types.h> | 67 | #include <sys/types.h> |
68 | #include <fcntl.h> | 68 | #include <fcntl.h> |
69 | #include <unistd.h> | 69 | #include <unistd.h> |
70 | 70 | ||
71 | #include <stdlib.h> | 71 | #include <stdlib.h> |
72 | 72 | ||
73 | #define DAY 1 | ||
74 | #define WEEK 2 | ||
75 | #define WEEKLST 4 | ||
76 | #define MONTH 3 | ||
77 | |||
78 | |||
79 | DateBook::DateBook( QWidget *parent, const char *, WFlags f ) | 73 | DateBook::DateBook( QWidget *parent, const char *, WFlags f ) |
80 | : QMainWindow( parent, "datebook", f ), | 74 | : QMainWindow( parent, "datebook", f ), |
81 | aPreset( FALSE ), | 75 | aPreset( FALSE ), |
82 | presetTime( -1 ), | 76 | presetTime( -1 ), |
83 | startTime( 8 ), // an acceptable default | 77 | startTime( 8 ), // an acceptable default |
84 | rowStyle( 0 ), | 78 | rowStyle( 0 ), |
85 | bJumpToCurTime(FALSE), | 79 | bJumpToCurTime(FALSE), |
86 | syncing(FALSE), | 80 | syncing(FALSE), |
87 | inSearch(FALSE), | 81 | inSearch(FALSE), |
88 | alarmCounter(0) | 82 | alarmCounter(0) |
89 | { | 83 | { |
90 | bool needEvilHack= false; // if we need an Evil Hack | 84 | bool needEvilHack= false; // if we need an Evil Hack |
@@ -157,74 +151,47 @@ DateBook::DateBook( QWidget *parent, const char *, WFlags f ) | |||
157 | 151 | ||
158 | a = new QAction( tr( "Month" ), Resource::loadPixmap( "month" ), QString::null, 0, g, 0 ); | 152 | a = new QAction( tr( "Month" ), Resource::loadPixmap( "month" ), QString::null, 0, g, 0 ); |
159 | connect( a, SIGNAL( activated() ), this, SLOT( viewMonth() ) ); | 153 | connect( a, SIGNAL( activated() ), this, SLOT( viewMonth() ) ); |
160 | a->addTo( sub_bar ); | 154 | a->addTo( sub_bar ); |
161 | a->addTo( view ); | 155 | a->addTo( view ); |
162 | a->setToggleAction( TRUE ); | 156 | a->setToggleAction( TRUE ); |
163 | monthAction = a; | 157 | monthAction = a; |
164 | 158 | ||
165 | a = new QAction( tr( "Find" ), Resource::loadPixmap( "mag" ), QString::null, 0, g, 0 ); | 159 | a = new QAction( tr( "Find" ), Resource::loadPixmap( "mag" ), QString::null, 0, g, 0 ); |
166 | connect( a, SIGNAL(activated()), this, SLOT(slotFind()) ); | 160 | connect( a, SIGNAL(activated()), this, SLOT(slotFind()) ); |
167 | a->addTo( sub_bar ); | 161 | a->addTo( sub_bar ); |
168 | 162 | ||
169 | a = new QAction( tr( "Alarm and Start Time..." ), QString::null, 0, 0 ); | 163 | a = new QAction( tr( "Edit..." ), QString::null, 0, 0 ); |
170 | connect( a, SIGNAL( activated() ), this, SLOT( slotSettings() ) ); | 164 | connect( a, SIGNAL( activated() ), this, SLOT( slotSettings() ) ); |
171 | a->addTo( settings ); | 165 | a->addTo( settings ); |
172 | 166 | ||
173 | QPopupMenu *default_view = new QPopupMenu(this); | 167 | if(defaultView==DAY) viewDay(); |
174 | settings->insertItem( tr( "Default View" ),default_view ); | 168 | if(defaultView==WEEK) needEvilHack=true;// viewWeek(); |
175 | default_view->setCheckable(TRUE); | 169 | if(defaultView==WEEKLST) viewWeekLst(); |
176 | 170 | if(defaultView==MONTH) viewMonth(); | |
177 | Config config("DateBook"); | 171 | |
178 | config.setGroup("Main"); | 172 | connect( qApp, SIGNAL(clockChanged(bool)), this, SLOT(changeClock(bool)) ); |
179 | int current=config.readNumEntry("defaultview", DAY); | 173 | connect( qApp, SIGNAL(weekChanged(bool)), this, SLOT(changeWeek(bool)) ); |
180 | |||
181 | QActionGroup *ag = new QActionGroup(this); | ||
182 | a = new QAction( tr( "Day" ), QString::null, 0, 0, 0, true ); | ||
183 | if (current==DAY) a->setOn(true), viewDay(); | ||
184 | ag->insert(a); | ||
185 | a = new QAction( tr( "Week" ), QString::null, 0, 0, 0, true ); | ||
186 | if (current==WEEK) a->setOn(true), /*viewWeek(),*/ needEvilHack = true; | ||
187 | ag->insert(a); | ||
188 | a = new QAction( tr( "WeekLst" ), QString::null, 0, 0, 0, true ); | ||
189 | if (current==WEEKLST) a->setOn(true), viewWeekLst(); | ||
190 | ag->insert(a); | ||
191 | a = new QAction( tr( "Month" ), QString::null, 0, 0, 0, true ); | ||
192 | if (current==MONTH) a->setOn(true), viewMonth(); | ||
193 | ag->insert(a); | ||
194 | |||
195 | ag->addTo(default_view); | ||
196 | connect(ag, SIGNAL( selected ( QAction * ) ), | ||
197 | this, SLOT( newDefaultView(QAction *) ) | ||
198 | ); | ||
199 | |||
200 | connect( qApp, SIGNAL(clockChanged(bool)), | ||
201 | this, SLOT(changeClock(bool)) ); | ||
202 | connect( qApp, SIGNAL(weekChanged(bool)), | ||
203 | this, SLOT(changeWeek(bool)) ); | ||
204 | 174 | ||
205 | #if defined(Q_WS_QWS) && !defined(QT_NO_COP) | 175 | #if defined(Q_WS_QWS) && !defined(QT_NO_COP) |
206 | connect( qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)), | 176 | connect( qApp, SIGNAL(appMessage(const QCString&, const QByteArray&)), this, SLOT(appMessage(const QCString&, const QByteArray&)) ); |
207 | this, SLOT(appMessage(const QCString&, const QByteArray&)) ); | ||
208 | #endif | 177 | #endif |
209 | 178 | ||
210 | // listen on QPE/System | 179 | // listen on QPE/System |
211 | #if defined(Q_WS_QWS) | 180 | #if defined(Q_WS_QWS) |
212 | #if !defined(QT_NO_COP) | 181 | #if !defined(QT_NO_COP) |
213 | QCopChannel *channel = new QCopChannel( "QPE/System", this ); | 182 | QCopChannel *channel = new QCopChannel( "QPE/System", this ); |
214 | connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), | 183 | connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), this, SLOT(receive(const QCString&, const QByteArray&)) ); |
215 | this, SLOT(receive(const QCString&, const QByteArray&)) ); | ||
216 | channel = new QCopChannel( "QPE/Datebook", this ); | 184 | channel = new QCopChannel( "QPE/Datebook", this ); |
217 | connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), | 185 | connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), this, SLOT(receive(const QCString&, const QByteArray&)) ); |
218 | this, SLOT(receive(const QCString&, const QByteArray&)) ); | ||
219 | qDebug("olle\n"); | 186 | qDebug("olle\n"); |
220 | #endif | 187 | #endif |
221 | #endif | 188 | #endif |
222 | 189 | ||
223 | qDebug("done t=%d", t.elapsed() ); | 190 | qDebug("done t=%d", t.elapsed() ); |
224 | 191 | ||
225 | /* | 192 | /* |
226 | * Here is a problem description: | 193 | * Here is a problem description: |
227 | * When Weekview is the default view | 194 | * When Weekview is the default view |
228 | * a DateBookWeekView get's created | 195 | * a DateBookWeekView get's created |
229 | * redraw() get's called. So what? | 196 | * redraw() get's called. So what? |
230 | * Remember that we're still in the c'tor | 197 | * Remember that we're still in the c'tor |
@@ -258,57 +225,64 @@ void DateBook::receive( const QCString &msg, const QByteArray &data ) | |||
258 | stream >> uid; | 225 | stream >> uid; |
259 | Event e=db->eventByUID(uid); | 226 | Event e=db->eventByUID(uid); |
260 | editEvent(e); | 227 | editEvent(e); |
261 | } | 228 | } |
262 | } | 229 | } |
263 | 230 | ||
264 | DateBook::~DateBook() | 231 | DateBook::~DateBook() |
265 | { | 232 | { |
266 | } | 233 | } |
267 | 234 | ||
268 | void DateBook::slotSettings() | 235 | void DateBook::slotSettings() |
269 | { | 236 | { |
270 | DateBookSettings frmSettings( ampm, this ); | 237 | DateBookSettings frmSettings( ampm, this ); |
271 | frmSettings.setStartTime( startTime ); | 238 | frmSettings.setStartTime( startTime ); |
272 | frmSettings.setAlarmPreset( aPreset, presetTime ); | 239 | frmSettings.setAlarmPreset( aPreset, presetTime ); |
273 | frmSettings.setJumpToCurTime( bJumpToCurTime ); | 240 | frmSettings.setJumpToCurTime( bJumpToCurTime ); |
274 | frmSettings.setRowStyle( rowStyle ); | 241 | frmSettings.setRowStyle( rowStyle ); |
242 | frmSettings.comboDefaultView->setCurrentItem(defaultView-1); | ||
243 | frmSettings.comboWeekListView->setCurrentItem(weeklistviewconfig); | ||
244 | |||
275 | #if defined (Q_WS_QWS) || defined(_WS_QWS_) | 245 | #if defined (Q_WS_QWS) || defined(_WS_QWS_) |
276 | frmSettings.showMaximized(); | 246 | frmSettings.showMaximized(); |
277 | #endif | 247 | #endif |
278 | 248 | ||
279 | if ( frmSettings.exec() ) { | 249 | if ( frmSettings.exec() ) { |
280 | 250 | ||
281 | aPreset = frmSettings.alarmPreset(); | 251 | aPreset = frmSettings.alarmPreset(); |
282 | presetTime = frmSettings.presetTime(); | 252 | presetTime = frmSettings.presetTime(); |
283 | startTime = frmSettings.startTime(); | 253 | startTime = frmSettings.startTime(); |
284 | bJumpToCurTime = frmSettings.jumpToCurTime(); | 254 | bJumpToCurTime = frmSettings.jumpToCurTime(); |
285 | rowStyle = frmSettings.rowStyle(); | 255 | rowStyle = frmSettings.rowStyle(); |
256 | defaultView=frmSettings.comboDefaultView->currentItem()+1; | ||
257 | weeklistviewconfig=frmSettings.comboWeekListView->currentItem(); | ||
286 | 258 | ||
287 | if ( dayView ) { | 259 | if ( dayView ) { |
288 | dayView->setStartViewTime( startTime ); | 260 | dayView->setStartViewTime( startTime ); |
289 | dayView->setJumpToCurTime( bJumpToCurTime ); | 261 | dayView->setJumpToCurTime( bJumpToCurTime ); |
290 | dayView->setRowStyle( rowStyle ); | 262 | dayView->setRowStyle( rowStyle ); |
291 | } | 263 | } |
292 | if ( weekView ) { | 264 | if ( weekView ) { |
293 | weekView->setStartViewTime( startTime ); | 265 | weekView->setStartViewTime( startTime ); |
294 | } | 266 | } |
295 | saveSettings(); | 267 | saveSettings(); |
296 | 268 | ||
297 | // make the change obvious | 269 | // make the change obvious |
298 | if ( views->visibleWidget() ) { | 270 | if ( views->visibleWidget() ) { |
299 | if ( views->visibleWidget() == dayView ) | 271 | if ( views->visibleWidget() == dayView ) |
300 | dayView->redraw(); | 272 | dayView->redraw(); |
301 | else if ( views->visibleWidget() == weekView ) | 273 | else if ( views->visibleWidget() == weekView ) |
302 | weekView->redraw(); | 274 | weekView->redraw(); |
275 | else if ( views->visibleWidget() == weekLstView ) | ||
276 | weekLstView->redraw(); | ||
303 | } | 277 | } |
304 | } | 278 | } |
305 | } | 279 | } |
306 | 280 | ||
307 | void DateBook::fileNew() | 281 | void DateBook::fileNew() |
308 | { | 282 | { |
309 | slotNewEventFromKey(""); | 283 | slotNewEventFromKey(""); |
310 | } | 284 | } |
311 | 285 | ||
312 | QString DateBook::checkEvent(const Event &e) | 286 | QString DateBook::checkEvent(const Event &e) |
313 | { | 287 | { |
314 | /* check if overlaps with itself */ | 288 | /* check if overlaps with itself */ |
@@ -374,29 +348,32 @@ void DateBook::view(int v, const QDate &d) { | |||
374 | views->raiseWidget( weekLstView ); | 348 | views->raiseWidget( weekLstView ); |
375 | weekLstView->redraw(); | 349 | weekLstView->redraw(); |
376 | } else if (v==MONTH) { | 350 | } else if (v==MONTH) { |
377 | initMonth(); | 351 | initMonth(); |
378 | monthAction->setOn( TRUE ); | 352 | monthAction->setOn( TRUE ); |
379 | monthView->setDate( d.year(), d.month(), d.day() ); | 353 | monthView->setDate( d.year(), d.month(), d.day() ); |
380 | views->raiseWidget( monthView ); | 354 | views->raiseWidget( monthView ); |
381 | monthView->redraw(); | 355 | monthView->redraw(); |
382 | } | 356 | } |
383 | } | 357 | } |
384 | 358 | ||
385 | void DateBook::viewDefault(const QDate &d) { | 359 | void DateBook::viewDefault(const QDate &d) { |
360 | /* | ||
386 | Config config("DateBook"); | 361 | Config config("DateBook"); |
387 | config.setGroup("Main"); | 362 | config.setGroup("Main"); |
388 | int current=config.readNumEntry("defaultview", DAY); | 363 | int current=config.readNumEntry("defaultview", DAY); |
389 | 364 | ||
390 | view(current,d); | 365 | view(current,d); |
366 | */ | ||
367 | view(defaultView,d); | ||
391 | } | 368 | } |
392 | 369 | ||
393 | void DateBook::viewDay() { | 370 | void DateBook::viewDay() { |
394 | view(DAY,currentDate()); | 371 | view(DAY,currentDate()); |
395 | } | 372 | } |
396 | 373 | ||
397 | void DateBook::viewWeek() { | 374 | void DateBook::viewWeek() { |
398 | view(WEEK,currentDate()); | 375 | view(WEEK,currentDate()); |
399 | } | 376 | } |
400 | 377 | ||
401 | void DateBook::viewWeekLst() { | 378 | void DateBook::viewWeekLst() { |
402 | view(WEEKLST,currentDate()); | 379 | view(WEEKLST,currentDate()); |
@@ -599,239 +576,220 @@ void DateBook::initMonth() | |||
599 | monthView = new DateBookMonth( views, "month view", FALSE, db ); | 576 | monthView = new DateBookMonth( views, "month view", FALSE, db ); |
600 | views->addWidget( monthView, MONTH ); | 577 | views->addWidget( monthView, MONTH ); |
601 | connect( monthView, SIGNAL( dateClicked( int, int, int ) ), | 578 | connect( monthView, SIGNAL( dateClicked( int, int, int ) ), |
602 | this, SLOT( showDay( int, int, int ) ) ); | 579 | this, SLOT( showDay( int, int, int ) ) ); |
603 | connect( this, SIGNAL( newEvent() ), | 580 | connect( this, SIGNAL( newEvent() ), |
604 | monthView, SLOT( redraw() ) ); | 581 | monthView, SLOT( redraw() ) ); |
605 | qApp->processEvents(); | 582 | qApp->processEvents(); |
606 | } | 583 | } |
607 | } | 584 | } |
608 | 585 | ||
609 | void DateBook::loadSettings() | 586 | void DateBook::loadSettings() |
610 | { | 587 | { |
611 | { | 588 | Config qpeconfig( "qpe" ); |
612 | Config config( "qpe" ); | 589 | qpeconfig.setGroup("Time"); |
613 | config.setGroup("Time"); | 590 | ampm = qpeconfig.readBoolEntry( "AMPM", TRUE ); |
614 | ampm = config.readBoolEntry( "AMPM", TRUE ); | 591 | onMonday = qpeconfig.readBoolEntry( "MONDAY" ); |
615 | onMonday = config.readBoolEntry( "MONDAY" ); | ||
616 | } | ||
617 | 592 | ||
618 | { | ||
619 | Config config("DateBook"); | 593 | Config config("DateBook"); |
620 | config.setGroup("Main"); | 594 | config.setGroup("Main"); |
621 | startTime = config.readNumEntry("startviewtime", 8); | 595 | startTime = config.readNumEntry("startviewtime", 8); |
622 | aPreset = config.readBoolEntry("alarmpreset"); | 596 | aPreset = config.readBoolEntry("alarmpreset"); |
623 | presetTime = config.readNumEntry("presettime"); | 597 | presetTime = config.readNumEntry("presettime"); |
624 | bJumpToCurTime = config.readBoolEntry("jumptocurtime"); | 598 | bJumpToCurTime = config.readBoolEntry("jumptocurtime"); |
625 | rowStyle = config.readNumEntry("rowstyle"); | 599 | rowStyle = config.readNumEntry("rowstyle"); |
626 | } | 600 | defaultView = config.readNumEntry("defaultview",DAY); |
601 | weeklistviewconfig = config.readNumEntry("weeklistviewconfig",NORMAL); | ||
627 | } | 602 | } |
628 | 603 | ||
629 | void DateBook::saveSettings() | 604 | void DateBook::saveSettings() |
630 | { | 605 | { |
631 | Config config( "qpe" ); | 606 | Config config( "qpe" ); |
632 | Config configDB( "DateBook" ); | 607 | Config configDB( "DateBook" ); |
633 | configDB.setGroup( "Main" ); | 608 | configDB.setGroup( "Main" ); |
634 | configDB.writeEntry("startviewtime",startTime); | 609 | configDB.writeEntry("startviewtime",startTime); |
635 | configDB.writeEntry("alarmpreset",aPreset); | 610 | configDB.writeEntry("alarmpreset",aPreset); |
636 | configDB.writeEntry("presettime",presetTime); | 611 | configDB.writeEntry("presettime",presetTime); |
637 | configDB.writeEntry("jumptocurtime", bJumpToCurTime); | 612 | configDB.writeEntry("jumptocurtime", bJumpToCurTime); |
638 | configDB.writeEntry("rowstyle", rowStyle); | 613 | configDB.writeEntry("rowstyle", rowStyle); |
639 | } | 614 | configDB.writeEntry("defaultview",defaultView); |
640 | 615 | configDB.writeEntry("weeklistviewconfig",weeklistviewconfig); | |
641 | void DateBook::newDefaultView(QAction *a) { | ||
642 | int val=DAY; | ||
643 | if (a->text() == "Day") val=DAY; | ||
644 | if (a->text() == "Week") val=WEEK; | ||
645 | if (a->text() == "WeekLst") val=WEEKLST; | ||
646 | if (a->text() == "Month") val=MONTH; | ||
647 | |||
648 | Config configDB( "DateBook" ); | ||
649 | configDB.setGroup( "Main" ); | ||
650 | configDB.writeEntry("defaultview",val); | ||
651 | } | 616 | } |
652 | 617 | ||
653 | void DateBook::appMessage(const QCString& msg, const QByteArray& data) | 618 | void DateBook::appMessage(const QCString& msg, const QByteArray& data) |
654 | { | 619 | { |
655 | bool needShow = FALSE; | 620 | bool needShow = FALSE; |
656 | if ( msg == "alarm(QDateTime,int)" ) { | 621 | if ( msg == "alarm(QDateTime,int)" ) { |
657 | QDataStream ds(data,IO_ReadOnly); | 622 | QDataStream ds(data,IO_ReadOnly); |
658 | QDateTime when; int warn; | 623 | QDateTime when; int warn; |
659 | ds >> when >> warn; | 624 | ds >> when >> warn; |
660 | 625 | ||
661 | // check to make it's okay to continue, | 626 | // check to make it's okay to continue, |
662 | // this is the case that the time was set ahead, and | 627 | // this is the case that the time was set ahead, and |
663 | // we are forced given a stale alarm... | 628 | // we are forced given a stale alarm... |
664 | QDateTime current = QDateTime::currentDateTime(); | 629 | QDateTime current = QDateTime::currentDateTime(); |
665 | if ( current.time().hour() != when.time().hour() | 630 | if ( current.time().hour() != when.time().hour() && current.time().minute() != when.time().minute() ) |
666 | && current.time().minute() != when.time().minute() ) | 631 | return; |
667 | return; | 632 | |
668 | 633 | QValueList<EffectiveEvent> list = db->getEffectiveEvents(when.addSecs(warn*60)); | |
669 | QValueList<EffectiveEvent> list = db->getEffectiveEvents(when.addSecs(warn*60)); | 634 | if ( list.count() > 0 ) { |
670 | if ( list.count() > 0 ) { | 635 | QString msg; |
671 | QString msg; | 636 | bool bSound = FALSE; |
672 | bool bSound = FALSE; | 637 | int stopTimer = 0; |
673 | int stopTimer = 0; | 638 | bool found = FALSE; |
674 | bool found = FALSE; | 639 | for ( QValueList<EffectiveEvent>::ConstIterator it=list.begin(); it!=list.end(); ++it ) { |
675 | for ( QValueList<EffectiveEvent>::ConstIterator it=list.begin(); | 640 | if ( (*it).event().hasAlarm() ) { |
676 | it!=list.end(); ++it ) { | 641 | found = TRUE; |
677 | if ( (*it).event().hasAlarm() ) { | 642 | msg += "<CENTER><B>" + (*it).description() + "</B>" |
678 | found = TRUE; | 643 | + "<BR>" + (*it).location() + "<BR>" |
679 | msg += "<CENTER><B>" + (*it).description() + "</B>" | 644 | + TimeString::dateString((*it).event().start(),ampm) |
680 | + "<BR>" + (*it).location() + "<BR>" | 645 | + (warn |
681 | + TimeString::dateString((*it).event().start(),ampm) | 646 | ? tr(" (in " + QString::number(warn) |
682 | + (warn | 647 | + tr(" minutes)")) |
683 | ? tr(" (in " + QString::number(warn) | 648 | : QString("")) |
684 | + tr(" minutes)")) | 649 | + "<BR>" |
685 | : QString("")) | 650 | + (*it).notes() + "</CENTER>"; |
686 | + "<BR>" | 651 | if ( (*it).event().alarmSound() != Event::Silent ) { |
687 | + (*it).notes() + "</CENTER>"; | 652 | bSound = TRUE; |
688 | if ( (*it).event().alarmSound() != Event::Silent ) { | 653 | } |
689 | bSound = TRUE; | 654 | } |
690 | } | 655 | } |
691 | } | 656 | if ( found ) { |
692 | } | 657 | if ( bSound ) { |
693 | if ( found ) { | 658 | Sound::soundAlarm(); |
694 | if ( bSound ) { | 659 | alarmCounter = 0; |
695 | Sound::soundAlarm(); | 660 | stopTimer = startTimer( 5000 ); |
696 | alarmCounter = 0; | 661 | } |
697 | stopTimer = startTimer( 5000 ); | 662 | QDialog dlg( this, 0, TRUE ); |
698 | } | 663 | QVBoxLayout *vb = new QVBoxLayout( &dlg ); |
699 | 664 | QScrollView *view = new QScrollView( &dlg, "scrollView"); | |
700 | QDialog dlg( this, 0, TRUE ); | 665 | view->setResizePolicy( QScrollView::AutoOneFit ); |
701 | QVBoxLayout *vb = new QVBoxLayout( &dlg ); | 666 | vb->addWidget( view ); |
702 | QScrollView *view = new QScrollView( &dlg, "scrollView"); | 667 | QLabel *lblMsg = new QLabel( msg, &dlg ); |
703 | view->setResizePolicy( QScrollView::AutoOneFit ); | 668 | view->addChild( lblMsg ); |
704 | vb->addWidget( view ); | 669 | QPushButton *cmdOk = new QPushButton( tr("OK"), &dlg ); |
705 | QLabel *lblMsg = new QLabel( msg, &dlg ); | 670 | connect( cmdOk, SIGNAL(clicked()), &dlg, SLOT(accept()) ); |
706 | view->addChild( lblMsg ); | 671 | vb->addWidget( cmdOk ); |
707 | QPushButton *cmdOk = new QPushButton( tr("OK"), &dlg ); | ||
708 | connect( cmdOk, SIGNAL(clicked()), &dlg, SLOT(accept()) ); | ||
709 | vb->addWidget( cmdOk ); | ||
710 | 672 | ||
711 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) | 673 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) |
712 | dlg.showMaximized(); | 674 | dlg.showMaximized(); |
713 | #endif | 675 | #endif |
714 | needShow = dlg.exec(); | 676 | needShow = dlg.exec(); |
715 | 677 | ||
716 | if ( bSound ) | 678 | if ( bSound ) |
717 | killTimer( stopTimer ); | 679 | killTimer( stopTimer ); |
718 | } | 680 | } |
719 | } | 681 | } |
720 | } else if ( msg == "nextView()" ) { | 682 | } else if ( msg == "nextView()" ) { |
721 | if ( !qApp-> activeWindow ( )) { | 683 | if ( !qApp-> activeWindow ( )) { |
722 | needShow = TRUE; | 684 | needShow = TRUE; |
723 | } | 685 | } else { |
724 | else { | 686 | QWidget* cur = views->visibleWidget(); |
725 | QWidget* cur = views->visibleWidget(); | 687 | if ( cur ) { |
726 | if ( cur ) { | 688 | if ( cur == dayView ) |
727 | if ( cur == dayView ) | 689 | viewWeek(); |
728 | viewWeek(); | 690 | else if ( cur == weekView ) |
729 | else if ( cur == weekView ) | 691 | viewWeekLst(); |
730 | viewWeekLst(); | 692 | else if ( cur == weekLstView ) |
731 | else if ( cur == weekLstView ) | 693 | viewMonth(); |
732 | viewMonth(); | 694 | else if ( cur == monthView ) |
733 | else if ( cur == monthView ) | 695 | viewDay(); |
734 | viewDay(); | 696 | needShow = TRUE; |
735 | needShow = TRUE; | 697 | } |
736 | } | 698 | } |
737 | } | ||
738 | } | 699 | } |
739 | if ( needShow ) { | 700 | if ( needShow ) { |
740 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) | 701 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) |
741 | showMaximized(); | 702 | showMaximized(); |
742 | #else | 703 | #else |
743 | show(); | 704 | show(); |
744 | #endif | 705 | #endif |
745 | raise(); | 706 | raise(); |
746 | QPEApplication::setKeepRunning(); | 707 | QPEApplication::setKeepRunning(); |
747 | setActiveWindow(); | 708 | setActiveWindow(); |
748 | } | 709 | } |
749 | } | 710 | } |
750 | 711 | ||
751 | void DateBook::reload() | 712 | void DateBook::reload() |
752 | { | 713 | { |
753 | db->reload(); | 714 | db->reload(); |
754 | if ( dayAction->isOn() ) | 715 | if ( dayAction->isOn() ) viewDay(); |
755 | viewDay(); | 716 | else if ( weekAction->isOn() ) viewWeek(); |
756 | else if ( weekAction->isOn() ) | 717 | else if ( monthAction->isOn() ) viewMonth(); |
757 | viewWeek(); | 718 | syncing = FALSE; |
758 | else if ( monthAction->isOn() ) | ||
759 | viewMonth(); | ||
760 | syncing = FALSE; | ||
761 | } | 719 | } |
762 | 720 | ||
763 | void DateBook::flush() | 721 | void DateBook::flush() |
764 | { | 722 | { |
765 | syncing = TRUE; | 723 | syncing = TRUE; |
766 | db->save(); | 724 | db->save(); |
767 | } | 725 | } |
768 | 726 | ||
769 | void DateBook::timerEvent( QTimerEvent *e ) | 727 | void DateBook::timerEvent( QTimerEvent *e ) |
770 | { | 728 | { |
771 | if ( alarmCounter < 10 ) { | 729 | if ( alarmCounter < 10 ) { |
772 | alarmCounter++; | 730 | alarmCounter++; |
773 | Sound::soundAlarm(); | 731 | Sound::soundAlarm(); |
774 | } | 732 | } else { |
775 | else | 733 | killTimer( e->timerId() ); |
776 | killTimer( e->timerId() ); | 734 | } |
777 | } | 735 | } |
778 | 736 | ||
779 | void DateBook::changeClock( bool newClock ) | 737 | void DateBook::changeClock( bool newClock ) |
780 | { | 738 | { |
781 | ampm = newClock; | 739 | ampm = newClock; |
782 | // repaint the affected objects... | 740 | // repaint the affected objects... |
783 | if (dayView) dayView->redraw(); | 741 | if (dayView) dayView->redraw(); |
784 | if (weekView) weekView->redraw(); | 742 | if (weekView) weekView->redraw(); |
785 | if (weekLstView) weekLstView->redraw(); | 743 | if (weekLstView) weekLstView->redraw(); |
786 | } | 744 | } |
787 | 745 | ||
788 | void DateBook::changeWeek( bool m ) | 746 | void DateBook::changeWeek( bool m ) |
789 | { | 747 | { |
790 | /* no need to redraw, each widget catches. Do need to | 748 | /* no need to redraw, each widget catches. Do need to |
791 | store though for widgets we haven't made yet */ | 749 | store though for widgets we haven't made yet */ |
792 | onMonday = m; | 750 | onMonday = m; |
793 | } | 751 | } |
794 | 752 | ||
795 | void DateBook::slotToday() | 753 | void DateBook::slotToday() |
796 | { | 754 | { |
797 | // we need to view today using default view | 755 | // we need to view today using default view |
798 | viewDefault(QDate::currentDate()); | 756 | view(defaultView,QDate::currentDate()); |
799 | } | 757 | } |
800 | 758 | ||
801 | void DateBook::closeEvent( QCloseEvent *e ) | 759 | void DateBook::closeEvent( QCloseEvent *e ) |
802 | { | 760 | { |
803 | if(syncing) { | 761 | if(syncing) { |
804 | /* no need to save, did that at flush */ | 762 | /* no need to save, did that at flush */ |
805 | e->accept(); | 763 | e->accept(); |
806 | return; | 764 | return; |
807 | } | 765 | } |
808 | 766 | ||
809 | // save settings will generate it's own error messages, no | 767 | // save settings will generate it's own error messages, no |
810 | // need to do checking ourselves. | 768 | // need to do checking ourselves. |
811 | saveSettings(); | 769 | saveSettings(); |
812 | if ( db->save() ) | 770 | if ( db->save() ) { |
813 | e->accept(); | 771 | e->accept(); |
814 | else { | 772 | } else { |
815 | if ( QMessageBox::critical( this, tr( "Out of space" ), | 773 | if ( QMessageBox::critical( this, tr( "Out of space" ), |
816 | tr("Calendar was unable to save\n" | 774 | tr("Calendar was unable to save\n" |
817 | "your changes.\n" | 775 | "your changes.\n" |
818 | "Free up some space and try again.\n" | 776 | "Free up some space and try again.\n" |
819 | "\nQuit anyway?"), | 777 | "\nQuit anyway?"), |
820 | QMessageBox::Yes|QMessageBox::Escape, | 778 | QMessageBox::Yes|QMessageBox::Escape, |
821 | QMessageBox::No|QMessageBox::Default ) | 779 | QMessageBox::No|QMessageBox::Default ) |
822 | != QMessageBox::No ) | 780 | != QMessageBox::No ) |
823 | e->accept(); | 781 | e->accept(); |
824 | else | 782 | else |
825 | e->ignore(); | 783 | e->ignore(); |
826 | } | 784 | } |
827 | } | 785 | } |
828 | 786 | ||
829 | // Entering directly from the "keyboard" | 787 | // Entering directly from the "keyboard" |
830 | void DateBook::slotNewEventFromKey( const QString &str ) | 788 | void DateBook::slotNewEventFromKey( const QString &str ) |
831 | { | 789 | { |
832 | if (syncing) { | 790 | if (syncing) { |
833 | QMessageBox::warning( this, tr("Calendar"), | 791 | QMessageBox::warning( this, tr("Calendar"), |
834 | tr( "Can not edit data, currently syncing") ); | 792 | tr( "Can not edit data, currently syncing") ); |
835 | return; | 793 | return; |
836 | } | 794 | } |
837 | 795 | ||
diff --git a/core/pim/datebook/datebook.h b/core/pim/datebook/datebook.h index 623862b..5216770 100644 --- a/core/pim/datebook/datebook.h +++ b/core/pim/datebook/datebook.h | |||
@@ -15,24 +15,27 @@ | |||
15 | ** | 15 | ** |
16 | ** Contact info@trolltech.com if any conditions of this licensing are | 16 | ** Contact info@trolltech.com if any conditions of this licensing are |
17 | ** not clear to you. | 17 | ** not clear to you. |
18 | ** | 18 | ** |
19 | **********************************************************************/ | 19 | **********************************************************************/ |
20 | #ifndef DATEBOOK_H | 20 | #ifndef DATEBOOK_H |
21 | #define DATEBOOK_H | 21 | #define DATEBOOK_H |
22 | 22 | ||
23 | #include <qpe/datebookdb.h> | 23 | #include <qpe/datebookdb.h> |
24 | 24 | ||
25 | #include <qmainwindow.h> | 25 | #include <qmainwindow.h> |
26 | 26 | ||
27 | enum { DAY=1,WEEK,WEEKLST,MONTH };// defaultView values | ||
28 | enum { NONE=0,NORMAL,EXTENDED };// WeekLstView's modes. | ||
29 | |||
27 | class QAction; | 30 | class QAction; |
28 | class QWidgetStack; | 31 | class QWidgetStack; |
29 | class DateBookDay; | 32 | class DateBookDay; |
30 | class DateBookWeek; | 33 | class DateBookWeek; |
31 | class DateBookWeekLst; | 34 | class DateBookWeekLst; |
32 | class DateBookMonth; | 35 | class DateBookMonth; |
33 | class Event; | 36 | class Event; |
34 | class QDate; | 37 | class QDate; |
35 | class Ir; | 38 | class Ir; |
36 | 39 | ||
37 | class DateBookDBHack : public DateBookDB { | 40 | class DateBookDBHack : public DateBookDB { |
38 | public: | 41 | public: |
@@ -58,25 +61,24 @@ protected: | |||
58 | void closeEvent( QCloseEvent *e ); | 61 | void closeEvent( QCloseEvent *e ); |
59 | 62 | ||
60 | void view(int v, const QDate &d); | 63 | void view(int v, const QDate &d); |
61 | 64 | ||
62 | public slots: | 65 | public slots: |
63 | void flush(); | 66 | void flush(); |
64 | void reload(); | 67 | void reload(); |
65 | 68 | ||
66 | private slots: | 69 | private slots: |
67 | void fileNew(); | 70 | void fileNew(); |
68 | void slotNewEntry(const QDateTime &start, const QDateTime &end, const QString &str, const QString &location=0); | 71 | void slotNewEntry(const QDateTime &start, const QDateTime &end, const QString &str, const QString &location=0); |
69 | void slotSettings(); | 72 | void slotSettings(); |
70 | void newDefaultView(QAction *a); | ||
71 | void slotToday();// view today | 73 | void slotToday();// view today |
72 | void changeClock( bool newClock ); | 74 | void changeClock( bool newClock ); |
73 | void changeWeek( bool newDay ); | 75 | void changeWeek( bool newDay ); |
74 | void appMessage(const QCString& msg, const QByteArray& data); | 76 | void appMessage(const QCString& msg, const QByteArray& data); |
75 | // handle key events in the day view... | 77 | // handle key events in the day view... |
76 | void slotNewEventFromKey( const QString &str ); | 78 | void slotNewEventFromKey( const QString &str ); |
77 | void slotFind(); | 79 | void slotFind(); |
78 | void slotDoFind( const QString &, const QDate &, bool, bool, int ); | 80 | void slotDoFind( const QString &, const QDate &, bool, bool, int ); |
79 | 81 | ||
80 | void viewDefault(const QDate &d); | 82 | void viewDefault(const QDate &d); |
81 | 83 | ||
82 | void viewDay(); | 84 | void viewDay(); |
@@ -103,29 +105,31 @@ private: | |||
103 | void initMonth(); | 105 | void initMonth(); |
104 | void loadSettings(); | 106 | void loadSettings(); |
105 | void saveSettings(); | 107 | void saveSettings(); |
106 | 108 | ||
107 | private: | 109 | private: |
108 | DateBookDBHack *db; | 110 | DateBookDBHack *db; |
109 | QWidgetStack *views; | 111 | QWidgetStack *views; |
110 | DateBookDay *dayView; | 112 | DateBookDay *dayView; |
111 | DateBookWeek *weekView; | 113 | DateBookWeek *weekView; |
112 | DateBookMonth *monthView; | 114 | DateBookMonth *monthView; |
113 | DateBookWeekLst *weekLstView; | 115 | DateBookWeekLst *weekLstView; |
114 | QAction *dayAction, *weekAction, *weekLstAction, *monthAction; | 116 | QAction *dayAction, *weekAction, *weekLstAction, *monthAction; |
117 | int weeklistviewconfig; | ||
115 | bool aPreset; // have everything set to alarm? | 118 | bool aPreset; // have everything set to alarm? |
116 | int presetTime; // the standard time for the alarm | 119 | int presetTime; // the standard time for the alarm |
117 | int startTime; | 120 | int startTime; |
118 | int rowStyle; | 121 | int rowStyle; |
119 | bool bJumpToCurTime; //should jump to current time in dayview? | 122 | int defaultView; |
123 | bool bJumpToCurTime; //should jump to current time in dayview? | ||
120 | bool ampm; | 124 | bool ampm; |
121 | bool onMonday; | 125 | bool onMonday; |
122 | 126 | ||
123 | bool syncing; | 127 | bool syncing; |
124 | bool inSearch; | 128 | bool inSearch; |
125 | 129 | ||
126 | int alarmCounter; | 130 | int alarmCounter; |
127 | 131 | ||
128 | QString checkEvent(const Event &); | 132 | QString checkEvent(const Event &); |
129 | }; | 133 | }; |
130 | 134 | ||
131 | #endif | 135 | #endif |
diff --git a/core/pim/datebook/datebooksettingsbase.ui b/core/pim/datebook/datebooksettingsbase.ui index 816a441..3836330 100644 --- a/core/pim/datebook/datebooksettingsbase.ui +++ b/core/pim/datebook/datebooksettingsbase.ui | |||
@@ -23,371 +23,547 @@ | |||
23 | **********************************************************************</comment> | 23 | **********************************************************************</comment> |
24 | <widget> | 24 | <widget> |
25 | <class>QDialog</class> | 25 | <class>QDialog</class> |
26 | <property stdset="1"> | 26 | <property stdset="1"> |
27 | <name>name</name> | 27 | <name>name</name> |
28 | <cstring>DateBookSettingsBase</cstring> | 28 | <cstring>DateBookSettingsBase</cstring> |
29 | </property> | 29 | </property> |
30 | <property stdset="1"> | 30 | <property stdset="1"> |
31 | <name>geometry</name> | 31 | <name>geometry</name> |
32 | <rect> | 32 | <rect> |
33 | <x>0</x> | 33 | <x>0</x> |
34 | <y>0</y> | 34 | <y>0</y> |
35 | <width>220</width> | 35 | <width>273</width> |
36 | <height>290</height> | 36 | <height>303</height> |
37 | </rect> | 37 | </rect> |
38 | </property> | 38 | </property> |
39 | <property stdset="1"> | 39 | <property stdset="1"> |
40 | <name>caption</name> | 40 | <name>caption</name> |
41 | <string>Preferences</string> | 41 | <string>Preferences</string> |
42 | </property> | 42 | </property> |
43 | <property> | 43 | <property> |
44 | <name>layoutMargin</name> | 44 | <name>layoutMargin</name> |
45 | </property> | 45 | </property> |
46 | <property> | 46 | <property> |
47 | <name>layoutSpacing</name> | 47 | <name>layoutSpacing</name> |
48 | </property> | 48 | </property> |
49 | <grid> | 49 | <vbox> |
50 | <property stdset="1"> | 50 | <property stdset="1"> |
51 | <name>margin</name> | 51 | <name>margin</name> |
52 | <number>11</number> | 52 | <number>11</number> |
53 | </property> | 53 | </property> |
54 | <property stdset="1"> | 54 | <property stdset="1"> |
55 | <name>spacing</name> | 55 | <name>spacing</name> |
56 | <number>6</number> | 56 | <number>6</number> |
57 | </property> | 57 | </property> |
58 | <widget row="0" column="0" > | 58 | <widget> |
59 | <class>QGroupBox</class> | 59 | <class>QTabWidget</class> |
60 | <property stdset="1"> | 60 | <property stdset="1"> |
61 | <name>name</name> | 61 | <name>name</name> |
62 | <cstring>fraStart</cstring> | 62 | <cstring>TabWidget2</cstring> |
63 | </property> | ||
64 | <property stdset="1"> | ||
65 | <name>frameShape</name> | ||
66 | <enum>Box</enum> | ||
67 | </property> | ||
68 | <property stdset="1"> | ||
69 | <name>frameShadow</name> | ||
70 | <enum>Sunken</enum> | ||
71 | </property> | ||
72 | <property stdset="1"> | ||
73 | <name>title</name> | ||
74 | <string>Start viewing events</string> | ||
75 | </property> | 63 | </property> |
76 | <widget> | 64 | <widget> |
77 | <class>QLayoutWidget</class> | 65 | <class>QWidget</class> |
78 | <property stdset="1"> | 66 | <property stdset="1"> |
79 | <name>name</name> | 67 | <name>name</name> |
80 | <cstring>Layout6</cstring> | 68 | <cstring>tab</cstring> |
81 | </property> | 69 | </property> |
82 | <property stdset="1"> | 70 | <attribute> |
83 | <name>geometry</name> | 71 | <name>title</name> |
84 | <rect> | 72 | <string>Views</string> |
85 | <x>3</x> | 73 | </attribute> |
86 | <y>21</y> | 74 | <vbox> |
87 | <width>210</width> | ||
88 | <height>53</height> | ||
89 | </rect> | ||
90 | </property> | ||
91 | <grid> | ||
92 | <property stdset="1"> | 75 | <property stdset="1"> |
93 | <name>margin</name> | 76 | <name>margin</name> |
94 | <number>0</number> | 77 | <number>11</number> |
95 | </property> | 78 | </property> |
96 | <property stdset="1"> | 79 | <property stdset="1"> |
97 | <name>spacing</name> | 80 | <name>spacing</name> |
98 | <number>6</number> | 81 | <number>6</number> |
99 | </property> | 82 | </property> |
100 | <spacer row="1" column="0" > | 83 | <widget> |
101 | <property> | ||
102 | <name>name</name> | ||
103 | <cstring>Spacer1</cstring> | ||
104 | </property> | ||
105 | <property stdset="1"> | ||
106 | <name>orientation</name> | ||
107 | <enum>Vertical</enum> | ||
108 | </property> | ||
109 | <property stdset="1"> | ||
110 | <name>sizeType</name> | ||
111 | <enum>Expanding</enum> | ||
112 | </property> | ||
113 | <property> | ||
114 | <name>sizeHint</name> | ||
115 | <size> | ||
116 | <width>20</width> | ||
117 | <height>20</height> | ||
118 | </size> | ||
119 | </property> | ||
120 | </spacer> | ||
121 | <widget row="0" column="0" > | ||
122 | <class>QLayoutWidget</class> | 84 | <class>QLayoutWidget</class> |
123 | <property stdset="1"> | 85 | <property stdset="1"> |
124 | <name>name</name> | 86 | <name>name</name> |
125 | <cstring>Layout1</cstring> | 87 | <cstring>Layout5</cstring> |
126 | </property> | 88 | </property> |
127 | <hbox> | 89 | <hbox> |
128 | <property stdset="1"> | 90 | <property stdset="1"> |
129 | <name>margin</name> | 91 | <name>margin</name> |
130 | <number>0</number> | 92 | <number>0</number> |
131 | </property> | 93 | </property> |
132 | <property stdset="1"> | 94 | <property stdset="1"> |
133 | <name>spacing</name> | 95 | <name>spacing</name> |
134 | <number>6</number> | 96 | <number>6</number> |
135 | </property> | 97 | </property> |
98 | <spacer> | ||
99 | <property> | ||
100 | <name>name</name> | ||
101 | <cstring>Spacer1</cstring> | ||
102 | </property> | ||
103 | <property stdset="1"> | ||
104 | <name>orientation</name> | ||
105 | <enum>Horizontal</enum> | ||
106 | </property> | ||
107 | <property stdset="1"> | ||
108 | <name>sizeType</name> | ||
109 | <enum>Expanding</enum> | ||
110 | </property> | ||
111 | <property> | ||
112 | <name>sizeHint</name> | ||
113 | <size> | ||
114 | <width>20</width> | ||
115 | <height>20</height> | ||
116 | </size> | ||
117 | </property> | ||
118 | </spacer> | ||
136 | <widget> | 119 | <widget> |
137 | <class>QLabel</class> | 120 | <class>QLabel</class> |
138 | <property stdset="1"> | 121 | <property stdset="1"> |
139 | <name>name</name> | 122 | <name>name</name> |
140 | <cstring>lblStartTime</cstring> | 123 | <cstring>TextLabel1_2</cstring> |
141 | </property> | 124 | </property> |
142 | <property stdset="1"> | 125 | <property stdset="1"> |
143 | <name>text</name> | 126 | <name>text</name> |
144 | <string>Start Time:</string> | 127 | <string>Default view:</string> |
145 | </property> | 128 | </property> |
146 | </widget> | 129 | </widget> |
147 | <widget> | 130 | <widget> |
148 | <class>QSpinBox</class> | 131 | <class>QComboBox</class> |
132 | <item> | ||
133 | <property> | ||
134 | <name>text</name> | ||
135 | <string>Day</string> | ||
136 | </property> | ||
137 | </item> | ||
138 | <item> | ||
139 | <property> | ||
140 | <name>text</name> | ||
141 | <string>Week</string> | ||
142 | </property> | ||
143 | </item> | ||
144 | <item> | ||
145 | <property> | ||
146 | <name>text</name> | ||
147 | <string>Week List</string> | ||
148 | </property> | ||
149 | </item> | ||
150 | <item> | ||
151 | <property> | ||
152 | <name>text</name> | ||
153 | <string>Month</string> | ||
154 | </property> | ||
155 | </item> | ||
149 | <property stdset="1"> | 156 | <property stdset="1"> |
150 | <name>name</name> | 157 | <name>name</name> |
151 | <cstring>spinStart</cstring> | 158 | <cstring>comboDefaultView</cstring> |
152 | </property> | 159 | </property> |
153 | <property stdset="1"> | 160 | </widget> |
154 | <name>suffix</name> | 161 | <spacer> |
155 | <string>:00</string> | 162 | <property> |
163 | <name>name</name> | ||
164 | <cstring>Spacer2</cstring> | ||
156 | </property> | 165 | </property> |
157 | <property stdset="1"> | 166 | <property stdset="1"> |
158 | <name>wrapping</name> | 167 | <name>orientation</name> |
159 | <bool>true</bool> | 168 | <enum>Horizontal</enum> |
160 | </property> | 169 | </property> |
161 | <property stdset="1"> | 170 | <property stdset="1"> |
162 | <name>maxValue</name> | 171 | <name>sizeType</name> |
163 | <number>23</number> | 172 | <enum>Expanding</enum> |
164 | </property> | 173 | </property> |
165 | </widget> | 174 | <property> |
175 | <name>sizeHint</name> | ||
176 | <size> | ||
177 | <width>20</width> | ||
178 | <height>20</height> | ||
179 | </size> | ||
180 | </property> | ||
181 | </spacer> | ||
166 | </hbox> | 182 | </hbox> |
167 | </widget> | 183 | </widget> |
168 | </grid> | 184 | <widget> |
169 | </widget> | 185 | <class>QGroupBox</class> |
170 | </widget> | ||
171 | <widget row="1" column="0" > | ||
172 | <class>QGroupBox</class> | ||
173 | <property stdset="1"> | ||
174 | <name>name</name> | ||
175 | <cstring>fraAlarm</cstring> | ||
176 | </property> | ||
177 | <property stdset="1"> | ||
178 | <name>title</name> | ||
179 | <string>Alarm Settings</string> | ||
180 | </property> | ||
181 | <widget> | ||
182 | <class>QLayoutWidget</class> | ||
183 | <property stdset="1"> | ||
184 | <name>name</name> | ||
185 | <cstring>Layout4</cstring> | ||
186 | </property> | ||
187 | <property stdset="1"> | ||
188 | <name>geometry</name> | ||
189 | <rect> | ||
190 | <x>10</x> | ||
191 | <y>20</y> | ||
192 | <width>200</width> | ||
193 | <height>53</height> | ||
194 | </rect> | ||
195 | </property> | ||
196 | <grid> | ||
197 | <property stdset="1"> | ||
198 | <name>margin</name> | ||
199 | <number>0</number> | ||
200 | </property> | ||
201 | <property stdset="1"> | ||
202 | <name>spacing</name> | ||
203 | <number>6</number> | ||
204 | </property> | ||
205 | <spacer row="1" column="0" > | ||
206 | <property> | ||
207 | <name>name</name> | ||
208 | <cstring>Spacer2</cstring> | ||
209 | </property> | ||
210 | <property stdset="1"> | ||
211 | <name>orientation</name> | ||
212 | <enum>Vertical</enum> | ||
213 | </property> | ||
214 | <property stdset="1"> | 186 | <property stdset="1"> |
215 | <name>sizeType</name> | 187 | <name>name</name> |
216 | <enum>Expanding</enum> | 188 | <cstring>GroupBox4</cstring> |
217 | </property> | ||
218 | <property> | ||
219 | <name>sizeHint</name> | ||
220 | <size> | ||
221 | <width>20</width> | ||
222 | <height>20</height> | ||
223 | </size> | ||
224 | </property> | 189 | </property> |
225 | </spacer> | ||
226 | <widget row="0" column="0" > | ||
227 | <class>QLayoutWidget</class> | ||
228 | <property stdset="1"> | 190 | <property stdset="1"> |
229 | <name>name</name> | 191 | <name>title</name> |
230 | <cstring>Layout6</cstring> | 192 | <string>Day</string> |
231 | </property> | 193 | </property> |
232 | <hbox> | 194 | <vbox> |
233 | <property stdset="1"> | 195 | <property stdset="1"> |
234 | <name>margin</name> | 196 | <name>margin</name> |
235 | <number>0</number> | 197 | <number>11</number> |
236 | </property> | 198 | </property> |
237 | <property stdset="1"> | 199 | <property stdset="1"> |
238 | <name>spacing</name> | 200 | <name>spacing</name> |
239 | <number>6</number> | 201 | <number>6</number> |
240 | </property> | 202 | </property> |
241 | <widget> | 203 | <widget> |
242 | <class>QCheckBox</class> | 204 | <class>QCheckBox</class> |
243 | <property stdset="1"> | 205 | <property stdset="1"> |
244 | <name>name</name> | 206 | <name>name</name> |
245 | <cstring>chkAlarmPreset</cstring> | 207 | <cstring>chkJumpToCurTime</cstring> |
246 | </property> | 208 | </property> |
247 | <property stdset="1"> | 209 | <property stdset="1"> |
248 | <name>text</name> | 210 | <name>text</name> |
249 | <string>Alarm Preset</string> | 211 | <string>Jump to current time</string> |
250 | </property> | 212 | </property> |
251 | </widget> | 213 | </widget> |
252 | <widget> | 214 | <widget> |
253 | <class>QSpinBox</class> | 215 | <class>QLayoutWidget</class> |
254 | <property stdset="1"> | 216 | <property stdset="1"> |
255 | <name>name</name> | 217 | <name>name</name> |
256 | <cstring>spinPreset</cstring> | 218 | <cstring>Layout5</cstring> |
257 | </property> | ||
258 | <property stdset="1"> | ||
259 | <name>enabled</name> | ||
260 | <bool>false</bool> | ||
261 | </property> | ||
262 | <property stdset="1"> | ||
263 | <name>suffix</name> | ||
264 | <string> minutes</string> | ||
265 | </property> | ||
266 | <property stdset="1"> | ||
267 | <name>maxValue</name> | ||
268 | <number>180</number> | ||
269 | </property> | ||
270 | <property stdset="1"> | ||
271 | <name>minValue</name> | ||
272 | <number>0</number> | ||
273 | </property> | ||
274 | <property stdset="1"> | ||
275 | <name>lineStep</name> | ||
276 | <number>5</number> | ||
277 | </property> | 219 | </property> |
220 | <hbox> | ||
221 | <property stdset="1"> | ||
222 | <name>margin</name> | ||
223 | <number>0</number> | ||
224 | </property> | ||
225 | <property stdset="1"> | ||
226 | <name>spacing</name> | ||
227 | <number>6</number> | ||
228 | </property> | ||
229 | <widget> | ||
230 | <class>QLabel</class> | ||
231 | <property stdset="1"> | ||
232 | <name>name</name> | ||
233 | <cstring>TextLabel1</cstring> | ||
234 | </property> | ||
235 | <property stdset="1"> | ||
236 | <name>text</name> | ||
237 | <string>Row style:</string> | ||
238 | </property> | ||
239 | </widget> | ||
240 | <widget> | ||
241 | <class>QComboBox</class> | ||
242 | <item> | ||
243 | <property> | ||
244 | <name>text</name> | ||
245 | <string>Default</string> | ||
246 | </property> | ||
247 | </item> | ||
248 | <item> | ||
249 | <property> | ||
250 | <name>text</name> | ||
251 | <string>Medium</string> | ||
252 | </property> | ||
253 | </item> | ||
254 | <item> | ||
255 | <property> | ||
256 | <name>text</name> | ||
257 | <string>Large</string> | ||
258 | </property> | ||
259 | </item> | ||
260 | <property stdset="1"> | ||
261 | <name>name</name> | ||
262 | <cstring>comboRowStyle</cstring> | ||
263 | </property> | ||
264 | </widget> | ||
265 | </hbox> | ||
266 | </widget> | ||
267 | </vbox> | ||
268 | </widget> | ||
269 | <widget> | ||
270 | <class>QGroupBox</class> | ||
271 | <property stdset="1"> | ||
272 | <name>name</name> | ||
273 | <cstring>GroupBox5</cstring> | ||
274 | </property> | ||
275 | <property stdset="1"> | ||
276 | <name>title</name> | ||
277 | <string>Week List</string> | ||
278 | </property> | ||
279 | <vbox> | ||
280 | <property stdset="1"> | ||
281 | <name>margin</name> | ||
282 | <number>11</number> | ||
283 | </property> | ||
284 | <property stdset="1"> | ||
285 | <name>spacing</name> | ||
286 | <number>6</number> | ||
287 | </property> | ||
288 | <widget> | ||
289 | <class>QLayoutWidget</class> | ||
278 | <property stdset="1"> | 290 | <property stdset="1"> |
279 | <name>value</name> | 291 | <name>name</name> |
280 | <number>5</number> | 292 | <cstring>Layout6</cstring> |
281 | </property> | 293 | </property> |
294 | <hbox> | ||
295 | <property stdset="1"> | ||
296 | <name>margin</name> | ||
297 | <number>0</number> | ||
298 | </property> | ||
299 | <property stdset="1"> | ||
300 | <name>spacing</name> | ||
301 | <number>6</number> | ||
302 | </property> | ||
303 | <widget> | ||
304 | <class>QLabel</class> | ||
305 | <property stdset="1"> | ||
306 | <name>name</name> | ||
307 | <cstring>TextLabel2</cstring> | ||
308 | </property> | ||
309 | <property stdset="1"> | ||
310 | <name>text</name> | ||
311 | <string>Time display</string> | ||
312 | </property> | ||
313 | </widget> | ||
314 | <widget> | ||
315 | <class>QComboBox</class> | ||
316 | <item> | ||
317 | <property> | ||
318 | <name>text</name> | ||
319 | <string>None</string> | ||
320 | </property> | ||
321 | </item> | ||
322 | <item> | ||
323 | <property> | ||
324 | <name>text</name> | ||
325 | <string>Start</string> | ||
326 | </property> | ||
327 | </item> | ||
328 | <item> | ||
329 | <property> | ||
330 | <name>text</name> | ||
331 | <string>Start-End</string> | ||
332 | </property> | ||
333 | </item> | ||
334 | <property stdset="1"> | ||
335 | <name>name</name> | ||
336 | <cstring>comboWeekListView</cstring> | ||
337 | </property> | ||
338 | </widget> | ||
339 | </hbox> | ||
282 | </widget> | 340 | </widget> |
283 | </hbox> | 341 | </vbox> |
284 | </widget> | 342 | </widget> |
285 | </grid> | 343 | <spacer> |
344 | <property> | ||
345 | <name>name</name> | ||
346 | <cstring>Spacer3_2</cstring> | ||
347 | </property> | ||
348 | <property stdset="1"> | ||
349 | <name>orientation</name> | ||
350 | <enum>Vertical</enum> | ||
351 | </property> | ||
352 | <property stdset="1"> | ||
353 | <name>sizeType</name> | ||
354 | <enum>Expanding</enum> | ||
355 | </property> | ||
356 | <property> | ||
357 | <name>sizeHint</name> | ||
358 | <size> | ||
359 | <width>20</width> | ||
360 | <height>20</height> | ||
361 | </size> | ||
362 | </property> | ||
363 | </spacer> | ||
364 | </vbox> | ||
286 | </widget> | 365 | </widget> |
287 | </widget> | ||
288 | <widget row="2" column="0" > | ||
289 | <class>QGroupBox</class> | ||
290 | <property stdset="1"> | ||
291 | <name>name</name> | ||
292 | <cstring>fraMisc</cstring> | ||
293 | </property> | ||
294 | <property stdset="1"> | ||
295 | <name>title</name> | ||
296 | <string>Misc</string> | ||
297 | </property> | ||
298 | <widget> | 366 | <widget> |
299 | <class>QLayoutWidget</class> | 367 | <class>QWidget</class> |
300 | <property stdset="1"> | 368 | <property stdset="1"> |
301 | <name>name</name> | 369 | <name>name</name> |
302 | <cstring>Layout5</cstring> | 370 | <cstring>tab</cstring> |
303 | </property> | ||
304 | <property stdset="1"> | ||
305 | <name>geometry</name> | ||
306 | <rect> | ||
307 | <x>10</x> | ||
308 | <y>40</y> | ||
309 | <width>170</width> | ||
310 | <height>24</height> | ||
311 | </rect> | ||
312 | </property> | 371 | </property> |
313 | <hbox> | 372 | <attribute> |
373 | <name>title</name> | ||
374 | <string>Misc</string> | ||
375 | </attribute> | ||
376 | <vbox> | ||
314 | <property stdset="1"> | 377 | <property stdset="1"> |
315 | <name>margin</name> | 378 | <name>margin</name> |
316 | <number>0</number> | 379 | <number>11</number> |
317 | </property> | 380 | </property> |
318 | <property stdset="1"> | 381 | <property stdset="1"> |
319 | <name>spacing</name> | 382 | <name>spacing</name> |
320 | <number>6</number> | 383 | <number>6</number> |
321 | </property> | 384 | </property> |
322 | <widget> | 385 | <widget> |
323 | <class>QLabel</class> | 386 | <class>QGroupBox</class> |
324 | <property stdset="1"> | 387 | <property stdset="1"> |
325 | <name>name</name> | 388 | <name>name</name> |
326 | <cstring>TextLabel1</cstring> | 389 | <cstring>GroupBox6</cstring> |
327 | </property> | 390 | </property> |
328 | <property stdset="1"> | 391 | <property stdset="1"> |
329 | <name>text</name> | 392 | <name>title</name> |
330 | <string>Row style:</string> | 393 | <string>Alarm Settings</string> |
331 | </property> | 394 | </property> |
332 | </widget> | 395 | <vbox> |
333 | <widget> | 396 | <property stdset="1"> |
334 | <class>QComboBox</class> | 397 | <name>margin</name> |
335 | <item> | 398 | <number>11</number> |
336 | <property> | ||
337 | <name>text</name> | ||
338 | <string>Default</string> | ||
339 | </property> | ||
340 | </item> | ||
341 | <item> | ||
342 | <property> | ||
343 | <name>text</name> | ||
344 | <string>Medium</string> | ||
345 | </property> | 399 | </property> |
346 | </item> | 400 | <property stdset="1"> |
347 | <item> | 401 | <name>spacing</name> |
348 | <property> | 402 | <number>6</number> |
349 | <name>text</name> | ||
350 | <string>Large</string> | ||
351 | </property> | 403 | </property> |
352 | </item> | 404 | <widget> |
405 | <class>QLayoutWidget</class> | ||
406 | <property stdset="1"> | ||
407 | <name>name</name> | ||
408 | <cstring>Layout6</cstring> | ||
409 | </property> | ||
410 | <hbox> | ||
411 | <property stdset="1"> | ||
412 | <name>margin</name> | ||
413 | <number>0</number> | ||
414 | </property> | ||
415 | <property stdset="1"> | ||
416 | <name>spacing</name> | ||
417 | <number>6</number> | ||
418 | </property> | ||
419 | <widget> | ||
420 | <class>QCheckBox</class> | ||
421 | <property stdset="1"> | ||
422 | <name>name</name> | ||
423 | <cstring>chkAlarmPreset</cstring> | ||
424 | </property> | ||
425 | <property stdset="1"> | ||
426 | <name>text</name> | ||
427 | <string>Alarm Preset</string> | ||
428 | </property> | ||
429 | </widget> | ||
430 | <widget> | ||
431 | <class>QSpinBox</class> | ||
432 | <property stdset="1"> | ||
433 | <name>name</name> | ||
434 | <cstring>spinPreset</cstring> | ||
435 | </property> | ||
436 | <property stdset="1"> | ||
437 | <name>enabled</name> | ||
438 | <bool>false</bool> | ||
439 | </property> | ||
440 | <property stdset="1"> | ||
441 | <name>suffix</name> | ||
442 | <string> minutes</string> | ||
443 | </property> | ||
444 | <property stdset="1"> | ||
445 | <name>maxValue</name> | ||
446 | <number>180</number> | ||
447 | </property> | ||
448 | <property stdset="1"> | ||
449 | <name>minValue</name> | ||
450 | <number>0</number> | ||
451 | </property> | ||
452 | <property stdset="1"> | ||
453 | <name>lineStep</name> | ||
454 | <number>5</number> | ||
455 | </property> | ||
456 | <property stdset="1"> | ||
457 | <name>value</name> | ||
458 | <number>5</number> | ||
459 | </property> | ||
460 | </widget> | ||
461 | </hbox> | ||
462 | </widget> | ||
463 | </vbox> | ||
464 | </widget> | ||
465 | <widget> | ||
466 | <class>QGroupBox</class> | ||
353 | <property stdset="1"> | 467 | <property stdset="1"> |
354 | <name>name</name> | 468 | <name>name</name> |
355 | <cstring>comboRowStyle</cstring> | 469 | <cstring>GroupBox7</cstring> |
356 | </property> | 470 | </property> |
471 | <property stdset="1"> | ||
472 | <name>title</name> | ||
473 | <string>Start viewing events</string> | ||
474 | </property> | ||
475 | <vbox> | ||
476 | <property stdset="1"> | ||
477 | <name>margin</name> | ||
478 | <number>11</number> | ||
479 | </property> | ||
480 | <property stdset="1"> | ||
481 | <name>spacing</name> | ||
482 | <number>6</number> | ||
483 | </property> | ||
484 | <widget> | ||
485 | <class>QLayoutWidget</class> | ||
486 | <property stdset="1"> | ||
487 | <name>name</name> | ||
488 | <cstring>Layout1</cstring> | ||
489 | </property> | ||
490 | <hbox> | ||
491 | <property stdset="1"> | ||
492 | <name>margin</name> | ||
493 | <number>0</number> | ||
494 | </property> | ||
495 | <property stdset="1"> | ||
496 | <name>spacing</name> | ||
497 | <number>6</number> | ||
498 | </property> | ||
499 | <widget> | ||
500 | <class>QLabel</class> | ||
501 | <property stdset="1"> | ||
502 | <name>name</name> | ||
503 | <cstring>lblStartTime</cstring> | ||
504 | </property> | ||
505 | <property stdset="1"> | ||
506 | <name>text</name> | ||
507 | <string>Start Time:</string> | ||
508 | </property> | ||
509 | </widget> | ||
510 | <widget> | ||
511 | <class>QSpinBox</class> | ||
512 | <property stdset="1"> | ||
513 | <name>name</name> | ||
514 | <cstring>spinStart</cstring> | ||
515 | </property> | ||
516 | <property stdset="1"> | ||
517 | <name>suffix</name> | ||
518 | <string>:00</string> | ||
519 | </property> | ||
520 | <property stdset="1"> | ||
521 | <name>wrapping</name> | ||
522 | <bool>true</bool> | ||
523 | </property> | ||
524 | <property stdset="1"> | ||
525 | <name>maxValue</name> | ||
526 | <number>23</number> | ||
527 | </property> | ||
528 | </widget> | ||
529 | </hbox> | ||
530 | </widget> | ||
531 | </vbox> | ||
357 | </widget> | 532 | </widget> |
358 | </hbox> | 533 | <spacer> |
359 | </widget> | 534 | <property> |
360 | <widget> | 535 | <name>name</name> |
361 | <class>QCheckBox</class> | 536 | <cstring>Spacer9</cstring> |
362 | <property stdset="1"> | 537 | </property> |
363 | <name>name</name> | 538 | <property stdset="1"> |
364 | <cstring>chkJumpToCurTime</cstring> | 539 | <name>orientation</name> |
365 | </property> | 540 | <enum>Vertical</enum> |
366 | <property stdset="1"> | 541 | </property> |
367 | <name>geometry</name> | 542 | <property stdset="1"> |
368 | <rect> | 543 | <name>sizeType</name> |
369 | <x>10</x> | 544 | <enum>Expanding</enum> |
370 | <y>20</y> | 545 | </property> |
371 | <width>200</width> | 546 | <property> |
372 | <height>20</height> | 547 | <name>sizeHint</name> |
373 | </rect> | 548 | <size> |
374 | </property> | 549 | <width>20</width> |
375 | <property stdset="1"> | 550 | <height>20</height> |
376 | <name>text</name> | 551 | </size> |
377 | <string>Jump to current time (dayview)</string> | 552 | </property> |
378 | </property> | 553 | </spacer> |
554 | </vbox> | ||
379 | </widget> | 555 | </widget> |
380 | </widget> | 556 | </widget> |
381 | </grid> | 557 | </vbox> |
382 | </widget> | 558 | </widget> |
383 | <connections> | 559 | <connections> |
384 | <connection> | 560 | <connection> |
385 | <sender>chkAlarmPreset</sender> | 561 | <sender>chkAlarmPreset</sender> |
386 | <signal>toggled(bool)</signal> | 562 | <signal>toggled(bool)</signal> |
387 | <receiver>spinPreset</receiver> | 563 | <receiver>spinPreset</receiver> |
388 | <slot>setEnabled(bool)</slot> | 564 | <slot>setEnabled(bool)</slot> |
389 | </connection> | 565 | </connection> |
390 | <connection> | 566 | <connection> |
391 | <sender>spinStart</sender> | 567 | <sender>spinStart</sender> |
392 | <signal>valueChanged(int)</signal> | 568 | <signal>valueChanged(int)</signal> |
393 | <receiver>DateBookSettingsBase</receiver> | 569 | <receiver>DateBookSettingsBase</receiver> |
diff --git a/core/pim/datebook/datebookweeklst.cpp b/core/pim/datebook/datebookweeklst.cpp index 3d6a029..3c8fc89 100644 --- a/core/pim/datebook/datebookweeklst.cpp +++ b/core/pim/datebook/datebookweeklst.cpp | |||
@@ -1,16 +1,18 @@ | |||
1 | #include "datebookweeklst.h" | 1 | #include "datebookweeklst.h" |
2 | 2 | ||
3 | #include "datebookweekheaderimpl.h" | 3 | #include "datebookweekheaderimpl.h" |
4 | 4 | ||
5 | #include "datebook.h" | ||
6 | |||
5 | #include <qpe/calendar.h> | 7 | #include <qpe/calendar.h> |
6 | #include <qpe/datebookdb.h> | 8 | #include <qpe/datebookdb.h> |
7 | #include <qpe/event.h> | 9 | #include <qpe/event.h> |
8 | #include <qpe/qpeapplication.h> | 10 | #include <qpe/qpeapplication.h> |
9 | #include <qpe/timestring.h> | 11 | #include <qpe/timestring.h> |
10 | #include <qpe/datebookmonth.h> | 12 | #include <qpe/datebookmonth.h> |
11 | #include <qpe/config.h> | 13 | #include <qpe/config.h> |
12 | #include <qpe/resource.h> | 14 | #include <qpe/resource.h> |
13 | 15 | ||
14 | #include <qdatetime.h> | 16 | #include <qdatetime.h> |
15 | #include <qheader.h> | 17 | #include <qheader.h> |
16 | #include <qlabel.h> | 18 | #include <qlabel.h> |
@@ -134,248 +136,255 @@ DateBookWeekLstDayHdr::DateBookWeekLstDayHdr(const QDate &d, bool /*onM*/, | |||
134 | void DateBookWeekLstDayHdr::showDay() { | 136 | void DateBookWeekLstDayHdr::showDay() { |
135 | emit showDate(date.year(), date.month(), date.day()); | 137 | emit showDate(date.year(), date.month(), date.day()); |
136 | } | 138 | } |
137 | void DateBookWeekLstDayHdr::newEvent() { | 139 | void DateBookWeekLstDayHdr::newEvent() { |
138 | QDateTime start, stop; | 140 | QDateTime start, stop; |
139 | start=stop=date; | 141 | start=stop=date; |
140 | start.setTime(QTime(10,0)); | 142 | start.setTime(QTime(10,0)); |
141 | stop.setTime(QTime(12,0)); | 143 | stop.setTime(QTime(12,0)); |
142 | 144 | ||
143 | emit addEvent(start,stop,"",0); | 145 | emit addEvent(start,stop,"",0); |
144 | } | 146 | } |
145 | DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev, | 147 | DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev, |
146 | QWidget* parent, | 148 | int weeklistviewconfig, |
147 | const char* name, | 149 | QWidget* parent, |
148 | WFlags fl) : | 150 | const char* name, |
149 | OClickableLabel(parent,name,fl), | 151 | WFlags fl ) : OClickableLabel(parent,name,fl), event(ev) |
150 | event(ev) | ||
151 | { | 152 | { |
152 | char s[10]; | 153 | // old values... lastday = "__|__", middle=" |---", Firstday="00:00", |
153 | if ( ev.startDate() != ev.date() ) { // multiday event (not first day) | 154 | QString s,start,middle,end,day; |
154 | if ( ev.endDate() == ev.date() ) { // last day | 155 | |
155 | strcpy(s, "__|__"); | 156 | qDebug("weeklistviewconfig=%d",weeklistviewconfig); |
156 | } else { | 157 | if(weeklistviewconfig==NONE) {// No times displayed. |
157 | strcpy(s, " |---"); | 158 | // start.sprintf("%.2d:%.2d-",ev.start().hour(),ev.start().minute()); |
159 | // middle.sprintf("<--->"); | ||
160 | // end.sprintf("-%.2d:%.2d",ev.end().hour(),ev.end().minute()); | ||
161 | // day.sprintf("%.2d:%.2d-%.2d:%.2d",ev.start().hour(),ev.start().minute(),ev.end().hour(),ev.end().minute()); | ||
162 | } else if(weeklistviewconfig==NORMAL) {// "Normal", only display start time. | ||
163 | start.sprintf("%.2d:%.2d",ev.start().hour(),ev.start().minute()); | ||
164 | middle.sprintf(" |---"); | ||
165 | end.sprintf("__|__"); | ||
166 | day.sprintf("%.2d:%.2d",ev.start().hour(),ev.start().minute()); | ||
167 | } else if(weeklistviewconfig==EXTENDED) { // Extended mode, display start and end times. | ||
168 | start.sprintf("%.2d:%.2d-",ev.start().hour(),ev.start().minute()); | ||
169 | middle.sprintf("<--->"); | ||
170 | end.sprintf("-%.2d:%.2d",ev.end().hour(),ev.end().minute()); | ||
171 | day.sprintf("%.2d:%.2d-%.2d:%.2d",ev.start().hour(),ev.start().minute(),ev.end().hour(),ev.end().minute()); | ||
172 | } | ||
173 | |||
174 | if(ev.event().type() == Event::Normal) { | ||
175 | if(ev.startDate()==ev.date() && ev.endDate()==ev.date()) {// day event. | ||
176 | s=day; | ||
177 | } else if(ev.startDate()==ev.date()) {// start event. | ||
178 | s=start; | ||
179 | } else if(ev.endDate()==ev.date()) { // end event. | ||
180 | s=end; | ||
181 | } else {// middle day. | ||
182 | s=middle; | ||
158 | } | 183 | } |
159 | } else { | 184 | } else { |
160 | if(ev.event().type() == Event::Normal ) | 185 | s=""; |
161 | sprintf(s,"%.2d:%.2d",ev.start().hour(),ev.start().minute()); | ||
162 | else | ||
163 | sprintf(s," "); | ||
164 | } | 186 | } |
165 | setText(QString(s) + " " + ev.description()); | 187 | setText(QString(s) + " " + ev.description()); |
166 | connect(this, SIGNAL(clicked()), this, SLOT(editMe())); | 188 | connect(this, SIGNAL(clicked()), this, SLOT(editMe())); |
167 | setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); | 189 | setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); |
168 | } | 190 | } |
169 | void DateBookWeekLstEvent::editMe() { | 191 | void DateBookWeekLstEvent::editMe() { |
170 | emit editEvent(event.event()); | 192 | emit editEvent(event.event()); |
171 | } | 193 | } |
172 | 194 | ||
173 | 195 | ||
174 | DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, | 196 | DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, |
175 | const QDate &d, bool onM, | 197 | const QDate &d, bool onM, |
176 | QWidget* parent, | 198 | QWidget* parent, |
177 | const char* name, WFlags fl) | 199 | const char* name, WFlags fl) |
178 | : QWidget( parent, name, fl ) | 200 | : QWidget( parent, name, fl ) |
179 | { | 201 | { |
180 | onMonday=onM; | 202 | Config config("DateBook"); |
181 | setPalette(white); | 203 | config.setGroup("Main"); |
182 | setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding)); | 204 | int weeklistviewconfig=config.readNumEntry("weeklistviewconfig", NORMAL); |
205 | qDebug("Read weeklistviewconfig: %d",weeklistviewconfig); | ||
183 | 206 | ||
184 | QVBoxLayout *layout = new QVBoxLayout( this ); | 207 | onMonday=onM; |
208 | setPalette(white); | ||
209 | setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding)); | ||
185 | 210 | ||
186 | qBubbleSort(ev); | 211 | QVBoxLayout *layout = new QVBoxLayout( this ); |
187 | QValueListIterator<EffectiveEvent> it; | ||
188 | it=ev.begin(); | ||
189 | 212 | ||
190 | int dayOrder[7]; | 213 | qBubbleSort(ev); |
191 | if (onMonday) | 214 | QValueListIterator<EffectiveEvent> it; |
192 | for (int d=0; d<7; d++) dayOrder[d]=d+1; | 215 | it=ev.begin(); |
193 | else { | 216 | |
194 | for (int d=0; d<7; d++) dayOrder[d]=d; | 217 | int dayOrder[7]; |
195 | dayOrder[0]=7; | 218 | if (onMonday) { |
196 | } | 219 | for (int d=0; d<7; d++) dayOrder[d]=d+1; |
220 | } else { | ||
221 | for (int d=0; d<7; d++) dayOrder[d]=d; | ||
222 | dayOrder[0]=7; | ||
223 | } | ||
197 | 224 | ||
198 | for (int i=0; i<7; i++) { | 225 | for (int i=0; i<7; i++) { |
199 | // Header | 226 | // Header |
200 | DateBookWeekLstDayHdr *hdr=new DateBookWeekLstDayHdr(d.addDays(i), | 227 | DateBookWeekLstDayHdr *hdr=new DateBookWeekLstDayHdr(d.addDays(i), onMonday,this); |
201 | onMonday,this); | ||
202 | connect(hdr, SIGNAL(showDate(int,int,int)), | 228 | connect(hdr, SIGNAL(showDate(int,int,int)), |
203 | this, SIGNAL(showDate(int,int,int))); | 229 | this, SIGNAL(showDate(int,int,int))); |
204 | connect(hdr, SIGNAL(addEvent(const QDateTime &, | 230 | connect(hdr, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)), |
205 | const QDateTime &, | 231 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &))); |
206 | const QString &, const QString &)), | ||
207 | this, SIGNAL(addEvent(const QDateTime &, | ||
208 | const QDateTime &, | ||
209 | const QString &, const QString &))); | ||
210 | layout->addWidget(hdr); | 232 | layout->addWidget(hdr); |
211 | 233 | ||
212 | // Events | 234 | // Events |
213 | while ( (*it).date().dayOfWeek() == dayOrder[i] && it!=ev.end() ) { | 235 | while ( (*it).date().dayOfWeek() == dayOrder[i] && it!=ev.end() ) { |
214 | if(!(((*it).end().hour()==0) && ((*it).end().minute()==0) && ((*it).startDate()!=(*it).date()))) {// Skip events ending at 00:00 starting at another day. | 236 | if(!(((*it).end().hour()==0) && ((*it).end().minute()==0) && ((*it).startDate()!=(*it).date()))) {// Skip events ending at 00:00 starting at another day. |
215 | DateBookWeekLstEvent *l=new DateBookWeekLstEvent(*it,this); | 237 | DateBookWeekLstEvent *l=new DateBookWeekLstEvent(*it,weeklistviewconfig,this); |
216 | layout->addWidget(l); | 238 | layout->addWidget(l); |
217 | connect (l, SIGNAL(editEvent(const Event &)), | 239 | connect (l, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &))); |
218 | this, SIGNAL(editEvent(const Event &))); | ||
219 | } | 240 | } |
220 | it++; | 241 | it++; |
221 | } | 242 | } |
222 | 243 | ||
223 | layout->addItem(new QSpacerItem(1,1, QSizePolicy::Minimum, QSizePolicy::Expanding)); | 244 | layout->addItem(new QSpacerItem(1,1, QSizePolicy::Minimum, QSizePolicy::Expanding)); |
224 | } | 245 | } |
225 | } | 246 | } |
226 | DateBookWeekLstView::~DateBookWeekLstView(){} | 247 | DateBookWeekLstView::~DateBookWeekLstView(){} |
227 | void DateBookWeekLstView::keyPressEvent(QKeyEvent *e) {e->ignore();} | 248 | void DateBookWeekLstView::keyPressEvent(QKeyEvent *e) {e->ignore();} |
228 | 249 | ||
229 | DateBookWeekLstDblView::DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, | 250 | DateBookWeekLstDblView::DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, |
230 | QValueList<EffectiveEvent> &ev2, | 251 | QValueList<EffectiveEvent> &ev2, |
231 | QDate &d, bool onM, | 252 | QDate &d, bool onM, |
232 | QWidget* parent, | 253 | QWidget* parent, |
233 | const char* name, WFlags fl) | 254 | const char* name, WFlags fl) |
234 | : QWidget( parent, name, fl ) | 255 | : QWidget( parent, name, fl ) |
235 | { | 256 | { |
236 | QHBoxLayout *layout = new QHBoxLayout( this ); | 257 | QHBoxLayout *layout = new QHBoxLayout( this ); |
237 | 258 | ||
238 | DateBookWeekLstView *w=new DateBookWeekLstView(ev1,d,onM,this); | 259 | DateBookWeekLstView *w=new DateBookWeekLstView(ev1,d,onM,this); |
239 | layout->addWidget(w); | 260 | layout->addWidget(w); |
240 | connect (w, SIGNAL(editEvent(const Event &)), | 261 | connect (w, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &))); |
241 | this, SIGNAL(editEvent(const Event &))); | 262 | connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); |
242 | connect (w, SIGNAL(showDate(int,int,int)), | 263 | connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &,const QString &)), |
243 | this, SIGNAL(showDate(int,int,int))); | 264 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &))); |
244 | connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, | 265 | |
245 | const QString &,const QString &)), | 266 | |
246 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, | 267 | w=new DateBookWeekLstView(ev2,d.addDays(7),onM,this); |
247 | const QString &, const QString &))); | 268 | layout->addWidget(w); |
248 | 269 | connect (w, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &))); | |
249 | 270 | connect (w, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); | |
250 | w=new DateBookWeekLstView(ev2,d.addDays(7),onM,this); | 271 | connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)), |
251 | layout->addWidget(w); | 272 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &))); |
252 | connect (w, SIGNAL(editEvent(const Event &)), | ||
253 | this, SIGNAL(editEvent(const Event &))); | ||
254 | connect (w, SIGNAL(showDate(int,int,int)), | ||
255 | this, SIGNAL(showDate(int,int,int))); | ||
256 | connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, | ||
257 | const QString &, const QString &)), | ||
258 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, | ||
259 | const QString &, const QString &))); | ||
260 | } | 273 | } |
261 | 274 | ||
262 | DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, | 275 | DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, |
263 | QWidget *parent, | 276 | QWidget *parent, |
264 | const char *name ) | 277 | const char *name ) |
265 | : QWidget( parent, name ), | 278 | : QWidget( parent, name ), |
266 | db( newDB ), | 279 | db( newDB ), |
267 | startTime( 0 ), | 280 | startTime( 0 ), |
268 | ampm( ap ), | 281 | ampm( ap ), |
269 | onMonday(onM) | 282 | onMonday(onM) |
270 | { | 283 | { |
271 | setFocusPolicy(StrongFocus); | 284 | setFocusPolicy(StrongFocus); |
272 | layout = new QVBoxLayout( this ); | 285 | layout = new QVBoxLayout( this ); |
273 | layout->setMargin(0); | 286 | layout->setMargin(0); |
274 | 287 | ||
275 | header=new DateBookWeekLstHeader(onM, this); | 288 | header=new DateBookWeekLstHeader(onM, this); |
276 | layout->addWidget( header ); | 289 | layout->addWidget( header ); |
277 | connect(header, SIGNAL(dateChanged(int,int)), | 290 | connect(header, SIGNAL(dateChanged(int,int)), this, SLOT(dateChanged(int,int))); |
278 | this, SLOT(dateChanged(int,int))); | 291 | connect(header, SIGNAL(setDbl(bool)), this, SLOT(setDbl(bool))); |
279 | connect(header, SIGNAL(setDbl(bool)), | 292 | |
280 | this, SLOT(setDbl(bool))); | 293 | scroll=new QScrollView(this); |
281 | 294 | //scroll->setVScrollBarMode(QScrollView::AlwaysOn); | |
282 | scroll=new QScrollView(this); | 295 | //scroll->setHScrollBarMode(QScrollView::AlwaysOff); |
283 | //scroll->setVScrollBarMode(QScrollView::AlwaysOn); | 296 | scroll->setResizePolicy(QScrollView::AutoOneFit); |
284 | //scroll->setHScrollBarMode(QScrollView::AlwaysOff); | 297 | layout->addWidget(scroll); |
285 | scroll->setResizePolicy(QScrollView::AutoOneFit); | 298 | |
286 | layout->addWidget(scroll); | 299 | view=NULL; |
287 | 300 | Config config("DateBook"); | |
288 | view=NULL; | 301 | config.setGroup("Main"); |
289 | Config config("DateBook"); | 302 | dbl=config.readBoolEntry("weeklst_dbl", false); |
290 | config.setGroup("Main"); | 303 | header->dbl->setOn(dbl); |
291 | dbl=config.readBoolEntry("weeklst_dbl", false); | ||
292 | header->dbl->setOn(dbl); | ||
293 | } | 304 | } |
294 | DateBookWeekLst::~DateBookWeekLst(){ | 305 | DateBookWeekLst::~DateBookWeekLst(){ |
295 | Config config("DateBook"); | 306 | Config config("DateBook"); |
296 | config.setGroup("Main"); | 307 | config.setGroup("Main"); |
297 | config.writeEntry("weeklst_dbl", dbl); | 308 | config.writeEntry("weeklst_dbl", dbl); |
298 | } | 309 | } |
299 | 310 | ||
300 | void DateBookWeekLst::setDate(const QDate &d) { | 311 | void DateBookWeekLst::setDate(const QDate &d) { |
301 | int w,y; | 312 | int w,y; |
302 | calcWeek(d,w,y,onMonday); | 313 | calcWeek(d,w,y,onMonday); |
303 | year=y; | 314 | year=y; |
304 | _week=w; | 315 | _week=w; |
305 | header->setDate(date()); | 316 | header->setDate(date()); |
306 | } | 317 | } |
307 | void DateBookWeekLst::setDbl(bool on) { | 318 | void DateBookWeekLst::setDbl(bool on) { |
308 | dbl=on; | 319 | dbl=on; |
309 | redraw(); | 320 | redraw(); |
310 | } | 321 | } |
311 | void DateBookWeekLst::redraw() {getEvents();} | 322 | void DateBookWeekLst::redraw() {getEvents();} |
312 | 323 | ||
313 | QDate DateBookWeekLst::date() const { | 324 | QDate DateBookWeekLst::date() const { |
314 | QDate d; | 325 | QDate d; |
315 | d.setYMD(year,1,1); | 326 | d.setYMD(year,1,1); |
316 | 327 | ||
317 | int dow= d.dayOfWeek(); | 328 | int dow= d.dayOfWeek(); |
318 | if (!onMonday) | 329 | if (!onMonday) |
319 | if (dow==7) dow=1; | 330 | if (dow==7) { |
320 | else dow++; | 331 | dow=1; |
332 | } else { | ||
333 | dow++; | ||
334 | } | ||
321 | 335 | ||
322 | d=d.addDays( (_week-1)*7 - dow + 1 ); | 336 | d=d.addDays( (_week-1)*7 - dow + 1 ); |
323 | return d; | 337 | return d; |
324 | } | 338 | } |
325 | 339 | ||
326 | void DateBookWeekLst::getEvents() { | 340 | void DateBookWeekLst::getEvents() { |
327 | QDate start = date(); | 341 | QDate start = date(); |
328 | QDate stop = start.addDays(6); | 342 | QDate stop = start.addDays(6); |
329 | QValueList<EffectiveEvent> el = db->getEffectiveEvents(start, stop); | 343 | QValueList<EffectiveEvent> el = db->getEffectiveEvents(start, stop); |
330 | 344 | ||
331 | if (view) delete view; | 345 | if (view) delete view; |
332 | if (dbl) { | 346 | if (dbl) { |
333 | QDate start2=start.addDays(7); | 347 | QDate start2=start.addDays(7); |
334 | stop=start2.addDays(6); | 348 | stop=start2.addDays(6); |
335 | QValueList<EffectiveEvent> el2 = db->getEffectiveEvents(start2, stop); | 349 | QValueList<EffectiveEvent> el2 = db->getEffectiveEvents(start2, stop); |
336 | 350 | view=new DateBookWeekLstDblView(el,el2,start,onMonday,scroll); | |
337 | view=new DateBookWeekLstDblView(el,el2,start,onMonday,scroll); | 351 | } else { |
338 | } else { | 352 | view=new DateBookWeekLstView(el,start,onMonday,scroll); |
339 | view=new DateBookWeekLstView(el,start,onMonday,scroll); | 353 | } |
340 | } | 354 | |
355 | connect (view, SIGNAL(editEvent(const Event &)), this, SIGNAL(editEvent(const Event &))); | ||
356 | connect (view, SIGNAL(showDate(int,int,int)), this, SIGNAL(showDate(int,int,int))); | ||
357 | connect (view, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &)), | ||
358 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, const QString &, const QString &))); | ||
341 | 359 | ||
342 | connect (view, SIGNAL(editEvent(const Event &)), | 360 | scroll->addChild(view); |
343 | this, SIGNAL(editEvent(const Event &))); | 361 | view->show(); |
344 | connect (view, SIGNAL(showDate(int,int,int)), | 362 | scroll->updateScrollBars(); |
345 | this, SIGNAL(showDate(int,int,int))); | ||
346 | connect (view, SIGNAL(addEvent(const QDateTime &, const QDateTime &, | ||
347 | const QString &, const QString &)), | ||
348 | this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, | ||
349 | const QString &, const QString &))); | ||
350 | |||
351 | scroll->addChild(view); | ||
352 | view->show(); | ||
353 | scroll->updateScrollBars(); | ||
354 | } | 363 | } |
355 | 364 | ||
356 | void DateBookWeekLst::dateChanged(int y, int w) { | 365 | void DateBookWeekLst::dateChanged(int y, int w) { |
357 | year=y; | 366 | year=y; |
358 | _week=w; | 367 | _week=w; |
359 | getEvents(); | 368 | getEvents(); |
360 | } | 369 | } |
361 | 370 | ||
362 | void DateBookWeekLst::keyPressEvent(QKeyEvent *e) | 371 | void DateBookWeekLst::keyPressEvent(QKeyEvent *e) |
363 | { | 372 | { |
364 | switch(e->key()) { | 373 | switch(e->key()) { |
365 | case Key_Up: | 374 | case Key_Up: |
366 | scroll->scrollBy(0, -20); | 375 | scroll->scrollBy(0, -20); |
367 | break; | 376 | break; |
368 | case Key_Down: | 377 | case Key_Down: |
369 | scroll->scrollBy(0, 20); | 378 | scroll->scrollBy(0, 20); |
370 | break; | 379 | break; |
371 | case Key_Left: | 380 | case Key_Left: |
372 | header->prevWeek(); | 381 | header->prevWeek(); |
373 | break; | 382 | break; |
374 | case Key_Right: | 383 | case Key_Right: |
375 | header->nextWeek(); | 384 | header->nextWeek(); |
376 | break; | 385 | break; |
377 | default: | 386 | default: |
378 | e->ignore(); | 387 | e->ignore(); |
379 | } | 388 | } |
380 | } | 389 | } |
381 | 390 | ||
diff --git a/core/pim/datebook/datebookweeklst.h b/core/pim/datebook/datebookweeklst.h index ea88f20..17dc01f 100644 --- a/core/pim/datebook/datebookweeklst.h +++ b/core/pim/datebook/datebookweeklst.h | |||
@@ -50,94 +50,94 @@ public slots: | |||
50 | signals: | 50 | signals: |
51 | void showDate(int y, int m, int d); | 51 | void showDate(int y, int m, int d); |
52 | void addEvent(const QDateTime &start, const QDateTime &stop, | 52 | void addEvent(const QDateTime &start, const QDateTime &stop, |
53 | const QString &str, const QString &location); | 53 | const QString &str, const QString &location); |
54 | private: | 54 | private: |
55 | QDate date; | 55 | QDate date; |
56 | }; | 56 | }; |
57 | 57 | ||
58 | class DateBookWeekLstEvent: public OClickableLabel | 58 | class DateBookWeekLstEvent: public OClickableLabel |
59 | { | 59 | { |
60 | Q_OBJECT | 60 | Q_OBJECT |
61 | public: | 61 | public: |
62 | DateBookWeekLstEvent(const EffectiveEvent &ev, | 62 | DateBookWeekLstEvent(const EffectiveEvent &ev, int weeklistviewconfig =1, |
63 | QWidget* parent = 0, const char* name = 0, | 63 | QWidget* parent = 0, const char* name = 0, |
64 | WFlags fl = 0); | 64 | WFlags fl = 0); |
65 | signals: | 65 | signals: |
66 | void editEvent(const Event &e); | 66 | void editEvent(const Event &e); |
67 | private slots: | 67 | private slots: |
68 | void editMe(); | 68 | void editMe(); |
69 | private: | 69 | private: |
70 | const EffectiveEvent event; | 70 | const EffectiveEvent event; |
71 | }; | 71 | }; |
72 | 72 | ||
73 | class DateBookWeekLstView: public QWidget | 73 | class DateBookWeekLstView: public QWidget |
74 | { | 74 | { |
75 | Q_OBJECT | 75 | Q_OBJECT |
76 | public: | 76 | public: |
77 | DateBookWeekLstView(QValueList<EffectiveEvent> &ev, const QDate &d, bool onM, | 77 | DateBookWeekLstView(QValueList<EffectiveEvent> &ev, const QDate &d, bool onM, |
78 | QWidget* parent = 0, const char* name = 0, | 78 | QWidget* parent = 0, const char* name = 0, |
79 | WFlags fl = 0 ); | 79 | WFlags fl = 0 ); |
80 | ~DateBookWeekLstView(); | 80 | ~DateBookWeekLstView(); |
81 | signals: | 81 | signals: |
82 | void editEvent(const Event &e); | 82 | void editEvent(const Event &e); |
83 | void showDate(int y, int m, int d); | 83 | void showDate(int y, int m, int d); |
84 | void addEvent(const QDateTime &start, const QDateTime &stop, | 84 | void addEvent(const QDateTime &start, const QDateTime &stop, |
85 | const QString &str, const QString &location); | 85 | const QString &str, const QString &location); |
86 | private: | 86 | private: |
87 | bool onMonday; | 87 | bool onMonday; |
88 | protected slots: | 88 | protected slots: |
89 | void keyPressEvent(QKeyEvent *); | 89 | void keyPressEvent(QKeyEvent *); |
90 | }; | 90 | }; |
91 | 91 | ||
92 | class DateBookWeekLstDblView: public QWidget { | 92 | class DateBookWeekLstDblView: public QWidget { |
93 | Q_OBJECT | 93 | Q_OBJECT |
94 | public: | 94 | public: |
95 | DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, | 95 | DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, |
96 | QValueList<EffectiveEvent> &ev2, | 96 | QValueList<EffectiveEvent> &ev2, |
97 | QDate &d, bool onM, | 97 | QDate &d, bool onM, |
98 | QWidget* parent = 0, const char* name = 0, | 98 | QWidget* parent = 0, const char* name = 0, |
99 | WFlags fl = 0 ); | 99 | WFlags fl = 0 ); |
100 | signals: | 100 | signals: |
101 | void editEvent(const Event &e); | 101 | void editEvent(const Event &e); |
102 | void showDate(int y, int m, int d); | 102 | void showDate(int y, int m, int d); |
103 | void addEvent(const QDateTime &start, const QDateTime &stop, | 103 | void addEvent(const QDateTime &start, const QDateTime &stop, |
104 | const QString &str, const QString &location); | 104 | const QString &str, const QString &location); |
105 | }; | 105 | }; |
106 | 106 | ||
107 | class DateBookWeekLst : public QWidget | 107 | class DateBookWeekLst : public QWidget |
108 | { | 108 | { |
109 | Q_OBJECT | 109 | Q_OBJECT |
110 | 110 | ||
111 | public: | 111 | public: |
112 | DateBookWeekLst( bool ampm, bool onM, DateBookDB *newDB, | 112 | DateBookWeekLst( bool ampm, bool onM, DateBookDB *newDB, |
113 | QWidget *parent = 0, | 113 | QWidget *parent = 0, |
114 | const char *name = 0 ); | 114 | const char *name = 0 ); |
115 | ~DateBookWeekLst(); | 115 | ~DateBookWeekLst(); |
116 | void setDate( int y, int w ); | 116 | void setDate( int y, int w ); |
117 | void setDate(const QDate &d ); | 117 | void setDate(const QDate &d ); |
118 | int week() const { return _week; }; | 118 | int week() const { return _week; }; |
119 | QDate date() const; | 119 | QDate date() const; |
120 | 120 | ||
121 | public slots: | 121 | public slots: |
122 | void redraw(); | 122 | void redraw(); |
123 | void dateChanged(int y, int w); | 123 | void dateChanged(int y, int w); |
124 | 124 | ||
125 | protected slots: | 125 | protected slots: |
126 | void keyPressEvent(QKeyEvent *); | 126 | void keyPressEvent(QKeyEvent *); |
127 | void setDbl(bool on); | 127 | void setDbl(bool on); |
128 | 128 | ||
129 | signals: | 129 | signals: |
130 | void showDate(int y, int m, int d); | 130 | void showDate(int y, int m, int d); |
131 | void addEvent(const QDateTime &start, const QDateTime &stop, | 131 | void addEvent(const QDateTime &start, const QDateTime &stop, |
132 | const QString &str, const QString &location); | 132 | const QString &str, const QString &location); |
133 | void editEvent(const Event &e); | 133 | void editEvent(const Event &e); |
134 | 134 | ||
135 | private: | 135 | private: |
136 | DateBookDB *db; | 136 | DateBookDB *db; |
137 | int startTime; | 137 | int startTime; |
138 | bool ampm; | 138 | bool ampm; |
139 | bool onMonday; | 139 | bool onMonday; |
140 | bool dbl; | 140 | bool dbl; |
141 | int year, _week; | 141 | int year, _week; |
142 | DateBookWeekLstHeader *header; | 142 | DateBookWeekLstHeader *header; |
143 | QWidget *view; | 143 | QWidget *view; |