summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kalarmd/simplealarmdaemonimpl.cpp23
-rw-r--r--kalarmd/simplealarmdaemonimpl.h1
2 files changed, 23 insertions, 1 deletions
diff --git a/kalarmd/simplealarmdaemonimpl.cpp b/kalarmd/simplealarmdaemonimpl.cpp
index 8ea8a73..04b8b21 100644
--- a/kalarmd/simplealarmdaemonimpl.cpp
+++ b/kalarmd/simplealarmdaemonimpl.cpp
@@ -103,103 +103,112 @@ SimpleAlarmDaemonImpl::SimpleAlarmDaemonImpl( QWidget *parent )
103 mBeepPopUp->insertItem( "Replay",mSoundPopUp ); 103 mBeepPopUp->insertItem( "Replay",mSoundPopUp );
104 mBeepPopUp->insertItem( "Config",savePopUp ); 104 mBeepPopUp->insertItem( "Config",savePopUp );
105 mBeepPopUp->insertItem( "300", 300 ); 105 mBeepPopUp->insertItem( "300", 300 );
106 mBeepPopUp->insertItem( "180", 180 ); 106 mBeepPopUp->insertItem( "180", 180 );
107 mBeepPopUp->insertItem( "60", 60 ); 107 mBeepPopUp->insertItem( "60", 60 );
108 mBeepPopUp->insertItem( "30", 30 ); 108 mBeepPopUp->insertItem( "30", 30 );
109 mBeepPopUp->insertItem( "10", 10 ); 109 mBeepPopUp->insertItem( "10", 10 );
110 mBeepPopUp->insertItem( "3", 3 ); 110 mBeepPopUp->insertItem( "3", 3 );
111 mBeepPopUp->insertItem( "1", 1 ); 111 mBeepPopUp->insertItem( "1", 1 );
112 mBeepPopUp->insertItem( "Off", 0 ); 112 mBeepPopUp->insertItem( "Off", 0 );
113 mBeepPopUp->insertSeparator(); 113 mBeepPopUp->insertSeparator();
114 mBeepPopUp->insertItem( "Simulate", 1000 ); 114 mBeepPopUp->insertItem( "Simulate", 1000 );
115 mBeepPopUp->setCheckable( true ); 115 mBeepPopUp->setCheckable( true );
116 mPopUp->insertSeparator(); 116 mPopUp->insertSeparator();
117 mPopUp->insertItem( "Play beeps", mBeepPopUp ); 117 mPopUp->insertItem( "Play beeps", mBeepPopUp );
118 mPopUp->insertSeparator(); 118 mPopUp->insertSeparator();
119 mPopUp->insertItem( "Timer", mTimerPopUp ); 119 mPopUp->insertItem( "Timer", mTimerPopUp );
120 //mPopUp->insertSeparator(); 120 //mPopUp->insertSeparator();
121 //mPopUp->insertItem( "Simulate", this, SLOT ( simulate() ) ); 121 //mPopUp->insertItem( "Simulate", this, SLOT ( simulate() ) );
122 122
123 mPopUp->resize( mPopUp->sizeHint() ); 123 mPopUp->resize( mPopUp->sizeHint() );
124 mPlayBeeps = 60; 124 mPlayBeeps = 60;
125 mBeepPopUp->setItemChecked ( mPlayBeeps, true ); 125 mBeepPopUp->setItemChecked ( mPlayBeeps, true );
126 connect ( mBeepPopUp, SIGNAL( activated ( int ) ), this, SLOT (slotPlayBeep( int ) ) ); 126 connect ( mBeepPopUp, SIGNAL( activated ( int ) ), this, SLOT (slotPlayBeep( int ) ) );
127 connect ( mTimerPopUp, SIGNAL( activated ( int ) ), this, SLOT (confTimer( int ) ) ); 127 connect ( mTimerPopUp, SIGNAL( activated ( int ) ), this, SLOT (confTimer( int ) ) );
128 connect ( mTimerPopUp, SIGNAL(aboutToShow() ), this, SLOT ( showTimer( ) ) ); 128 connect ( mTimerPopUp, SIGNAL(aboutToShow() ), this, SLOT ( showTimer( ) ) );
129 connect ( mSoundPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSound( int ) ) ); 129 connect ( mSoundPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSound( int ) ) );
130 connect ( mPausePopUp, SIGNAL( activated ( int ) ), this, SLOT (confPause( int ) ) ); 130 connect ( mPausePopUp, SIGNAL( activated ( int ) ), this, SLOT (confPause( int ) ) );
131 connect ( mSuspendPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSuspend( int ) ) ); 131 connect ( mSuspendPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSuspend( int ) ) );
132 connect ( savePopUp, SIGNAL( activated ( int ) ), this, SLOT (saveSlot( int ) ) ); 132 connect ( savePopUp, SIGNAL( activated ( int ) ), this, SLOT (saveSlot( int ) ) );
133 mTimerTime = 0; 133 mTimerTime = 0;
134 mCustomText = "Custom Text"; 134 mCustomText = "Custom Text";
135 mCustomMinutes = 7; 135 mCustomMinutes = 7;
136 mTimerPopupConf = 1; 136 mTimerPopupConf = 1;
137 fillTimerPopUp(); 137 fillTimerPopUp();
138 mPausePlay = 0; 138 mPausePlay = 0;
139 confPause( 1 ); 139 confPause( 1 );
140 mSuspend = 0; 140 mSuspend = 0;
141 confSuspend( 0 ); 141 confSuspend( 0 );
142 if ( QApplication::desktop()->width() < 480 ) { 142 if ( QApplication::desktop()->width() < 480 ) {
143 wavAlarm = false; 143 wavAlarm = false;
144 mSoundPopUp->setItemChecked ( 0, true ); 144 mSoundPopUp->setItemChecked ( 0, true );
145 } 145 }
146 else { 146 else {
147 wavAlarm = true; 147 wavAlarm = true;
148 mSoundPopUp->setItemChecked ( 1, true ); 148 mSoundPopUp->setItemChecked ( 1, true );
149 } 149 }
150 saveSlot( 1 ); 150 saveSlot( 1 );
151 mTimerStartLabel = new QLabel( 0 );
152 mTimerStartLabel->setCaption( "Timer started!");
153 fon = mTimerPopUp->font();
154 fon.setBold( true );
155 points = (fon.pointSize()*2);
156 fon.setPointSize( points );
157 mTimerStartLabel->setFont( fon );
151} 158}
152 159
153SimpleAlarmDaemonImpl::~SimpleAlarmDaemonImpl() 160SimpleAlarmDaemonImpl::~SimpleAlarmDaemonImpl()
154{ 161{
155 //delete mPopUp; 162 //delete mPopUp;
156 delete mAlarmDialog; 163 delete mAlarmDialog;
164 delete mTimerStartLabel;
157} 165}
166
158void SimpleAlarmDaemonImpl::saveSlot( int load ) 167void SimpleAlarmDaemonImpl::saveSlot( int load )
159{ 168{
160 QString fileName = QDir::homeDirPath() +"/.kopialarmrc"; 169 QString fileName = QDir::homeDirPath() +"/.kopialarmrc";
161 //qDebug("save %d ", load ); 170 //qDebug("save %d ", load );
162 QFile file( fileName ); 171 QFile file( fileName );
163 if ( load ) { 172 if ( load ) {
164 if( !QFile::exists( fileName) ) 173 if( !QFile::exists( fileName) )
165 return; 174 return;
166 if (!file.open( IO_ReadOnly ) ) { 175 if (!file.open( IO_ReadOnly ) ) {
167 return ; 176 return ;
168 } 177 }
169 QString line; 178 QString line;
170 bool ok; 179 bool ok;
171 int val; 180 int val;
172 int len; 181 int len;
173 while ( file.readLine( line, 1024 ) > 0 ) { 182 while ( file.readLine( line, 1024 ) > 0 ) {
174 //qDebug("read %s ", line.latin1()); 183 //qDebug("read %s ", line.latin1());
175 len = line.length(); 184 len = line.length();
176 if ( line.left(4 ) == "PPAU" ) { 185 if ( line.left(4 ) == "PPAU" ) {
177 val = line.mid( 4,len-5).toInt( &ok ); 186 val = line.mid( 4,len-5).toInt( &ok );
178 if ( ok ) { 187 if ( ok ) {
179 confPause( val ); 188 confPause( val );
180 } 189 }
181 } 190 }
182 if ( line.left(4 ) == "SUCO" ) { 191 if ( line.left(4 ) == "SUCO" ) {
183 val = line.mid( 4,len-5).toInt( &ok ); 192 val = line.mid( 4,len-5).toInt( &ok );
184 if ( ok ) 193 if ( ok )
185 confSuspend ( val ); 194 confSuspend ( val );
186 } 195 }
187 if ( line.left(4 ) == "WAAL" ) { 196 if ( line.left(4 ) == "WAAL" ) {
188 val = line.mid( 4,len-5).toInt( &ok ); 197 val = line.mid( 4,len-5).toInt( &ok );
189 if ( ok ) 198 if ( ok )
190 confSound( val ); 199 confSound( val );
191 200
192 } 201 }
193 if ( line.left(4 ) == "PLBE" ) { 202 if ( line.left(4 ) == "PLBE" ) {
194 val = line.mid( 4,len-5).toInt( &ok ); 203 val = line.mid( 4,len-5).toInt( &ok );
195 if ( ok ) 204 if ( ok )
196 slotPlayBeep( val ); 205 slotPlayBeep( val );
197 206
198 } 207 }
199 if ( line.left(4 ) == "CUTE" ) { 208 if ( line.left(4 ) == "CUTE" ) {
200 mCustomText = line.mid( 5,len-6); 209 mCustomText = line.mid( 5,len-6);
201 // qDebug("text ***%s*** ",mCustomText.latin1() ); 210 // qDebug("text ***%s*** ",mCustomText.latin1() );
202 211
203 } 212 }
204 if ( line.left(4 ) == "CUMI" ) { 213 if ( line.left(4 ) == "CUMI" ) {
205 val = line.mid( 4,len-5).toInt( &ok ); 214 val = line.mid( 4,len-5).toInt( &ok );
@@ -357,98 +366,98 @@ void SimpleAlarmDaemonImpl::startAlarm( QString mess, QString filename )
357{ 366{
358 //mAlarmDialog->show(); 367 //mAlarmDialog->show();
359 //mAlarmDialog->raise(); 368 //mAlarmDialog->raise();
360 mAlarmDialog->eventNotification( mess, mPlayBeeps, filename, wavAlarm,mPausePlay ,mSuspend ); 369 mAlarmDialog->eventNotification( mess, mPlayBeeps, filename, wavAlarm,mPausePlay ,mSuspend );
361} 370}
362 371
363 372
364void SimpleAlarmDaemonImpl::fillTimerPopUp() 373void SimpleAlarmDaemonImpl::fillTimerPopUp()
365{ 374{
366 375
367 // qDebug(" timer %d %d ",mTimerPopupConf, mTimerTime ); 376 // qDebug(" timer %d %d ",mTimerPopupConf, mTimerTime );
368 if ( mTimerPopupConf == mTimerTime ) { 377 if ( mTimerPopupConf == mTimerTime ) {
369 if ( mTimerTime ) { 378 if ( mTimerTime ) {
370 int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); 379 int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer );
371 QTime t ( secs/3600, (secs/60)%60, secs%60 ); 380 QTime t ( secs/3600, (secs/60)%60, secs%60 );
372 mTimerPopUp->changeItem ( 1 , t.toString() + " (countdown)"); 381 mTimerPopUp->changeItem ( 1 , t.toString() + " (countdown)");
373 } 382 }
374 else { 383 else {
375 QString text = mCustomText.stripWhiteSpace (); 384 QString text = mCustomText.stripWhiteSpace ();
376 int in = text.find( " " ); 385 int in = text.find( " " );
377 text = text.left ( in ); 386 text = text.left ( in );
378 mTimerPopUp->changeItem ( 3, text ); 387 mTimerPopUp->changeItem ( 3, text );
379 } 388 }
380 return; 389 return;
381 } 390 }
382 mTimerPopupConf = mTimerTime; 391 mTimerPopupConf = mTimerTime;
383 mTimerPopUp->clear(); 392 mTimerPopUp->clear();
384 if ( mTimerTime ) { 393 if ( mTimerTime ) {
385 int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); 394 int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer );
386 QTime t ( secs/3600, (secs/60)%60, secs%60 ); 395 QTime t ( secs/3600, (secs/60)%60, secs%60 );
387 396
388 397
389 mTimerPopUp->insertItem( "Stop timer "+ mRunningTimerText , 0 ); 398 mTimerPopUp->insertItem( "Stop timer "+ mRunningTimerText , 0 );
390 mTimerPopUp->insertItem( t.toString() + " (countdown)",1); 399 mTimerPopUp->insertItem( t.toString() + " (countdown)",1);
391 mTimerPopUp->insertItem( mRunningTimer.time().toString() + " (alarm)",2); 400 mTimerPopUp->insertItem( mRunningTimer.time().toString() + " (alarm)",2);
392 } else { 401 } else {
393 402
394 QString fileName = QDir::homeDirPath() +"/.kopialarmtimerrc"; 403 QString fileName = QDir::homeDirPath() +"/.kopialarmtimerrc";
395 QFile file( fileName ); 404 QFile file( fileName );
396 if( !QFile::exists( fileName) ) { 405 if( !QFile::exists( fileName) ) {
397 // write defaults 406 // write defaults
398 if (!file.open( IO_WriteOnly ) ) { 407 if (!file.open( IO_WriteOnly ) ) {
399 return; 408 return;
400 } 409 }
401 QString configString ; 410 QString configString ;
402 configString += "#config file for kopi alarm timer\n"; 411 configString += "#config file for kopi alarm timer\n";
403 configString += "#format: <Text for popup menu>;<timer countdown in minutes>\n"; 412 configString += "#format: <Text for popup menu>;<timer countdown in minutes>\n";
404 configString += "24 hours; 1440\n"; 413 configString += "24 hours; 1440\n";
414 configString += "9 hours; 540\n";
405 configString += "8 hours; 480\n"; 415 configString += "8 hours; 480\n";
406 configString += "5 hours; 300\n";
407 configString += "1 hour; 60\n"; 416 configString += "1 hour; 60\n";
408 configString += "30 min; 30\n"; 417 configString += "30 min; 30\n";
409 configString += "15 min; 15\n"; 418 configString += "15 min; 15\n";
410 configString += "SEPARATOR\n"; 419 configString += "SEPARATOR\n";
411 configString += "Pizza; 22\n"; 420 configString += "Pizza; 22\n";
412 configString += "Nap; 45\n"; 421 configString += "Nap; 45\n";
413 configString += "Tea; 5\n"; 422 configString += "Tea; 5\n";
414 QTextStream ts( &file ); 423 QTextStream ts( &file );
415 ts << configString ; 424 ts << configString ;
416 file.close(); 425 file.close();
417 } 426 }
418 427
419 if (!file.open( IO_ReadOnly ) ) { 428 if (!file.open( IO_ReadOnly ) ) {
420 return ; 429 return ;
421 } 430 }
422 QString line; 431 QString line;
423 bool ok; 432 bool ok;
424 while ( file.readLine( line, 1024 ) > 0 ) { 433 while ( file.readLine( line, 1024 ) > 0 ) {
425 //qDebug("read %s ", line.latin1()); 434 //qDebug("read %s ", line.latin1());
426 if ( line.left(1 ) != "#" ) { 435 if ( line.left(1 ) != "#" ) {
427 // no comment 436 // no comment
428 if ( line.left(9 ) == "SEPARATOR" ) { 437 if ( line.left(9 ) == "SEPARATOR" ) {
429 mTimerPopUp->insertSeparator(); 438 mTimerPopUp->insertSeparator();
430 } else { 439 } else {
431 QStringList li = QStringList::split(";",line); 440 QStringList li = QStringList::split(";",line);
432 ok = false; 441 ok = false;
433 if ( li.count() == 2 ) { 442 if ( li.count() == 2 ) {
434 int val = li[1].toInt( &ok ); 443 int val = li[1].toInt( &ok );
435 if ( ok && val > 0 ) { 444 if ( ok && val > 0 ) {
436 mTimerPopUp->insertItem( li[0], val+10); 445 mTimerPopUp->insertItem( li[0], val+10);
437 } 446 }
438 } 447 }
439 } 448 }
440 } 449 }
441 } 450 }
442 file.close(); 451 file.close();
443#if 0 452#if 0
444 mTimerPopUp->insertItem( "24 hours", 1440 ); 453 mTimerPopUp->insertItem( "24 hours", 1440 );
445 // mTimerPopUp->insertItem( i18n("12 h"), 720 ); 454 // mTimerPopUp->insertItem( i18n("12 h"), 720 );
446 mTimerPopUp->insertItem( " 8 hours", 480 ); 455 mTimerPopUp->insertItem( " 8 hours", 480 );
447 mTimerPopUp->insertItem( " 5 hours", 300 ); 456 mTimerPopUp->insertItem( " 5 hours", 300 );
448 // mTimerPopUp->insertItem( i18n(" 2 h"), 120 ); 457 // mTimerPopUp->insertItem( i18n(" 2 h"), 120 );
449 mTimerPopUp->insertItem( " 1 hour", 60 ); 458 mTimerPopUp->insertItem( " 1 hour", 60 );
450 mTimerPopUp->insertItem( "30 min", 30 ); 459 mTimerPopUp->insertItem( "30 min", 30 );
451 mTimerPopUp->insertItem( "15 min", 15 ); 460 mTimerPopUp->insertItem( "15 min", 15 );
452 mTimerPopUp->insertItem( "10 min", 10 ); 461 mTimerPopUp->insertItem( "10 min", 10 );
453 //mTimerPopUp->insertItem( " 5 min", 5 ); 462 //mTimerPopUp->insertItem( " 5 min", 5 );
454 mTimerPopUp->insertSeparator(); 463 mTimerPopUp->insertSeparator();
@@ -468,189 +477,201 @@ void SimpleAlarmDaemonImpl::fillTimerPopUp()
468 477
469void SimpleAlarmDaemonImpl::showTimer() 478void SimpleAlarmDaemonImpl::showTimer()
470{ 479{
471 fillTimerPopUp(); 480 fillTimerPopUp();
472} 481}
473 482
474void SimpleAlarmDaemonImpl::confTimer( int time ) 483void SimpleAlarmDaemonImpl::confTimer( int time )
475{ 484{
476 //qDebug("impleAlarmDaemonImpl::confTimer() %d ", time ); 485 //qDebug("impleAlarmDaemonImpl::confTimer() %d ", time );
477 int minutes = time; 486 int minutes = time;
478 if ( minutes == 0 ) { 487 if ( minutes == 0 ) {
479 if ( ! mTimerTime ) 488 if ( ! mTimerTime )
480 return; 489 return;
481 490
482 QDialog dia ( 0, ("Stop Timer" ), true ); 491 QDialog dia ( 0, ("Stop Timer" ), true );
483 QLabel lab (("Really stop the timer?\n\n"+ mRunningTimerText+"\n"), &dia ); 492 QLabel lab (("Really stop the timer?\n\n"+ mRunningTimerText+"\n"), &dia );
484 lab.setAlignment( AlignCenter ); 493 lab.setAlignment( AlignCenter );
485 dia.setCaption(("KO/Pi Timer Stop" )); 494 dia.setCaption(("KO/Pi Timer Stop" ));
486 QVBoxLayout lay( &dia ); 495 QVBoxLayout lay( &dia );
487 lay.addWidget( &lab); 496 lay.addWidget( &lab);
488 QPushButton ok ( "Stop timer!", &dia); 497 QPushButton ok ( "Stop timer!", &dia);
489 QFont fo = dia.font(); 498 QFont fo = dia.font();
490 fo.setPointSize( 36 ); 499 fo.setPointSize( 36 );
491 ok.setFont( fo ); 500 ok.setFont( fo );
492 lay.addWidget( &ok); 501 lay.addWidget( &ok);
493 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) ); 502 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) );
494 QPushButton con ( "Continue timer!", &dia); 503 QPushButton con ( "Continue timer!", &dia);
495 fo.setPointSize( 36 ); 504 fo.setPointSize( 36 );
496 con.setFont( fo ); 505 con.setFont( fo );
497 lay.addWidget( &con); 506 lay.addWidget( &con);
498 connect ( &con, SIGNAL (clicked()), &dia, SLOT ( reject() ) ); 507 connect ( &con, SIGNAL (clicked()), &dia, SLOT ( reject() ) );
499 lay.setMargin(5); 508 lay.setMargin(5);
500 lay.setSpacing(5); 509 lay.setSpacing(5);
501 dia.resize(dia.sizeHint() ); 510 dia.resize(dia.sizeHint() );
502 511
503 if ( !dia.exec() ) 512 if ( !dia.exec() )
504 return; 513 return;
505 514
506 AlarmServer::deleteAlarm ( mRunningTimer,"koalarm" , timerMesssage.utf8() ); 515 AlarmServer::deleteAlarm ( mRunningTimer,"koalarm" , timerMesssage.utf8() );
507 mTimerTime = 0; 516 mTimerTime = 0;
508 return; 517 return;
509 } 518 }
510 if ( mTimerTime ) 519 if ( mTimerTime )
511 return; 520 return;
512 if ( minutes == 1 ) { 521 if ( minutes == 1 ) {
513 return; 522 return;
514 } 523 }
515 QString mess = "timer_alarm"; 524 QString mess = "timer_alarm";
525 QString disp;
516 mess += ("Timer Alarm!\n"); 526 mess += ("Timer Alarm!\n");
517 if ( minutes == 3 ) { 527 if ( minutes == 3 ) {
518 mess += mCustomText; 528 mess += mCustomText;
519 minutes = mCustomMinutes ; 529 minutes = mCustomMinutes ;
520 mRunningTimerText = mCustomText.stripWhiteSpace (); 530 mRunningTimerText = mCustomText.stripWhiteSpace ();
521 int in = mRunningTimerText.find( " " ); 531 int in = mRunningTimerText.find( " " );
522 mRunningTimerText = mRunningTimerText.left ( in ); 532 mRunningTimerText = mRunningTimerText.left ( in );
533 disp = mCustomText;
523 } 534 }
524 else { 535 else {
525 if ( minutes == 2 ) { 536 if ( minutes == 2 ) {
526 // ask time 537 // ask time
527 QDialog dia ( 0, ("Customize Timer" ), true ); 538 QDialog dia ( 0, ("Customize Timer" ), true );
528 QLabel lab (("Message Text:"), &dia ); 539 QLabel lab (("Message Text:"), &dia );
529 dia.setCaption(("KO/Pi Timer" )); 540 dia.setCaption(("KO/Pi Timer" ));
530 QVBoxLayout lay( &dia ); 541 QVBoxLayout lay( &dia );
531 lay.setMargin(5); 542 lay.setMargin(5);
532 lay.setSpacing(5); 543 lay.setSpacing(5);
533 lay.addWidget( &lab); 544 lay.addWidget( &lab);
534 QLineEdit lEdit( mCustomText, &dia ); 545 QLineEdit lEdit( mCustomText, &dia );
535 lay.addWidget( &lEdit); 546 lay.addWidget( &lEdit);
536 QLabel lab2 (("Countdown time (1 min - 24 h):"), &dia ); 547 QLabel lab2 (("Countdown time (1 min - 24 h):"), &dia );
537 lay.addWidget( &lab2); 548 lay.addWidget( &lab2);
538 QHBox hbox1 ( &dia ); 549 QHBox hbox1 ( &dia );
539 lay.addWidget( &hbox1); 550 lay.addWidget( &hbox1);
540 QLabel lab3 (("Hours"), &hbox1 ); 551 QLabel lab3 (("Hours"), &hbox1 );
541 QLabel lab4 (("Minutes"), &hbox1 ); 552 QLabel lab4 (("Minutes"), &hbox1 );
542 QHBox hbox ( &dia ); 553 QHBox hbox ( &dia );
543 QSpinBox spinh( 0, 24, 1,& hbox ); 554 QSpinBox spinh( 0, 24, 1,& hbox );
544 QFont fo = dia.font(); 555 QFont fo = dia.font();
545 fo.setPointSize( 36 ); 556 fo.setPointSize( 36 );
546 QSpinBox spinm( 0, 59, 1,&hbox ); 557 QSpinBox spinm( 0, 59, 1,&hbox );
547 spinm.setFont( fo ); 558 spinm.setFont( fo );
548 spinh.setFont( fo ); 559 spinh.setFont( fo );
549 spinh.setButtonSymbols( QSpinBox::PlusMinus ); 560 spinh.setButtonSymbols( QSpinBox::PlusMinus );
550 spinm.setButtonSymbols( QSpinBox::PlusMinus ); 561 spinm.setButtonSymbols( QSpinBox::PlusMinus );
551 spinh.upButton ()->setFixedSize( QSize( 48, 30 )); 562 spinh.upButton ()->setFixedSize( QSize( 48, 30 ));
552 spinh.downButton ()->setFixedSize( QSize( 48, 30 )); 563 spinh.downButton ()->setFixedSize( QSize( 48, 30 ));
553 //spinh.editor ()->setFixedSize( QSize( 50, 100 )); 564 //spinh.editor ()->setFixedSize( QSize( 50, 100 ));
554 spinh.setFixedSize( 100,62 ); 565 spinh.setFixedSize( 100,62 );
555 spinm.upButton ()->setFixedSize( QSize( 48, 30 )); 566 spinm.upButton ()->setFixedSize( QSize( 48, 30 ));
556 spinm.downButton ()->setFixedSize( QSize( 48, 30 )); 567 spinm.downButton ()->setFixedSize( QSize( 48, 30 ));
557 spinm.downButton ()->setGeometry( 50,50,50,50); 568 spinm.downButton ()->setGeometry( 50,50,50,50);
558 // spinm.setSuffix( " m" ); 569 // spinm.setSuffix( " m" );
559 //spinh.setSuffix( " h" ); 570 //spinh.setSuffix( " h" );
560 spinm.setWrapping ( true ); 571 spinm.setWrapping ( true );
561 //spinm.editor ()->setFixedSize( QSize( 50, 100 )); 572 //spinm.editor ()->setFixedSize( QSize( 50, 100 ));
562 spinm.setLineStep( 1 ); 573 spinm.setLineStep( 1 );
563 spinm.setFixedSize( 110,62 ); 574 spinm.setFixedSize( 110,62 );
564 lay.addWidget( &hbox); 575 lay.addWidget( &hbox);
565 QLabel lab5 ("Timer fires at:", &dia ); 576 QLabel lab5 ("Timer fires at:", &dia );
566 lab5.setAlignment( AlignCenter ); 577 lab5.setAlignment( AlignCenter );
567 lay.addWidget( &lab5); 578 lay.addWidget( &lab5);
568 KODateLabel dl ( &dia ); 579 KODateLabel dl ( &dia );
569 dl.setAlignment( AlignCenter ); 580 dl.setAlignment( AlignCenter );
570 dl.setFont( fo ); 581 dl.setFont( fo );
571 connect ( &spinh, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_hours( int ) ) ); 582 connect ( &spinh, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_hours( int ) ) );
572 connect ( &spinm, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_minutes( int ) ) ); 583 connect ( &spinm, SIGNAL ( valueChanged (int)), &dl, SLOT ( slot_minutes( int ) ) );
573 lay.addWidget( &dl); 584 lay.addWidget( &dl);
574 spinh.setValue( mCustomMinutes/60 ); 585 spinh.setValue( mCustomMinutes/60 );
575 spinm.setValue( mCustomMinutes%60 ); 586 spinm.setValue( mCustomMinutes%60 );
576 QPushButton ok ( "Start timer", &dia); 587 QPushButton ok ( "Start timer", &dia);
577 ok.setDefault( true ); 588 ok.setDefault( true );
578 ok.setFont( fo ); 589 ok.setFont( fo );
579 spinh.setFocus(); 590 spinh.setFocus();
580 lay.addWidget( &ok); 591 lay.addWidget( &ok);
581 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) ); 592 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) );
582 dia.resize( dia.sizeHint().width(), dia.sizeHint().height() ); 593 dia.resize( dia.sizeHint().width(), dia.sizeHint().height() );
583 594
584 if ( !dia.exec() ) 595 if ( !dia.exec() )
585 return; 596 return;
586 mCustomText = lEdit.text(); 597 mCustomText = lEdit.text();
587 mCustomMinutes = spinh.value()*60+spinm.value(); 598 mCustomMinutes = spinh.value()*60+spinm.value();
588 if ( mCustomMinutes == 0 ) 599 if ( mCustomMinutes == 0 )
589 mCustomMinutes = 1; 600 mCustomMinutes = 1;
590 if ( mCustomMinutes > 1440 ) 601 if ( mCustomMinutes > 1440 )
591 mCustomMinutes = 1440; 602 mCustomMinutes = 1440;
592 mess += mCustomText; 603 mess += mCustomText;
604 disp = mCustomText;
593 minutes = mCustomMinutes; 605 minutes = mCustomMinutes;
594 mRunningTimerText = mCustomText.stripWhiteSpace (); 606 mRunningTimerText = mCustomText.stripWhiteSpace ();
595 int in = mRunningTimerText.find( " " ); 607 int in = mRunningTimerText.find( " " );
596 mRunningTimerText = mRunningTimerText.left ( in ); 608 mRunningTimerText = mRunningTimerText.left ( in );
597 } 609 }
598 else { 610 else {
599 mess += mTimerPopUp->text( minutes ); 611 mess += mTimerPopUp->text( minutes );
612 disp = mTimerPopUp->text( minutes );
600 mRunningTimerText = mTimerPopUp->text( minutes ); 613 mRunningTimerText = mTimerPopUp->text( minutes );
601 minutes -= 10; 614 minutes -= 10;
602 } 615 }
603 } 616 }
604 //minutes = 1; 617 //minutes = 1;
605 618
606 mRunningTimer = QDateTime::currentDateTime().addSecs( minutes * 60 ); 619 mRunningTimer = QDateTime::currentDateTime().addSecs( minutes * 60 );
607 timerMesssage = mess; 620 timerMesssage = mess;
608 AlarmServer::addAlarm ( mRunningTimer,"koalarm",timerMesssage.utf8()); 621 AlarmServer::addAlarm ( mRunningTimer,"koalarm",timerMesssage.utf8());
622 mTimerStartLabel->setText( disp );
623 int w = 200;
624 int h = mTimerStartLabel->sizeHint().height() ;
625 int dw = QApplication::desktop()->width();
626 int dh = QApplication::desktop()->height();
627 mTimerStartLabel->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
628 mTimerStartLabel->show();
629 QTimer::singleShot( 3000, mTimerStartLabel, SLOT ( hide() ) );
609 mTimerTime = 1; 630 mTimerTime = 1;
610} 631}
611 632
612void SimpleAlarmDaemonImpl::writeFile() 633void SimpleAlarmDaemonImpl::writeFile()
613{ 634{
614 QCopEnvelope e("QPE/Application/kopi", "-writeFileSilent"); 635 QCopEnvelope e("QPE/Application/kopi", "-writeFileSilent");
615 //QCopEnvelope e("QPE/Application/kopi", "-writeFile"); 636 //QCopEnvelope e("QPE/Application/kopi", "-writeFile");
616} 637}
617void SimpleAlarmDaemonImpl::showWN() 638void SimpleAlarmDaemonImpl::showWN()
618{ 639{
619 QCopEnvelope e("QPE/Application/kopi", "-showWN"); 640 QCopEnvelope e("QPE/Application/kopi", "-showWN");
620} 641}
621void SimpleAlarmDaemonImpl::newTodo() 642void SimpleAlarmDaemonImpl::newTodo()
622{ 643{
623 QCopEnvelope e("QPE/Application/kopi", "-newTodo"); 644 QCopEnvelope e("QPE/Application/kopi", "-newTodo");
624} 645}
625 646
626void SimpleAlarmDaemonImpl::newEvent() 647void SimpleAlarmDaemonImpl::newEvent()
627{ 648{
628 QCopEnvelope e("QPE/Application/kopi", "-newEvent"); 649 QCopEnvelope e("QPE/Application/kopi", "-newEvent");
629 650
630} 651}
631void SimpleAlarmDaemonImpl::newMail() 652void SimpleAlarmDaemonImpl::newMail()
632{ 653{
633 QCopEnvelope e("QPE/Application/ompi", "newMail()"); 654 QCopEnvelope e("QPE/Application/ompi", "newMail()");
634} 655}
635void SimpleAlarmDaemonImpl::showAdd() 656void SimpleAlarmDaemonImpl::showAdd()
636{ 657{
637 QCopEnvelope e("QPE/Application/kapi", "raise()"); 658 QCopEnvelope e("QPE/Application/kapi", "raise()");
638} 659}
639void SimpleAlarmDaemonImpl::ringSync() 660void SimpleAlarmDaemonImpl::ringSync()
640{ 661{
641 QCopEnvelope e("QPE/Application/kopi", "-ringSync"); 662 QCopEnvelope e("QPE/Application/kopi", "-ringSync");
642 663
643} 664}
644void SimpleAlarmDaemonImpl::newCountdown() 665void SimpleAlarmDaemonImpl::newCountdown()
645{ 666{
646 //recieve("cal_alarm", 10 ); 667 //recieve("cal_alarm", 10 );
647} 668}
648void SimpleAlarmDaemonImpl::simulate() 669void SimpleAlarmDaemonImpl::simulate()
649{ 670{
650 QTimer::singleShot( 5000, this, SLOT ( writeFile() ) ); 671 QTimer::singleShot( 5000, this, SLOT ( writeFile() ) );
651 QString filename = getenv("QPEDIR") ; 672 QString filename = getenv("QPEDIR") ;
652 filename += "/pics/kdepim/korganizer/koalarm.wav"; 673 filename += "/pics/kdepim/korganizer/koalarm.wav";
653 startAlarm("Alarm simulation", filename ); 674 startAlarm("Alarm simulation", filename );
654} 675}
655void SimpleAlarmDaemonImpl::showKO() 676void SimpleAlarmDaemonImpl::showKO()
656{ 677{
diff --git a/kalarmd/simplealarmdaemonimpl.h b/kalarmd/simplealarmdaemonimpl.h
index cbdba47..9b7de94 100644
--- a/kalarmd/simplealarmdaemonimpl.h
+++ b/kalarmd/simplealarmdaemonimpl.h
@@ -23,96 +23,97 @@
23#ifndef SIMPLEALARMDAEMONIMPL_H 23#ifndef SIMPLEALARMDAEMONIMPL_H
24#define SIMPLEALARMDAEMONIMPL_H 24#define SIMPLEALARMDAEMONIMPL_H
25 25
26//#include "simplealarmdaemon.h" 26//#include "simplealarmdaemon.h"
27#include <qdatetime.h> 27#include <qdatetime.h>
28#include <qlabel.h> 28#include <qlabel.h>
29#include <qtimer.h> 29#include <qtimer.h>
30 30
31class QLabel; 31class QLabel;
32class QTimer; 32class QTimer;
33class QPopupMenu; 33class QPopupMenu;
34class AlarmDialog; 34class AlarmDialog;
35class SimpleAlarmDaemonImpl : public QLabel 35class SimpleAlarmDaemonImpl : public QLabel
36{ 36{
37 Q_OBJECT 37 Q_OBJECT
38 public: 38 public:
39 SimpleAlarmDaemonImpl( QWidget *parent = 0 ); 39 SimpleAlarmDaemonImpl( QWidget *parent = 0 );
40 40
41 ~SimpleAlarmDaemonImpl(); 41 ~SimpleAlarmDaemonImpl();
42 42
43 protected slots: 43 protected slots:
44 void recieve( const QCString& msg, const QByteArray& data ); 44 void recieve( const QCString& msg, const QByteArray& data );
45 void newTodo(); 45 void newTodo();
46 void newEvent(); 46 void newEvent();
47 void newCountdown(); 47 void newCountdown();
48 void simulate(); 48 void simulate();
49 void showKO(); 49 void showKO();
50 void showWN(); 50 void showWN();
51 void showAdd(); 51 void showAdd();
52 void newMail(); 52 void newMail();
53 void ringSync(); 53 void ringSync();
54 void showTodo(); 54 void showTodo();
55 void writeFile(); 55 void writeFile();
56 void writeJournal(); 56 void writeJournal();
57 void slotPlayBeep( int ); 57 void slotPlayBeep( int );
58 void showTimer( ); 58 void showTimer( );
59 void confPause( int ); 59 void confPause( int );
60 void confTimer( int ); 60 void confTimer( int );
61 void saveSlot( int ); 61 void saveSlot( int );
62 void confSuspend( int ); 62 void confSuspend( int );
63 void confSound( int num ); 63 void confSound( int num );
64 void startAlarm(QString mess, QString fn ); 64 void startAlarm(QString mess, QString fn );
65 65
66 protected: 66 protected:
67 void mousePressEvent( QMouseEvent * ); 67 void mousePressEvent( QMouseEvent * );
68 68
69 private: 69 private:
70 AlarmDialog *mAlarmDialog; 70 AlarmDialog *mAlarmDialog;
71 QLabel * mTimerStartLabel;
71 int mPlayBeeps; 72 int mPlayBeeps;
72 int mPausePlay; 73 int mPausePlay;
73 int mSuspend; 74 int mSuspend;
74 QString mAlarmMessage; 75 QString mAlarmMessage;
75 int mTimerTime; 76 int mTimerTime;
76 int getFileNameLen( QString ); 77 int getFileNameLen( QString );
77 QPopupMenu* mPopUp, *mBeepPopUp, *mTimerPopUp, *mSoundPopUp,*mPausePopUp,*mSuspendPopUp; 78 QPopupMenu* mPopUp, *mBeepPopUp, *mTimerPopUp, *mSoundPopUp,*mPausePopUp,*mSuspendPopUp;
78 QDateTime mRunningTimer; 79 QDateTime mRunningTimer;
79 void fillTimerPopUp(); 80 void fillTimerPopUp();
80 QString timerMesssage; 81 QString timerMesssage;
81 QString mCustomText; 82 QString mCustomText;
82 QString mRunningTimerText; 83 QString mRunningTimerText;
83 int mCustomMinutes; 84 int mCustomMinutes;
84 int mTimerPopupConf; 85 int mTimerPopupConf;
85 bool wavAlarm; 86 bool wavAlarm;
86}; 87};
87class KODateLabel : public QLabel 88class KODateLabel : public QLabel
88{ 89{
89 Q_OBJECT 90 Q_OBJECT
90 public: 91 public:
91 KODateLabel( QWidget *parent=0, const char *name=0 ) : 92 KODateLabel( QWidget *parent=0, const char *name=0 ) :
92 QLabel( parent, name ) 93 QLabel( parent, name )
93 { 94 {
94 hour = 0; 95 hour = 0;
95 minutes = 0; 96 minutes = 0;
96 QTimer * ti = new QTimer( this ); 97 QTimer * ti = new QTimer( this );
97 connect ( ti, SIGNAL ( timeout () ), this, SLOT ( updateText() )); 98 connect ( ti, SIGNAL ( timeout () ), this, SLOT ( updateText() ));
98 ti->start( 1000 ); 99 ti->start( 1000 );
99 100
100 } 101 }
101public slots: 102public slots:
102 void slot_minutes( int m ) 103 void slot_minutes( int m )
103 { 104 {
104 minutes = m; updateText(); 105 minutes = m; updateText();
105 } 106 }
106 void slot_hours( int h ) 107 void slot_hours( int h )
107 { 108 {
108 hour = h; updateText(); 109 hour = h; updateText();
109 } 110 }
110private slots: 111private slots:
111 void updateText() 112 void updateText()
112 { 113 {
113 QDateTime dt = QDateTime::currentDateTime(); 114 QDateTime dt = QDateTime::currentDateTime();
114 dt = dt.addSecs( minutes * 60 + hour * 3600 ); 115 dt = dt.addSecs( minutes * 60 + hour * 3600 );
115 setText( dt.time().toString() ); 116 setText( dt.time().toString() );
116 } 117 }
117 int hour, minutes; 118 int hour, minutes;
118}; 119};