author | sandman <sandman> | 2002-06-09 23:42:42 (UTC) |
---|---|---|
committer | sandman <sandman> | 2002-06-09 23:42:42 (UTC) |
commit | 1c56ab829f04ea5b127c1c632cec330e47bca524 (patch) (unidiff) | |
tree | 30f0bd7c2d124cbf2dc41f32234922d2f3be19a7 | |
parent | 25d084dd1a4b69cefcf16a889f22feb39d60f541 (diff) | |
download | opie-1c56ab829f04ea5b127c1c632cec330e47bca524.zip opie-1c56ab829f04ea5b127c1c632cec330e47bca524.tar.gz opie-1c56ab829f04ea5b127c1c632cec330e47bca524.tar.bz2 |
Fixed a counter bug in alarm timer loop.
-rw-r--r-- | core/pim/datebook/datebook.cpp | 14 | ||||
-rw-r--r-- | core/pim/datebook/datebook.h | 2 |
2 files changed, 9 insertions, 7 deletions
diff --git a/core/pim/datebook/datebook.cpp b/core/pim/datebook/datebook.cpp index 8614b3f..2c2965e 100644 --- a/core/pim/datebook/datebook.cpp +++ b/core/pim/datebook/datebook.cpp | |||
@@ -68,33 +68,34 @@ | |||
68 | #include <unistd.h> | 68 | #include <unistd.h> |
69 | 69 | ||
70 | #include <stdlib.h> | 70 | #include <stdlib.h> |
71 | 71 | ||
72 | #define DAY 1 | 72 | #define DAY 1 |
73 | #define WEEK 2 | 73 | #define WEEK 2 |
74 | #define WEEKLST 4 | 74 | #define WEEKLST 4 |
75 | #define MONTH 3 | 75 | #define MONTH 3 |
76 | 76 | ||
77 | 77 | ||
78 | DateBook::DateBook( QWidget *parent, const char *, WFlags f ) | 78 | DateBook::DateBook( QWidget *parent, const char *, WFlags f ) |
79 | : QMainWindow( parent, "datebook", f ), | 79 | : QMainWindow( parent, "datebook", f ), |
80 | aPreset( FALSE ), | 80 | aPreset( FALSE ), |
81 | presetTime( -1 ), | 81 | presetTime( -1 ), |
82 | startTime( 8 ), // an acceptable default | 82 | startTime( 8 ), // an acceptable default |
83 | syncing(FALSE), | 83 | syncing(FALSE), |
84 | inSearch(FALSE) | 84 | inSearch(FALSE), |
85 | alarmCounter(0) | ||
85 | { | 86 | { |
86 | QTime t; | 87 | QTime t; |
87 | t.start(); | 88 | t.start(); |
88 | db = new DateBookDBHack; | 89 | db = new DateBookDBHack; |
89 | qDebug("loading db t=%d", t.elapsed() ); | 90 | qDebug("loading db t=%d", t.elapsed() ); |
90 | loadSettings(); | 91 | loadSettings(); |
91 | setCaption( tr("Calendar") ); | 92 | setCaption( tr("Calendar") ); |
92 | setIcon( Resource::loadPixmap( "datebook_icon" ) ); | 93 | setIcon( Resource::loadPixmap( "datebook_icon" ) ); |
93 | 94 | ||
94 | setToolBarsMovable( FALSE ); | 95 | setToolBarsMovable( FALSE ); |
95 | 96 | ||
96 | views = new QWidgetStack( this ); | 97 | views = new QWidgetStack( this ); |
97 | setCentralWidget( views ); | 98 | setCentralWidget( views ); |
98 | 99 | ||
99 | dayView = 0; | 100 | dayView = 0; |
100 | weekView = 0; | 101 | weekView = 0; |
@@ -601,32 +602,33 @@ void DateBook::appMessage(const QCString& msg, const QByteArray& data) | |||
601 | + "<BR>" + (*it).location() + "<BR>" | 602 | + "<BR>" + (*it).location() + "<BR>" |
602 | + TimeString::dateString((*it).event().start(),ampm) | 603 | + TimeString::dateString((*it).event().start(),ampm) |
603 | + (warn | 604 | + (warn |
604 | ? tr(" (in " + QString::number(warn) | 605 | ? tr(" (in " + QString::number(warn) |
605 | + tr(" minutes)")) | 606 | + tr(" minutes)")) |
606 | : QString("")) | 607 | : QString("")) |
607 | + "<BR>" | 608 | + "<BR>" |
608 | + (*it).notes() + "</CENTER>"; | 609 | + (*it).notes() + "</CENTER>"; |
609 | if ( (*it).event().alarmSound() != Event::Silent ) { | 610 | if ( (*it).event().alarmSound() != Event::Silent ) { |
610 | bSound = TRUE; | 611 | bSound = TRUE; |
611 | } | 612 | } |
612 | } | 613 | } |
613 | } | 614 | } |
614 | if ( found ) { | 615 | if ( found ) { |
615 | if ( bSound ) { | 616 | if ( bSound ) { |
616 | Sound::soundAlarm(); | 617 | Sound::soundAlarm(); |
618 | alarmCounter = 0; | ||
617 | stopTimer = startTimer( 5000 ); | 619 | stopTimer = startTimer( 5000 ); |
618 | } | 620 | } |
619 | 621 | ||
620 | QDialog dlg( this, 0, TRUE ); | 622 | QDialog dlg( this, 0, TRUE ); |
621 | QVBoxLayout *vb = new QVBoxLayout( &dlg ); | 623 | QVBoxLayout *vb = new QVBoxLayout( &dlg ); |
622 | QScrollView *view = new QScrollView( &dlg, "scrollView"); | 624 | QScrollView *view = new QScrollView( &dlg, "scrollView"); |
623 | view->setResizePolicy( QScrollView::AutoOneFit ); | 625 | view->setResizePolicy( QScrollView::AutoOneFit ); |
624 | vb->addWidget( view ); | 626 | vb->addWidget( view ); |
625 | QLabel *lblMsg = new QLabel( msg, &dlg ); | 627 | QLabel *lblMsg = new QLabel( msg, &dlg ); |
626 | view->addChild( lblMsg ); | 628 | view->addChild( lblMsg ); |
627 | QPushButton *cmdOk = new QPushButton( tr("OK"), &dlg ); | 629 | QPushButton *cmdOk = new QPushButton( tr("OK"), &dlg ); |
628 | connect( cmdOk, SIGNAL(clicked()), &dlg, SLOT(accept()) ); | 630 | connect( cmdOk, SIGNAL(clicked()), &dlg, SLOT(accept()) ); |
629 | vb->addWidget( cmdOk ); | 631 | vb->addWidget( cmdOk ); |
630 | 632 | ||
631 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) | 633 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) |
632 | dlg.showMaximized(); | 634 | dlg.showMaximized(); |
@@ -670,40 +672,38 @@ void DateBook::reload() | |||
670 | viewDay(); | 672 | viewDay(); |
671 | else if ( weekAction->isOn() ) | 673 | else if ( weekAction->isOn() ) |
672 | viewWeek(); | 674 | viewWeek(); |
673 | else if ( monthAction->isOn() ) | 675 | else if ( monthAction->isOn() ) |
674 | viewMonth(); | 676 | viewMonth(); |
675 | syncing = FALSE; | 677 | syncing = FALSE; |
676 | } | 678 | } |
677 | 679 | ||
678 | void DateBook::flush() | 680 | void DateBook::flush() |
679 | { | 681 | { |
680 | syncing = TRUE; | 682 | syncing = TRUE; |
681 | db->save(); | 683 | db->save(); |
682 | } | 684 | } |
683 | 685 | ||
684 | void DateBook::timerEvent( QTimerEvent *e ) | 686 | void DateBook::timerEvent( QTimerEvent *e ) |
685 | { | 687 | { |
686 | static int stop = 0; | 688 | if ( alarmCounter < 10 ) { |
687 | if ( stop < 10 ) { | 689 | alarmCounter++; |
688 | Sound::soundAlarm(); | 690 | Sound::soundAlarm(); |
689 | stop++; | 691 | } |
690 | } else { | 692 | else |
691 | stop = 0; | ||
692 | killTimer( e->timerId() ); | 693 | killTimer( e->timerId() ); |
693 | } | ||
694 | } | 694 | } |
695 | 695 | ||
696 | void DateBook::changeClock( bool newClock ) | 696 | void DateBook::changeClock( bool newClock ) |
697 | { | 697 | { |
698 | ampm = newClock; | 698 | ampm = newClock; |
699 | // repaint the affected objects... | 699 | // repaint the affected objects... |
700 | if (dayView) dayView->redraw(); | 700 | if (dayView) dayView->redraw(); |
701 | if (weekView) weekView->redraw(); | 701 | if (weekView) weekView->redraw(); |
702 | if (weekLstView) weekLstView->redraw(); | 702 | if (weekLstView) weekLstView->redraw(); |
703 | } | 703 | } |
704 | 704 | ||
705 | void DateBook::changeWeek( bool m ) | 705 | void DateBook::changeWeek( bool m ) |
706 | { | 706 | { |
707 | /* no need to redraw, each widget catches. Do need to | 707 | /* no need to redraw, each widget catches. Do need to |
708 | store though for widgets we haven't made yet */ | 708 | store though for widgets we haven't made yet */ |
709 | onMonday = m; | 709 | onMonday = m; |
diff --git a/core/pim/datebook/datebook.h b/core/pim/datebook/datebook.h index d1fe90d..e7be0dd 100644 --- a/core/pim/datebook/datebook.h +++ b/core/pim/datebook/datebook.h | |||
@@ -107,20 +107,22 @@ private: | |||
107 | DateBookDBHack *db; | 107 | DateBookDBHack *db; |
108 | QWidgetStack *views; | 108 | QWidgetStack *views; |
109 | DateBookDay *dayView; | 109 | DateBookDay *dayView; |
110 | DateBookWeek *weekView; | 110 | DateBookWeek *weekView; |
111 | DateBookMonth *monthView; | 111 | DateBookMonth *monthView; |
112 | DateBookWeekLst *weekLstView; | 112 | DateBookWeekLst *weekLstView; |
113 | QAction *dayAction, *weekAction, *weekLstAction, *monthAction; | 113 | QAction *dayAction, *weekAction, *weekLstAction, *monthAction; |
114 | bool aPreset; // have everything set to alarm? | 114 | bool aPreset; // have everything set to alarm? |
115 | int presetTime; // the standard time for the alarm | 115 | int presetTime; // the standard time for the alarm |
116 | int startTime; | 116 | int startTime; |
117 | bool ampm; | 117 | bool ampm; |
118 | bool onMonday; | 118 | bool onMonday; |
119 | 119 | ||
120 | bool syncing; | 120 | bool syncing; |
121 | bool inSearch; | 121 | bool inSearch; |
122 | 122 | ||
123 | int alarmCounter; | ||
124 | |||
123 | QString checkEvent(const Event &); | 125 | QString checkEvent(const Event &); |
124 | }; | 126 | }; |
125 | 127 | ||
126 | #endif | 128 | #endif |