-rw-r--r-- | kalarmd/alarmdialog.cpp | 31 | ||||
-rw-r--r-- | kalarmd/alarmdialog.h | 4 | ||||
-rw-r--r-- | kalarmd/simplealarmdaemonimpl.cpp | 13 |
3 files changed, 28 insertions, 20 deletions
diff --git a/kalarmd/alarmdialog.cpp b/kalarmd/alarmdialog.cpp index 794c8ae..d6feedc 100644 --- a/kalarmd/alarmdialog.cpp +++ b/kalarmd/alarmdialog.cpp | |||
@@ -74,29 +74,28 @@ AlarmDialog::AlarmDialog(QWidget *parent,const char *name) | |||
74 | layout->setMargin( 3 ); | 74 | layout->setMargin( 3 ); |
75 | QFont fo = QApplication::font(); | 75 | QFont fo = QApplication::font(); |
76 | fo.setBold( true ); | 76 | fo.setBold( true ); |
77 | fo.setPointSize( fs2 ); | 77 | fo.setPointSize( fs2 ); |
78 | l->setFont( fo ); | 78 | l->setFont( fo ); |
79 | fo.setPointSize( fs ); | 79 | fo.setPointSize( fs ); |
80 | mMessage->setFont(fo ); | 80 | mMessage->setFont(fo ); |
81 | mMessage->setAlignment( AlignCenter); | 81 | mMessage->setAlignment( AlignCenter); |
82 | l = new QLabel("Missed Alarms:",this); | ||
83 | l->setAlignment( AlignCenter); | ||
84 | layout->addWidget ( mMessage ); | 82 | layout->addWidget ( mMessage ); |
85 | layout->addWidget ( l ); | 83 | mMissedAlarms= new QLabel ( "(No missed Alarms)", this ); |
86 | mMissedAlarms= new QLabel ( "", this ); | ||
87 | mMissedAlarms->setAlignment( AlignCenter); | 84 | mMissedAlarms->setAlignment( AlignCenter); |
88 | 85 | ||
89 | playSoundTimer = new QTimer( this ); | 86 | playSoundTimer = new QTimer( this ); |
90 | connect ( playSoundTimer, SIGNAL( timeout() ), this, SLOT (playSound() ) ); | 87 | connect ( playSoundTimer, SIGNAL( timeout() ), this, SLOT (playSound() ) ); |
91 | 88 | ||
92 | playSoundTimer->stop(); | 89 | playSoundTimer->stop(); |
93 | 90 | ||
94 | layout->addWidget ( mMissedAlarms ); | 91 | layout->addWidget ( mMissedAlarms ); |
92 | mMissedAlarmsCombo = new QComboBox ( this ); | ||
93 | layout->addWidget ( mMissedAlarmsCombo ); | ||
95 | QVBox *suspendBox = new QVBox( this ); | 94 | QVBox *suspendBox = new QVBox( this ); |
96 | suspendBox->setSpacing(3); | 95 | suspendBox->setSpacing(3); |
97 | layout->addWidget ( suspendBox ); | 96 | layout->addWidget ( suspendBox ); |
98 | QLabel* labb = new QLabel("Suspend duration (minutes):",suspendBox); | 97 | QLabel* labb = new QLabel("Suspend duration (minutes):",suspendBox); |
99 | labb->setAlignment(AlignCenter); | 98 | labb->setAlignment(AlignCenter); |
100 | fo = font(); | 99 | fo = font(); |
101 | fo.setPointSize( 36 ); | 100 | fo.setPointSize( 36 ); |
102 | mSuspendSpin = new QSpinBox(1,1440,1,suspendBox); | 101 | mSuspendSpin = new QSpinBox(1,1440,1,suspendBox); |
@@ -107,24 +106,25 @@ AlarmDialog::AlarmDialog(QWidget *parent,const char *name) | |||
107 | mSuspendSpin->upButton ()->setFixedSize( QSize( 48, 30 )); | 106 | mSuspendSpin->upButton ()->setFixedSize( QSize( 48, 30 )); |
108 | mSuspendSpin->downButton ()->setFixedSize( QSize( 48, 30 )); | 107 | mSuspendSpin->downButton ()->setFixedSize( QSize( 48, 30 )); |
109 | mSuspendSpin->setFixedSize( 100,62 ); | 108 | mSuspendSpin->setFixedSize( 100,62 ); |
110 | mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); | 109 | mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); |
111 | 110 | ||
112 | QVBox * bbox = new QVBox ( this ); | 111 | QVBox * bbox = new QVBox ( this ); |
113 | layout->addWidget ( bbox ); | 112 | layout->addWidget ( bbox ); |
114 | bbox->layout()->setSpacing( 2 ); | 113 | bbox->layout()->setSpacing( 2 ); |
115 | QPushButton* suspend = new QPushButton( "Suspend", bbox); | 114 | mSuspendButton = new QPushButton( "Suspend", bbox); |
116 | QPushButton* silen = new QPushButton( " Stop sound ", bbox); | 115 | QPushButton* silen = new QPushButton( " Stop sound ", bbox); |
117 | QPushButton* okbut = new QPushButton( "Ok", bbox); | 116 | QPushButton* okbut = new QPushButton( "Ok", bbox); |
118 | suspend->setFont( fo ); | 117 | mSuspendButton->setFont( fo ); |
119 | silen->setFont( fo ); | 118 | silen->setFont( fo ); |
120 | okbut->setFont( fo ); | 119 | okbut->setFont( fo ); |
120 | okbut->setDefault( true ); | ||
121 | connect (silen , SIGNAL( clicked() ), this, SLOT (silent() ) ); | 121 | connect (silen , SIGNAL( clicked() ), this, SLOT (silent() ) ); |
122 | connect (suspend , SIGNAL( clicked() ), this, SLOT (slotSuspend() ) ); | 122 | connect (mSuspendButton, SIGNAL( clicked() ), this, SLOT (slotSuspend() ) ); |
123 | connect (okbut , SIGNAL( clicked() ), this, SLOT (slotOk() ) ); | 123 | connect (okbut , SIGNAL( clicked() ), this, SLOT (slotOk() ) ); |
124 | #ifndef _WIN32_ | 124 | #ifndef _WIN32_ |
125 | if ( QFile::exists ( "/dev/sharp_led" ) ) | 125 | if ( QFile::exists ( "/dev/sharp_led" ) ) |
126 | fd_led = open ( "/dev/sharp_led", O_RDWR|O_NONBLOCK ); | 126 | fd_led = open ( "/dev/sharp_led", O_RDWR|O_NONBLOCK ); |
127 | else | 127 | else |
128 | #endif | 128 | #endif |
129 | fd_led = 0; | 129 | fd_led = 0; |
130 | statusLED.which = SHARP_LED_SALARM; | 130 | statusLED.which = SHARP_LED_SALARM; |
@@ -155,18 +155,19 @@ void AlarmDialog::suspend() | |||
155 | 155 | ||
156 | #else | 156 | #else |
157 | Sound::soundAlarm (); | 157 | Sound::soundAlarm (); |
158 | #endif | 158 | #endif |
159 | } | 159 | } |
160 | void AlarmDialog::slotOk() | 160 | void AlarmDialog::slotOk() |
161 | { | 161 | { |
162 | mStopAlarm = true; | 162 | mStopAlarm = true; |
163 | mMissedAlarms->setText(""); | 163 | mMissedAlarms->setText("(No missed Alarms)"); |
164 | mMessage->setText(""); | 164 | mMessage->setText(""); |
165 | mMissedAlarmsCombo->clear(); | ||
165 | #ifndef _WIN32_ | 166 | #ifndef _WIN32_ |
166 | if ( fd_led > 0 ) { | 167 | if ( fd_led > 0 ) { |
167 | statusLED.status = LED_SALARM_OFF ; | 168 | statusLED.status = LED_SALARM_OFF ; |
168 | ioctl (fd_led, SHARP_LED_SETSTATUS, &statusLED); | 169 | ioctl (fd_led, SHARP_LED_SETSTATUS, &statusLED); |
169 | } | 170 | } |
170 | #endif | 171 | #endif |
171 | QDialog::accept(); | 172 | QDialog::accept(); |
172 | } | 173 | } |
@@ -209,22 +210,22 @@ bool AlarmDialog::eventNotification( QString mess, int replay , QString fn, boo | |||
209 | mFileName = fn; | 210 | mFileName = fn; |
210 | mPlayWav = playwav; | 211 | mPlayWav = playwav; |
211 | if ( !QFile::exists( fn ) ) | 212 | if ( !QFile::exists( fn ) ) |
212 | mFileName = ""; | 213 | mFileName = ""; |
213 | alarmCounter = 0 ; | 214 | alarmCounter = 0 ; |
214 | maxAlarmReplay = replay ; | 215 | maxAlarmReplay = replay ; |
215 | mStopAlarm = false; | 216 | mStopAlarm = false; |
216 | mSilent = false; | 217 | mSilent = false; |
217 | if ( mMissedAlarms->text() == "" ) | 218 | if ( !mMessage->text().stripWhiteSpace().isEmpty() ) { |
218 | mMissedAlarms->setText( mMessage->text()); | 219 | mMissedAlarmsCombo->show(); |
219 | else | 220 | mMissedAlarmsCombo->insertItem( mMessage->text().stripWhiteSpace() ); |
220 | mMissedAlarms->setText( mMessage->text()+ "\n" + mMissedAlarms->text() ); | 221 | mMissedAlarms->setText( "Missed alarms:"); |
221 | if ( mMissedAlarms->text().length() > 180 ) | 222 | } else |
222 | mMissedAlarms->setText(mMissedAlarms->text().left ( 180 )); | 223 | mMissedAlarmsCombo->hide(); |
223 | mMessage->setText(mess); | 224 | mMessage->setText(mess); |
224 | int w =sizeHint().width() ; | 225 | int w =sizeHint().width() ; |
225 | int h = sizeHint().height() ; | 226 | int h = sizeHint().height() ; |
226 | int dw = QApplication::desktop()->width(); | 227 | int dw = QApplication::desktop()->width(); |
227 | int dh = QApplication::desktop()->height(); | 228 | int dh = QApplication::desktop()->height(); |
228 | setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); | 229 | setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); |
229 | show(); | 230 | show(); |
230 | raise(); | 231 | raise(); |
@@ -245,17 +246,17 @@ bool AlarmDialog::eventNotification( QString mess, int replay , QString fn, boo | |||
245 | 246 | ||
246 | 247 | ||
247 | void AlarmDialog::playSound () | 248 | void AlarmDialog::playSound () |
248 | { | 249 | { |
249 | if (mStopAlarm ) | 250 | if (mStopAlarm ) |
250 | return; | 251 | return; |
251 | showNormal(); | 252 | showNormal(); |
252 | setActiveWindow(); | 253 | setActiveWindow(); |
253 | setFocus(); | 254 | mSuspendSpin->setFocus(); |
254 | raise(); | 255 | raise(); |
255 | 256 | ||
256 | qApp->processEvents(); | 257 | qApp->processEvents(); |
257 | if ( alarmCounter < maxAlarmReplay && ! mSilent) { | 258 | if ( alarmCounter < maxAlarmReplay && ! mSilent) { |
258 | ++alarmCounter; | 259 | ++alarmCounter; |
259 | if ( !mPlayWav || mFileName.length() < 2 ) { | 260 | if ( !mPlayWav || mFileName.length() < 2 ) { |
260 | 261 | ||
261 | #ifndef DESKTOP_VERSION | 262 | #ifndef DESKTOP_VERSION |
diff --git a/kalarmd/alarmdialog.h b/kalarmd/alarmdialog.h index 3155f18..896cf60 100644 --- a/kalarmd/alarmdialog.h +++ b/kalarmd/alarmdialog.h | |||
@@ -23,16 +23,18 @@ | |||
23 | #ifndef ALARMDIALOG_H | 23 | #ifndef ALARMDIALOG_H |
24 | #define ALARMDIALOG_H | 24 | #define ALARMDIALOG_H |
25 | 25 | ||
26 | 26 | ||
27 | 27 | ||
28 | #include <qdialog.h> | 28 | #include <qdialog.h> |
29 | #include <qdatetime.h> | 29 | #include <qdatetime.h> |
30 | #include <qstring.h> | 30 | #include <qstring.h> |
31 | #include <qcombobox.h> | ||
32 | #include <qpushbutton.h> | ||
31 | 33 | ||
32 | #include "sharp_char.h" | 34 | #include "sharp_char.h" |
33 | 35 | ||
34 | 36 | ||
35 | class QSpinBox; | 37 | class QSpinBox; |
36 | class QLabel; | 38 | class QLabel; |
37 | class QString; | 39 | class QString; |
38 | 40 | ||
@@ -67,14 +69,16 @@ class AlarmDialog : public QDialog { | |||
67 | QTimer* playSoundTimer; | 69 | QTimer* playSoundTimer; |
68 | bool mStopAlarm; | 70 | bool mStopAlarm; |
69 | bool mSilent; | 71 | bool mSilent; |
70 | bool mPlayWav; | 72 | bool mPlayWav; |
71 | bool mServerNotification; | 73 | bool mServerNotification; |
72 | QLabel* mMessage; | 74 | QLabel* mMessage; |
73 | QLabel* mMissedAlarms; | 75 | QLabel* mMissedAlarms; |
74 | QSpinBox *mSuspendSpin; | 76 | QSpinBox *mSuspendSpin; |
77 | QComboBox *mMissedAlarmsCombo; | ||
78 | QPushButton* mSuspendButton; | ||
75 | QString mFileName; | 79 | QString mFileName; |
76 | int fd_led; | 80 | int fd_led; |
77 | sharp_led_status statusLED; | 81 | sharp_led_status statusLED; |
78 | }; | 82 | }; |
79 | 83 | ||
80 | #endif | 84 | #endif |
diff --git a/kalarmd/simplealarmdaemonimpl.cpp b/kalarmd/simplealarmdaemonimpl.cpp index e8ec033..b3da428 100644 --- a/kalarmd/simplealarmdaemonimpl.cpp +++ b/kalarmd/simplealarmdaemonimpl.cpp | |||
@@ -356,17 +356,17 @@ void SimpleAlarmDaemonImpl::startAlarm( QString mess, QString filename ) | |||
356 | void SimpleAlarmDaemonImpl::fillTimerPopUp() | 356 | void SimpleAlarmDaemonImpl::fillTimerPopUp() |
357 | { | 357 | { |
358 | 358 | ||
359 | // qDebug(" timer %d %d ",mTimerPopupConf, mTimerTime ); | 359 | // qDebug(" timer %d %d ",mTimerPopupConf, mTimerTime ); |
360 | if ( mTimerPopupConf == mTimerTime ) { | 360 | if ( mTimerPopupConf == mTimerTime ) { |
361 | if ( mTimerTime ) { | 361 | if ( mTimerTime ) { |
362 | int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); | 362 | int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); |
363 | QTime t ( secs/3600, (secs/60)%60, secs%60 ); | 363 | QTime t ( secs/3600, (secs/60)%60, secs%60 ); |
364 | mTimerPopUp->changeItem ( 1 , t.toString() + " (remaining time)"); | 364 | mTimerPopUp->changeItem ( 1 , t.toString() + " (countdown)"); |
365 | } | 365 | } |
366 | else { | 366 | else { |
367 | QString text = mCustomText.stripWhiteSpace (); | 367 | QString text = mCustomText.stripWhiteSpace (); |
368 | int in = text.find( " " ); | 368 | int in = text.find( " " ); |
369 | text = text.left ( in ); | 369 | text = text.left ( in ); |
370 | mTimerPopUp->changeItem ( 3, text ); | 370 | mTimerPopUp->changeItem ( 3, text ); |
371 | } | 371 | } |
372 | return; | 372 | return; |
@@ -374,18 +374,18 @@ void SimpleAlarmDaemonImpl::fillTimerPopUp() | |||
374 | mTimerPopupConf = mTimerTime; | 374 | mTimerPopupConf = mTimerTime; |
375 | mTimerPopUp->clear(); | 375 | mTimerPopUp->clear(); |
376 | if ( mTimerTime ) { | 376 | if ( mTimerTime ) { |
377 | int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); | 377 | int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); |
378 | QTime t ( secs/3600, (secs/60)%60, secs%60 ); | 378 | QTime t ( secs/3600, (secs/60)%60, secs%60 ); |
379 | 379 | ||
380 | 380 | ||
381 | mTimerPopUp->insertItem( "Stop timer "+ mRunningTimerText , 0 ); | 381 | mTimerPopUp->insertItem( "Stop timer "+ mRunningTimerText , 0 ); |
382 | mTimerPopUp->insertItem( t.toString() + " (remaining time)",1); | 382 | mTimerPopUp->insertItem( t.toString() + " (countdown)",1); |
383 | mTimerPopUp->insertItem( mRunningTimer.time().toString() + " (alarm time)",2); | 383 | mTimerPopUp->insertItem( mRunningTimer.time().toString() + " (alarm)",2); |
384 | } else { | 384 | } else { |
385 | 385 | ||
386 | QString fileName = QDir::homeDirPath() +"/.kopialarmtimerrc"; | 386 | QString fileName = QDir::homeDirPath() +"/.kopialarmtimerrc"; |
387 | QFile file( fileName ); | 387 | QFile file( fileName ); |
388 | if( !QFile::exists( fileName) ) { | 388 | if( !QFile::exists( fileName) ) { |
389 | // write defaults | 389 | // write defaults |
390 | if (!file.open( IO_WriteOnly ) ) { | 390 | if (!file.open( IO_WriteOnly ) ) { |
391 | return; | 391 | return; |
@@ -555,18 +555,18 @@ void SimpleAlarmDaemonImpl::confTimer( int time ) | |||
555 | spinm.setButtonSymbols( QSpinBox::PlusMinus ); | 555 | spinm.setButtonSymbols( QSpinBox::PlusMinus ); |
556 | spinh.upButton ()->setFixedSize( QSize( 48, 30 )); | 556 | spinh.upButton ()->setFixedSize( QSize( 48, 30 )); |
557 | spinh.downButton ()->setFixedSize( QSize( 48, 30 )); | 557 | spinh.downButton ()->setFixedSize( QSize( 48, 30 )); |
558 | //spinh.editor ()->setFixedSize( QSize( 50, 100 )); | 558 | //spinh.editor ()->setFixedSize( QSize( 50, 100 )); |
559 | spinh.setFixedSize( 100,62 ); | 559 | spinh.setFixedSize( 100,62 ); |
560 | spinm.upButton ()->setFixedSize( QSize( 48, 30 )); | 560 | spinm.upButton ()->setFixedSize( QSize( 48, 30 )); |
561 | spinm.downButton ()->setFixedSize( QSize( 48, 30 )); | 561 | spinm.downButton ()->setFixedSize( QSize( 48, 30 )); |
562 | spinm.downButton ()->setGeometry( 50,50,50,50); | 562 | spinm.downButton ()->setGeometry( 50,50,50,50); |
563 | spinm.setSuffix( " m" ); | 563 | // spinm.setSuffix( " m" ); |
564 | spinh.setSuffix( " h" ); | 564 | //spinh.setSuffix( " h" ); |
565 | spinm.setWrapping ( true ); | 565 | spinm.setWrapping ( true ); |
566 | //spinm.editor ()->setFixedSize( QSize( 50, 100 )); | 566 | //spinm.editor ()->setFixedSize( QSize( 50, 100 )); |
567 | spinm.setLineStep( 1 ); | 567 | spinm.setLineStep( 1 ); |
568 | spinm.setFixedSize( 110,62 ); | 568 | spinm.setFixedSize( 110,62 ); |
569 | lay.addWidget( &hbox); | 569 | lay.addWidget( &hbox); |
570 | QLabel lab5 ("Timer fires at:", &dia ); | 570 | QLabel lab5 ("Timer fires at:", &dia ); |
571 | lab5.setAlignment( AlignCenter ); | 571 | lab5.setAlignment( AlignCenter ); |
572 | lay.addWidget( &lab5); | 572 | lay.addWidget( &lab5); |
@@ -574,17 +574,19 @@ void SimpleAlarmDaemonImpl::confTimer( int time ) | |||
574 | dl.setAlignment( AlignCenter ); | 574 | dl.setAlignment( AlignCenter ); |
575 | dl.setFont( fo ); | 575 | dl.setFont( fo ); |
576 | connect ( &spinh, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_hours( int ) ) ); | 576 | connect ( &spinh, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_hours( int ) ) ); |
577 | connect ( &spinm, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_minutes( int ) ) ); | 577 | connect ( &spinm, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_minutes( int ) ) ); |
578 | lay.addWidget( &dl); | 578 | lay.addWidget( &dl); |
579 | spinh.setValue( mCustomMinutes/60 ); | 579 | spinh.setValue( mCustomMinutes/60 ); |
580 | spinm.setValue( mCustomMinutes%60 ); | 580 | spinm.setValue( mCustomMinutes%60 ); |
581 | QPushButton ok ( "Start timer", &dia); | 581 | QPushButton ok ( "Start timer", &dia); |
582 | ok.setDefault( true ); | ||
582 | ok.setFont( fo ); | 583 | ok.setFont( fo ); |
584 | spinh.setFocus(); | ||
583 | lay.addWidget( &ok); | 585 | lay.addWidget( &ok); |
584 | connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) ); | 586 | connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) ); |
585 | dia.resize( dia.sizeHint().width(), dia.sizeHint().height() ); | 587 | dia.resize( dia.sizeHint().width(), dia.sizeHint().height() ); |
586 | 588 | ||
587 | if ( !dia.exec() ) | 589 | if ( !dia.exec() ) |
588 | return; | 590 | return; |
589 | mCustomText = lEdit.text(); | 591 | mCustomText = lEdit.text(); |
590 | mCustomMinutes = spinh.value()*60+spinm.value(); | 592 | mCustomMinutes = spinh.value()*60+spinm.value(); |
@@ -603,16 +605,17 @@ void SimpleAlarmDaemonImpl::confTimer( int time ) | |||
603 | int min = minutes; | 605 | int min = minutes; |
604 | if ( min % 60 == 0 ) | 606 | if ( min % 60 == 0 ) |
605 | mRunningTimerText = QString::number ( min/60 ) + ( " hours"); | 607 | mRunningTimerText = QString::number ( min/60 ) + ( " hours"); |
606 | else | 608 | else |
607 | mRunningTimerText = QString::number ( minutes ) + ( " minutes"); | 609 | mRunningTimerText = QString::number ( minutes ) + ( " minutes"); |
608 | } | 610 | } |
609 | } | 611 | } |
610 | //minutes = 1; | 612 | //minutes = 1; |
613 | |||
611 | mRunningTimer = QDateTime::currentDateTime().addSecs( minutes * 60 ); | 614 | mRunningTimer = QDateTime::currentDateTime().addSecs( minutes * 60 ); |
612 | timerMesssage = mess; | 615 | timerMesssage = mess; |
613 | AlarmServer::addAlarm ( mRunningTimer,"koalarm",timerMesssage.latin1()); | 616 | AlarmServer::addAlarm ( mRunningTimer,"koalarm",timerMesssage.latin1()); |
614 | mTimerTime = 1; | 617 | mTimerTime = 1; |
615 | } | 618 | } |
616 | 619 | ||
617 | void SimpleAlarmDaemonImpl::writeFile() | 620 | void SimpleAlarmDaemonImpl::writeFile() |
618 | { | 621 | { |