summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kalarmd/simplealarmdaemonimpl.cpp46
1 files changed, 15 insertions, 31 deletions
diff --git a/kalarmd/simplealarmdaemonimpl.cpp b/kalarmd/simplealarmdaemonimpl.cpp
index d6e06c8..eff96eb 100644
--- a/kalarmd/simplealarmdaemonimpl.cpp
+++ b/kalarmd/simplealarmdaemonimpl.cpp
@@ -381,95 +381,94 @@ void SimpleAlarmDaemonImpl::fillTimerPopUp()
381 return; 381 return;
382 } 382 }
383 mTimerPopupConf = mTimerTime; 383 mTimerPopupConf = mTimerTime;
384 mTimerPopUp->clear(); 384 mTimerPopUp->clear();
385 if ( mTimerTime ) { 385 if ( mTimerTime ) {
386 int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer ); 386 int secs = QDateTime::currentDateTime().secsTo ( mRunningTimer );
387 QTime t ( secs/3600, (secs/60)%60, secs%60 ); 387 QTime t ( secs/3600, (secs/60)%60, secs%60 );
388 388
389 389
390 mTimerPopUp->insertItem( "Stop timer "+ mRunningTimerText , 0 ); 390 mTimerPopUp->insertItem( "Stop timer "+ mRunningTimerText , 0 );
391 mTimerPopUp->insertItem( t.toString() + " (countdown)",1); 391 mTimerPopUp->insertItem( t.toString() + " (countdown)",1);
392 mTimerPopUp->insertItem( mRunningTimer.time().toString() + " (alarm)",2); 392 mTimerPopUp->insertItem( mRunningTimer.time().toString() + " (alarm)",2);
393 } else { 393 } else {
394 394
395 QString fileName = QDir::homeDirPath() +"/.kopialarmtimerrc"; 395 QString fileName = QDir::homeDirPath() +"/.kopialarmtimerrc";
396 QFile file( fileName ); 396 QFile file( fileName );
397 if( !QFile::exists( fileName) ) { 397 if( !QFile::exists( fileName) ) {
398 // write defaults 398 // write defaults
399 if (!file.open( IO_WriteOnly ) ) { 399 if (!file.open( IO_WriteOnly ) ) {
400 return; 400 return;
401 } 401 }
402 QString configString ; 402 QString configString ;
403 configString += "#config file for kopi alarm timer\n"; 403 configString += "#config file for kopi alarm timer\n";
404 configString += "#format: <Text for popup menu>;<timer countdown in minutes>\n"; 404 configString += "#format: <Text for popup menu>;<timer countdown in minutes>\n";
405 configString += "#NOTE: minimum value for timer are 3 minutes!\n"; 405 configString += "24 hours; 1440\n";
406 configString += "24 h; 1440\n"; 406 configString += "8 hours; 480\n";
407 configString += " 8 h; 480\n"; 407 configString += "5 hours; 300\n";
408 configString += " 5 h; 300\n"; 408 configString += "1 hour; 60\n";
409 configString += " 1 h; 60\n";
410 configString += "30 min; 30\n"; 409 configString += "30 min; 30\n";
411 configString += "15 min; 15\n"; 410 configString += "15 min; 15\n";
412 configString += "SEPARATOR\n"; 411 configString += "SEPARATOR\n";
413 configString += "Pizza; 22\n"; 412 configString += "Pizza; 22\n";
414 configString += "Nap; 45\n"; 413 configString += "Nap; 45\n";
415 configString += "Tea; 5\n"; 414 configString += "Tea; 5\n";
416 QTextStream ts( &file ); 415 QTextStream ts( &file );
417 ts << configString ; 416 ts << configString ;
418 file.close(); 417 file.close();
419 } 418 }
420 419
421 if (!file.open( IO_ReadOnly ) ) { 420 if (!file.open( IO_ReadOnly ) ) {
422 return ; 421 return ;
423 } 422 }
424 QString line; 423 QString line;
425 bool ok; 424 bool ok;
426 while ( file.readLine( line, 1024 ) > 0 ) { 425 while ( file.readLine( line, 1024 ) > 0 ) {
427 //qDebug("read %s ", line.latin1()); 426 //qDebug("read %s ", line.latin1());
428 if ( line.left(1 ) != "#" ) { 427 if ( line.left(1 ) != "#" ) {
429 // no comment 428 // no comment
430 if ( line.left(9 ) == "SEPARATOR" ) { 429 if ( line.left(9 ) == "SEPARATOR" ) {
431 mTimerPopUp->insertSeparator(); 430 mTimerPopUp->insertSeparator();
432 } else { 431 } else {
433 QStringList li = QStringList::split(";",line); 432 QStringList li = QStringList::split(";",line);
434 ok = false; 433 ok = false;
435 if ( li.count() == 2 ) { 434 if ( li.count() == 2 ) {
436 int val = li[1].toInt( &ok ); 435 int val = li[1].toInt( &ok );
437 if ( ok && val > 2 ) { 436 if ( ok && val > 0 ) {
438 mTimerPopUp->insertItem( li[0], val); 437 mTimerPopUp->insertItem( li[0], val+10);
439 } 438 }
440 } 439 }
441 } 440 }
442 } 441 }
443 } 442 }
444 file.close(); 443 file.close();
445#if 0 444#if 0
446 mTimerPopUp->insertItem( "24 h", 1440 ); 445 mTimerPopUp->insertItem( "24 hours", 1440 );
447 // mTimerPopUp->insertItem( i18n("12 h"), 720 ); 446 // mTimerPopUp->insertItem( i18n("12 h"), 720 );
448 mTimerPopUp->insertItem( " 8 h", 480 ); 447 mTimerPopUp->insertItem( " 8 hours", 480 );
449 mTimerPopUp->insertItem( " 5 h", 300 ); 448 mTimerPopUp->insertItem( " 5 hours", 300 );
450 // mTimerPopUp->insertItem( i18n(" 2 h"), 120 ); 449 // mTimerPopUp->insertItem( i18n(" 2 h"), 120 );
451 mTimerPopUp->insertItem( " 1 h", 60 ); 450 mTimerPopUp->insertItem( " 1 hour", 60 );
452 mTimerPopUp->insertItem( "30 min", 30 ); 451 mTimerPopUp->insertItem( "30 min", 30 );
453 mTimerPopUp->insertItem( "15 min", 15 ); 452 mTimerPopUp->insertItem( "15 min", 15 );
454 mTimerPopUp->insertItem( "10 min", 10 ); 453 mTimerPopUp->insertItem( "10 min", 10 );
455 //mTimerPopUp->insertItem( " 5 min", 5 ); 454 //mTimerPopUp->insertItem( " 5 min", 5 );
456 mTimerPopUp->insertSeparator(); 455 mTimerPopUp->insertSeparator();
457 mTimerPopUp->insertItem( "Pizza", 22 ); 456 mTimerPopUp->insertItem( "Pizza", 22 );
458 mTimerPopUp->insertItem( "Nap", 45 ); 457 mTimerPopUp->insertItem( "Nap", 45 );
459 mTimerPopUp->insertItem( "Tea", 5 ); 458 mTimerPopUp->insertItem( "Tea", 5 );
460#endif 459#endif
461 QString text = mCustomText.stripWhiteSpace (); 460 QString text = mCustomText.stripWhiteSpace ();
462 int in = text.find( " " ); 461 int in = text.find( " " );
463 text = text.left ( in ); 462 text = text.left ( in );
464 mTimerPopUp->insertItem( text, 3 ); 463 mTimerPopUp->insertItem( text, 3 );
465 mTimerPopUp->insertSeparator(); 464 mTimerPopUp->insertSeparator();
466 mTimerPopUp->insertItem( "Customize", 2 ); 465 mTimerPopUp->insertItem( "Customize", 2 );
467 } 466 }
468 467
469} 468}
470 469
471void SimpleAlarmDaemonImpl::showTimer() 470void SimpleAlarmDaemonImpl::showTimer()
472{ 471{
473 fillTimerPopUp(); 472 fillTimerPopUp();
474} 473}
475 474
@@ -484,72 +483,60 @@ void SimpleAlarmDaemonImpl::confTimer( int time )
484 QDialog dia ( 0, ("Stop Timer" ), true ); 483 QDialog dia ( 0, ("Stop Timer" ), true );
485 QLabel lab (("Really stop the timer?\n\n"+ mRunningTimerText+"\n"), &dia ); 484 QLabel lab (("Really stop the timer?\n\n"+ mRunningTimerText+"\n"), &dia );
486 lab.setAlignment( AlignCenter ); 485 lab.setAlignment( AlignCenter );
487 dia.setCaption(("KO/Pi Timer Stop" )); 486 dia.setCaption(("KO/Pi Timer Stop" ));
488 QVBoxLayout lay( &dia ); 487 QVBoxLayout lay( &dia );
489 lay.addWidget( &lab); 488 lay.addWidget( &lab);
490 QPushButton ok ( "Stop timer!", &dia); 489 QPushButton ok ( "Stop timer!", &dia);
491 QFont fo = dia.font(); 490 QFont fo = dia.font();
492 fo.setPointSize( 36 ); 491 fo.setPointSize( 36 );
493 ok.setFont( fo ); 492 ok.setFont( fo );
494 lay.addWidget( &ok); 493 lay.addWidget( &ok);
495 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) ); 494 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) );
496 QPushButton con ( "Continue timer!", &dia); 495 QPushButton con ( "Continue timer!", &dia);
497 fo.setPointSize( 36 ); 496 fo.setPointSize( 36 );
498 con.setFont( fo ); 497 con.setFont( fo );
499 lay.addWidget( &con); 498 lay.addWidget( &con);
500 connect ( &con, SIGNAL (clicked()), &dia, SLOT ( reject() ) ); 499 connect ( &con, SIGNAL (clicked()), &dia, SLOT ( reject() ) );
501 lay.setMargin(5); 500 lay.setMargin(5);
502 lay.setSpacing(5); 501 lay.setSpacing(5);
503 dia.resize(dia.sizeHint() ); 502 dia.resize(dia.sizeHint() );
504 503
505 if ( !dia.exec() ) 504 if ( !dia.exec() )
506 return; 505 return;
507 506
508 AlarmServer::deleteAlarm ( mRunningTimer,"koalarm" , timerMesssage.latin1() ); 507 AlarmServer::deleteAlarm ( mRunningTimer,"koalarm" , timerMesssage.utf8() );
509 mTimerTime = 0; 508 mTimerTime = 0;
510 return; 509 return;
511 } 510 }
512 if ( mTimerTime ) 511 if ( mTimerTime )
513 return; 512 return;
514 if ( minutes == 1 ) { 513 if ( minutes == 1 ) {
515 return; 514 return;
516 } 515 }
517 QString mess = "timer_alarm"; 516 QString mess = "timer_alarm";
518 mess += ("Timer Alarm!\n"); 517 mess += ("Timer Alarm!\n");
519 if ( minutes == 22 ) { 518 if ( minutes == 3 ) {
520 mess += ( "Pizza is ready");
521 mRunningTimerText = "Pizza";
522 }
523 else if ( minutes == 45 ) {
524 mess += ( "Please wake up!");
525 mRunningTimerText = "Nap";
526 }
527 else if ( minutes == 5 ) {
528 mess += ( "Tea is ready");
529 mRunningTimerText = "Tea";
530 }
531 else if ( minutes == 3 ) {
532 mess += mCustomText; 519 mess += mCustomText;
533 minutes = mCustomMinutes ; 520 minutes = mCustomMinutes ;
534 mRunningTimerText = mCustomText.stripWhiteSpace (); 521 mRunningTimerText = mCustomText.stripWhiteSpace ();
535 int in = mRunningTimerText.find( " " ); 522 int in = mRunningTimerText.find( " " );
536 mRunningTimerText = mRunningTimerText.left ( in ); 523 mRunningTimerText = mRunningTimerText.left ( in );
537 } 524 }
538 else { 525 else {
539 if ( minutes == 2 ) { 526 if ( minutes == 2 ) {
540 // ask time 527 // ask time
541 QDialog dia ( 0, ("Customize Timer" ), true ); 528 QDialog dia ( 0, ("Customize Timer" ), true );
542 QLabel lab (("Message Text:"), &dia ); 529 QLabel lab (("Message Text:"), &dia );
543 dia.setCaption(("KO/Pi Timer" )); 530 dia.setCaption(("KO/Pi Timer" ));
544 QVBoxLayout lay( &dia ); 531 QVBoxLayout lay( &dia );
545 lay.setMargin(5); 532 lay.setMargin(5);
546 lay.setSpacing(5); 533 lay.setSpacing(5);
547 lay.addWidget( &lab); 534 lay.addWidget( &lab);
548 QLineEdit lEdit( mCustomText, &dia ); 535 QLineEdit lEdit( mCustomText, &dia );
549 lay.addWidget( &lEdit); 536 lay.addWidget( &lEdit);
550 QLabel lab2 (("Countdown time (1 min - 24 h):"), &dia ); 537 QLabel lab2 (("Countdown time (1 min - 24 h):"), &dia );
551 lay.addWidget( &lab2); 538 lay.addWidget( &lab2);
552 QHBox hbox1 ( &dia ); 539 QHBox hbox1 ( &dia );
553 lay.addWidget( &hbox1); 540 lay.addWidget( &hbox1);
554 QLabel lab3 (("Hours"), &hbox1 ); 541 QLabel lab3 (("Hours"), &hbox1 );
555 QLabel lab4 (("Minutes"), &hbox1 ); 542 QLabel lab4 (("Minutes"), &hbox1 );
@@ -589,54 +576,51 @@ void SimpleAlarmDaemonImpl::confTimer( int time )
589 spinm.setValue( mCustomMinutes%60 ); 576 spinm.setValue( mCustomMinutes%60 );
590 QPushButton ok ( "Start timer", &dia); 577 QPushButton ok ( "Start timer", &dia);
591 ok.setDefault( true ); 578 ok.setDefault( true );
592 ok.setFont( fo ); 579 ok.setFont( fo );
593 spinh.setFocus(); 580 spinh.setFocus();
594 lay.addWidget( &ok); 581 lay.addWidget( &ok);
595 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) ); 582 connect ( &ok, SIGNAL (clicked()), &dia, SLOT ( accept() ) );
596 dia.resize( dia.sizeHint().width(), dia.sizeHint().height() ); 583 dia.resize( dia.sizeHint().width(), dia.sizeHint().height() );
597 584
598 if ( !dia.exec() ) 585 if ( !dia.exec() )
599 return; 586 return;
600 mCustomText = lEdit.text(); 587 mCustomText = lEdit.text();
601 mCustomMinutes = spinh.value()*60+spinm.value(); 588 mCustomMinutes = spinh.value()*60+spinm.value();
602 if ( mCustomMinutes == 0 ) 589 if ( mCustomMinutes == 0 )
603 mCustomMinutes = 1; 590 mCustomMinutes = 1;
604 if ( mCustomMinutes > 1440 ) 591 if ( mCustomMinutes > 1440 )
605 mCustomMinutes = 1440; 592 mCustomMinutes = 1440;
606 mess += mCustomText; 593 mess += mCustomText;
607 minutes = mCustomMinutes; 594 minutes = mCustomMinutes;
608 mRunningTimerText = mCustomText.stripWhiteSpace (); 595 mRunningTimerText = mCustomText.stripWhiteSpace ();
609 int in = mRunningTimerText.find( " " ); 596 int in = mRunningTimerText.find( " " );
610 mRunningTimerText = mRunningTimerText.left ( in ); 597 mRunningTimerText = mRunningTimerText.left ( in );
611 } 598 }
612 else { 599 else {
613 mess+= QString::number ( minutes ) + ( " minutes are past!"); 600 mess += mTimerPopUp->text( minutes );
614 int min = minutes; 601 mRunningTimerText = mTimerPopUp->text( minutes );
615 if ( min % 60 == 0 ) 602 minutes -= 10;
616 mRunningTimerText = QString::number ( min/60 ) + ( " hours");
617 else
618 mRunningTimerText = QString::number ( minutes ) + ( " minutes");
619 } 603 }
620 } 604 }
621 //minutes = 1; 605 //minutes = 1;
622 606
623 mRunningTimer = QDateTime::currentDateTime().addSecs( minutes * 60 ); 607 mRunningTimer = QDateTime::currentDateTime().addSecs( minutes * 60 );
624 timerMesssage = mess; 608 timerMesssage = mess;
625 AlarmServer::addAlarm ( mRunningTimer,"koalarm",timerMesssage.utf8()); 609 AlarmServer::addAlarm ( mRunningTimer,"koalarm",timerMesssage.utf8());
626 mTimerTime = 1; 610 mTimerTime = 1;
627} 611}
628 612
629void SimpleAlarmDaemonImpl::writeFile() 613void SimpleAlarmDaemonImpl::writeFile()
630{ 614{
631 QCopEnvelope e("QPE/Application/kopi", "-writeFileSilent"); 615 QCopEnvelope e("QPE/Application/kopi", "-writeFileSilent");
632 //QCopEnvelope e("QPE/Application/kopi", "-writeFile"); 616 //QCopEnvelope e("QPE/Application/kopi", "-writeFile");
633} 617}
634void SimpleAlarmDaemonImpl::showWN() 618void SimpleAlarmDaemonImpl::showWN()
635{ 619{
636 QCopEnvelope e("QPE/Application/kopi", "-showWN"); 620 QCopEnvelope e("QPE/Application/kopi", "-showWN");
637} 621}
638void SimpleAlarmDaemonImpl::newTodo() 622void SimpleAlarmDaemonImpl::newTodo()
639{ 623{
640 QCopEnvelope e("QPE/Application/kopi", "-newTodo"); 624 QCopEnvelope e("QPE/Application/kopi", "-newTodo");
641} 625}
642 626