summaryrefslogtreecommitdiffabout
path: root/kalarmd/alarmdialog.cpp
Unidiff
Diffstat (limited to 'kalarmd/alarmdialog.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kalarmd/alarmdialog.cpp26
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 @@
59 59
60AlarmDialog::AlarmDialog(QWidget *parent,const char *name) 60AlarmDialog::AlarmDialog(QWidget *parent,const char *name)
61 : QDialog (parent, name, true, Qt::WStyle_StaysOnTop ) 61 : QDialog (parent, name, true, Qt::WStyle_StaysOnTop )
62{ 62{
63 setCaption( "KO/Pi Alarm!" ); 63 setCaption( "KO/Pi Alarm!" );
64 QVBoxLayout* layout = new QVBoxLayout( this); 64 QVBoxLayout* layout = new QVBoxLayout( this);
65 QLabel* l = new QLabel("The following event triggered alarm:",this); 65 QLabel* l = new QLabel("The following event triggered alarm:",this);
66 layout->addWidget ( l ); 66 layout->addWidget ( l );
67 l->setAlignment( AlignCenter); 67 l->setAlignment( AlignCenter);
68 mMessage = new QLabel ( " ", this ); 68 mMessage = new QLabel ( " ", this );
69 int fs = 18; 69 int fs = 18;
70 int fs2 = 12; 70 int fs2 = 12;
71 int baseSize = 6;
71 if ( QApplication::desktop()->width() < 480 ) { 72 if ( QApplication::desktop()->width() < 480 ) {
72 setMaximumSize(220, 260);
73 fs2 = 10; 73 fs2 = 10;
74 } 74 fs = 12;
75 else { 75 baseSize = 4;
76 setMaximumSize(440, 440);
77 } 76 }
78 layout->setSpacing( 3 ); 77 layout->setSpacing( 3 );
79 layout->setMargin( 3 ); 78 layout->setMargin( 3 );
80 QFont fo = QApplication::font(); 79 QFont fo = QApplication::font();
81 fo.setBold( true ); 80 fo.setBold( true );
82 fo.setPointSize( fs2 ); 81 fo.setPointSize( fs2 );
83 l->setFont( fo ); 82 l->setFont( fo );
84 fo.setPointSize( fs ); 83 fo.setPointSize( fs );
85 mMessage->setFont(fo ); 84 mMessage->setFont(fo );
86 mMessage->setAlignment( AlignCenter); 85 mMessage->setAlignment( AlignCenter);
87 layout->addWidget ( mMessage ); 86 layout->addWidget ( mMessage );
88 mMissedAlarms= new QLabel ( "(No missed Alarms)", this ); 87 mMissedAlarms= new QLabel ( "(No missed Alarms)", this );
@@ -94,36 +93,37 @@ AlarmDialog::AlarmDialog(QWidget *parent,const char *name)
94 playSoundTimer->stop(); 93 playSoundTimer->stop();
95 94
96 layout->addWidget ( mMissedAlarms ); 95 layout->addWidget ( mMissedAlarms );
97 mMissedAlarmsCombo = new QComboBox ( this ); 96 mMissedAlarmsCombo = new QComboBox ( this );
98 layout->addWidget ( mMissedAlarmsCombo ); 97 layout->addWidget ( mMissedAlarmsCombo );
99 98
100 QLabel* labb = new QLabel("Suspend duration (minutes):",this); 99 QLabel* labb = new QLabel("Suspend duration (minutes):",this);
101 labb->setAlignment(AlignCenter); 100 labb->setAlignment(AlignCenter);
102 layout->addWidget ( labb ); 101 layout->addWidget ( labb );
103 fo = font(); 102 fo = font();
104 int pointSize = 36; 103 int pointSize = 36;
105 if ( QApplication::desktop()->width() <= 320 ) 104 if ( QApplication::desktop()->width() <= 320 )
106 pointSize = 24; 105 pointSize = 18;
107 fo.setPointSize( pointSize ); 106 fo.setPointSize( pointSize );
108 mSuspendSpin = new QSpinBox(1,1440,1,this); 107 mSuspendSpin = new QSpinBox(1,1440,1,this);
109 mSuspendSpin->setFont( fo ); 108 mSuspendSpin->setFont( fo );
110 mSuspendSpin->setValue(7); // default suspend duration 109 mSuspendSpin->setValue(7); // default suspend duration
111 mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); 110 mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus );
112 mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); 111 mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus );
112
113#if QT_VERSION < 0x030000 113#if QT_VERSION < 0x030000
114 mSuspendSpin->upButton ()->setFixedSize( QSize( 48, 30 )); 114 mSuspendSpin->upButton ()->setFixedSize( QSize( 8*baseSize, 5*baseSize ));
115 mSuspendSpin->downButton ()->setFixedSize( QSize( 48, 30 )); 115 mSuspendSpin->downButton ()->setFixedSize( QSize( 8*baseSize, 5*baseSize ));
116#endif 116#endif
117 mSuspendSpin->setFixedSize( 100,62 ); 117 mSuspendSpin->setFixedSize( 18*baseSize, 10*baseSize+2 );
118 mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus ); 118 mSuspendSpin->setButtonSymbols( QSpinBox::PlusMinus );
119 QHBoxLayout* layoutSpin = new QHBoxLayout( layout ); 119 QHBoxLayout* layoutSpin = new QHBoxLayout( layout );
120 layoutSpin->addStretch (); 120 layoutSpin->addStretch ();
121 layoutSpin->addWidget ( mSuspendSpin ); 121 layoutSpin->addWidget ( mSuspendSpin );
122 layoutSpin->addStretch (); 122 layoutSpin->addStretch ();
123 123
124 QVBox * bbox = new QVBox ( this ); 124 QVBox * bbox = new QVBox ( this );
125 layout->addWidget ( bbox ); 125 layout->addWidget ( bbox );
126 bbox->layout()->setSpacing( 2 ); 126 bbox->layout()->setSpacing( 2 );
127 labb = new QLabel("Press \"Cancel\" or \"Esc\" to suspend!",bbox); 127 labb = new QLabel("Press \"Cancel\" or \"Esc\" to suspend!",bbox);
128 labb->setAlignment(AlignCenter); 128 labb->setAlignment(AlignCenter);
129 mSuspendButton = new QPushButton( "Suspend", bbox); 129 mSuspendButton = new QPushButton( "Suspend", bbox);
@@ -235,48 +235,52 @@ bool AlarmDialog::eventNotification( QString mess, int replay , QString fn, boo
235 mMissedAlarmsCombo->insertItem( mMessage->text().stripWhiteSpace() ); 235 mMissedAlarmsCombo->insertItem( mMessage->text().stripWhiteSpace() );
236 mMissedAlarms->setText( "Missed alarms:"); 236 mMissedAlarms->setText( "Missed alarms:");
237 } else 237 } else
238 mMissedAlarmsCombo->hide(); 238 mMissedAlarmsCombo->hide();
239 mMessage->setText(mess); 239 mMessage->setText(mess);
240 int w =sizeHint().width() ; 240 int w =sizeHint().width() ;
241 int h = sizeHint().height() ; 241 int h = sizeHint().height() ;
242 int dw = QApplication::desktop()->width(); 242 int dw = QApplication::desktop()->width();
243 int dh = QApplication::desktop()->height(); 243 int dh = QApplication::desktop()->height();
244 setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); 244 setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
245 show(); 245 show();
246 raise(); 246 raise();
247 qApp->processEvents(); 247 //qApp->processEvents();
248 repaint(); 248 //repaint();
249 qApp->processEvents(); 249 qApp->processEvents();
250 250
251#ifndef _WIN32_ 251#ifndef _WIN32_
252 if ( fd_led > 0 ) { 252 if ( fd_led > 0 ) {
253 statusLED.status = LED_SALARM_ON ; 253 statusLED.status = LED_SALARM_ON ;
254 ioctl (fd_led, SHARP_LED_SETSTATUS, &statusLED); 254 ioctl (fd_led, SHARP_LED_SETSTATUS, &statusLED);
255 } 255 }
256#endif 256#endif
257 playSoundTimer->start( 1000, true ); 257 playSoundTimer->start( 1000, true );
258 return true; 258 return true;
259 259
260} 260}
261 261
262 262
263void AlarmDialog::playSound () 263void AlarmDialog::playSound ()
264{ 264{
265
265 if (mStopAlarm ) 266 if (mStopAlarm )
266 return; 267 return;
268 if (mSilent )
269 return;
267 showNormal(); 270 showNormal();
268 setActiveWindow(); 271 setActiveWindow();
269 mSuspendSpin->setFocus(); 272 mSuspendSpin->setFocus();
270 raise(); 273 raise();
274 repaint();
271 275
272 qApp->processEvents(); 276 qApp->processEvents();
273 if ( alarmCounter < maxAlarmReplay && ! mSilent) { 277 if ( alarmCounter < maxAlarmReplay && ! mSilent) {
274 ++alarmCounter; 278 ++alarmCounter;
275#ifdef DESKTOP_VERSION 279#ifdef DESKTOP_VERSION
276 mPlayWav = true; 280 mPlayWav = true;
277#endif 281#endif
278 if ( !mPlayWav || mFileName.length() < 2 ) { 282 if ( !mPlayWav || mFileName.length() < 2 ) {
279 283
280#ifdef DESKTOP_VERSION 284#ifdef DESKTOP_VERSION
281 qDebug("Sound play not possible - file not found"); 285 qDebug("Sound play not possible - file not found");
282#else 286#else
@@ -293,24 +297,24 @@ void AlarmDialog::playSound ()
293 QString command = "playwave -r 22050 " + mFileName; 297 QString command = "playwave -r 22050 " + mFileName;
294 qDebug("KO: Playing file %s with 22kHz",mFileName.latin1() ); 298 qDebug("KO: Playing file %s with 22kHz",mFileName.latin1() );
295 int ret = system ( command.latin1() ); 299 int ret = system ( command.latin1() );
296 if ( ret != 0 ) { 300 if ( ret != 0 ) {
297 qDebug("Sound play command failed: %s ",command.latin1() ); 301 qDebug("Sound play command failed: %s ",command.latin1() );
298 } 302 }
299 303
300#endif 304#endif
301 305
302#else 306#else
303 QSound::play ( mFileName ); 307 QSound::play ( mFileName );
304#endif 308#endif
305 //qDebug("BEEP!"); 309 qDebug("BEEP!");
306 } 310 }
307 } else { 311 } else {
308 if ( ! mSilent && mSuspendCounter > 0 ) { 312 if ( ! mSilent && mSuspendCounter > 0 ) {
309 --mSuspendCounter; 313 --mSuspendCounter;
310 reject (); 314 reject ();
311 hide(); 315 hide();
312 return; 316 return;
313 } 317 }
314 } 318 }
315 playSoundTimer->start( mPauseCount * 1000, true ); 319 playSoundTimer->start( mPauseCount * 1000, true );
316} 320}