-rw-r--r-- | kalarmd/alarmdialog.cpp | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/kalarmd/alarmdialog.cpp b/kalarmd/alarmdialog.cpp index 7b888ab..bdeee4a 100644 --- a/kalarmd/alarmdialog.cpp +++ b/kalarmd/alarmdialog.cpp @@ -59,30 +59,29 @@ AlarmDialog::AlarmDialog(QWidget *parent,const char *name) : QDialog (parent, name, true, Qt::WStyle_StaysOnTop ) { setCaption( "KO/Pi Alarm!" ); QVBoxLayout* layout = new QVBoxLayout( this); QLabel* l = new QLabel("The following event triggered alarm:",this); layout->addWidget ( l ); l->setAlignment( AlignCenter); mMessage = new QLabel ( " ", this ); int fs = 18; int fs2 = 12; + int baseSize = 6; if ( QApplication::desktop()->width() < 480 ) { - setMaximumSize(220, 260); fs2 = 10; - } - else { - setMaximumSize(440, 440); + fs = 12; + baseSize = 4; } layout->setSpacing( 3 ); layout->setMargin( 3 ); QFont fo = QApplication::font(); fo.setBold( true ); fo.setPointSize( fs2 ); l->setFont( fo ); fo.setPointSize( fs ); mMessage->setFont(fo ); mMessage->setAlignment( AlignCenter); layout->addWidget ( mMessage ); mMissedAlarms= new QLabel ( "(No missed Alarms)", this ); @@ -94,36 +93,37 @@ AlarmDialog::AlarmDialog(QWidget *parent,const char *name) playSoundTimer->stop(); layout->addWidget ( mMissedAlarms ); mMissedAlarmsCombo = new QComboBox ( this ); layout->addWidget ( mMissedAlarmsCombo ); QLabel* labb = new QLabel("Suspend duration (minutes):",this); labb->setAlignment(AlignCenter); layout->addWidget ( labb ); fo = font(); int pointSize = 36; if ( QApplication::desktop()->width() <= 320 ) - pointSize = 24; + pointSize = 18; fo.setPointSize( pointSize ); mSuspendSpin = new QSpinBox(1,1440,1,this); mSuspendSpin->setFont( fo ); mSuspendSpin->setValue(7); // default suspend duration mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); + #if QT_VERSION < 0x030000 - mSuspendSpin->upButton ()->setFixedSize( QSize( 48, 30 )); - mSuspendSpin->downButton ()->setFixedSize( QSize( 48, 30 )); + mSuspendSpin->upButton ()->setFixedSize( QSize( 8*baseSize, 5*baseSize )); + mSuspendSpin->downButton ()->setFixedSize( QSize( 8*baseSize, 5*baseSize )); #endif - mSuspendSpin->setFixedSize( 100,62 ); + mSuspendSpin->setFixedSize( 18*baseSize, 10*baseSize+2 ); mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); QHBoxLayout* layoutSpin = new QHBoxLayout( layout ); layoutSpin->addStretch (); layoutSpin->addWidget ( mSuspendSpin ); layoutSpin->addStretch (); QVBox * bbox = new QVBox ( this ); layout->addWidget ( bbox ); bbox->layout()->setSpacing( 2 ); labb = new QLabel("Press \"Cancel\" or \"Esc\" to suspend!",bbox); labb->setAlignment(AlignCenter); mSuspendButton = new QPushButton( "Suspend", bbox); @@ -235,48 +235,52 @@ bool AlarmDialog::eventNotification( QString mess, int replay , QString fn, boo mMissedAlarmsCombo->insertItem( mMessage->text().stripWhiteSpace() ); mMissedAlarms->setText( "Missed alarms:"); } else mMissedAlarmsCombo->hide(); mMessage->setText(mess); int w =sizeHint().width() ; int h = sizeHint().height() ; int dw = QApplication::desktop()->width(); int dh = QApplication::desktop()->height(); setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); show(); raise(); - qApp->processEvents(); - repaint(); + //qApp->processEvents(); + //repaint(); qApp->processEvents(); #ifndef _WIN32_ if ( fd_led > 0 ) { statusLED.status = LED_SALARM_ON ; ioctl (fd_led, SHARP_LED_SETSTATUS, &statusLED); } #endif playSoundTimer->start( 1000, true ); return true; } void AlarmDialog::playSound () { + if (mStopAlarm ) return; + if (mSilent ) + return; showNormal(); setActiveWindow(); mSuspendSpin->setFocus(); raise(); + repaint(); qApp->processEvents(); if ( alarmCounter < maxAlarmReplay && ! mSilent) { ++alarmCounter; #ifdef DESKTOP_VERSION mPlayWav = true; #endif if ( !mPlayWav || mFileName.length() < 2 ) { #ifdef DESKTOP_VERSION qDebug("Sound play not possible - file not found"); #else @@ -293,24 +297,24 @@ void AlarmDialog::playSound () QString command = "playwave -r 22050 " + mFileName; qDebug("KO: Playing file %s with 22kHz",mFileName.latin1() ); int ret = system ( command.latin1() ); if ( ret != 0 ) { qDebug("Sound play command failed: %s ",command.latin1() ); } #endif #else QSound::play ( mFileName ); #endif - //qDebug("BEEP!"); + qDebug("BEEP!"); } } else { if ( ! mSilent && mSuspendCounter > 0 ) { --mSuspendCounter; reject (); hide(); return; } } playSoundTimer->start( mPauseCount * 1000, true ); } |