Diffstat (limited to 'kalarmd/simplealarmdaemonimpl.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | kalarmd/simplealarmdaemonimpl.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/kalarmd/simplealarmdaemonimpl.cpp b/kalarmd/simplealarmdaemonimpl.cpp index 2742610..aa61fb8 100644 --- a/kalarmd/simplealarmdaemonimpl.cpp +++ b/kalarmd/simplealarmdaemonimpl.cpp | |||
@@ -1,208 +1,215 @@ | |||
1 | /* | 1 | /* |
2 | This file is part of the KOrganizer alarm daemon. | 2 | This file is part of the KOrganizer alarm daemon. |
3 | Copyright (c) 2002 Cornelius Schumacher <schumacher@kde.org> | 3 | Copyright (c) 2002 Cornelius Schumacher <schumacher@kde.org> |
4 | 4 | ||
5 | This program is free software; you can redistribute it and/or modify | 5 | This program is free software; you can redistribute it and/or modify |
6 | it under the terms of the GNU General Public License as published by | 6 | it under the terms of the GNU General Public License as published by |
7 | the Free Software Foundation; either version 2 of the License, or | 7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. | 8 | (at your option) any later version. |
9 | 9 | ||
10 | This program is distributed in the hope that it will be useful, | 10 | This program is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 | GNU General Public License for more details. | 13 | GNU General Public License for more details. |
14 | 14 | ||
15 | You should have received a copy of the GNU General Public License | 15 | You should have received a copy of the GNU General Public License |
16 | along with this program; if not, write to the Free Software | 16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 17 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
18 | 18 | ||
19 | As a special exception, permission is given to link this program | 19 | As a special exception, permission is given to link this program |
20 | with any edition of Qt, and distribute the resulting executable, | 20 | with any edition of Qt, and distribute the resulting executable, |
21 | without including the source code for Qt in the source distribution. | 21 | without including the source code for Qt in the source distribution. |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include "simplealarmdaemonimpl.h" | 24 | #include "simplealarmdaemonimpl.h" |
25 | 25 | ||
26 | #include "alarmdialog.h" | 26 | #include "alarmdialog.h" |
27 | #include <qpopupmenu.h> | 27 | #include <qpopupmenu.h> |
28 | #include <qapp.h> | 28 | #include <qapp.h> |
29 | #include <qdir.h> | 29 | #include <qdir.h> |
30 | #include <qfile.h> | 30 | #include <qfile.h> |
31 | #include <qhbox.h> | 31 | #include <qhbox.h> |
32 | #include <qtimer.h> | 32 | #include <qtimer.h> |
33 | #include <qfile.h> | 33 | #include <qfile.h> |
34 | #include <qdatetime.h> | 34 | #include <qdatetime.h> |
35 | #include <qpushbutton.h> | 35 | #include <qpushbutton.h> |
36 | #include <qlayout.h> | 36 | #include <qlayout.h> |
37 | #include <qlineedit.h> | 37 | #include <qlineedit.h> |
38 | #include <qdialog.h> | 38 | #include <qdialog.h> |
39 | #define protected public | 39 | #define protected public |
40 | #include <qspinbox.h> | 40 | #include <qspinbox.h> |
41 | #undef protected | 41 | #undef protected |
42 | #include <qtextstream.h> | 42 | #include <qtextstream.h> |
43 | #include <qtopia/qcopenvelope_qws.h> | 43 | #include <qtopia/qcopenvelope_qws.h> |
44 | #include <qtopia/alarmserver.h> | 44 | #include <qtopia/alarmserver.h> |
45 | 45 | ||
46 | #include <stdlib.h> | 46 | #include <stdlib.h> |
47 | #include <stdio.h> | 47 | #include <stdio.h> |
48 | #include <unistd.h> | 48 | #include <unistd.h> |
49 | 49 | ||
50 | 50 | ||
51 | SimpleAlarmDaemonImpl::SimpleAlarmDaemonImpl( QWidget *parent ) | 51 | SimpleAlarmDaemonImpl::SimpleAlarmDaemonImpl( QWidget *parent ) |
52 | : QLabel( parent ) | 52 | : QLabel( parent ) |
53 | { | 53 | { |
54 | mAlarmDialog = new AlarmDialog( 0 ); | 54 | mAlarmDialog = new AlarmDialog( 0 ); |
55 | mPopUp = new QPopupMenu( this ); | 55 | mPopUp = new QPopupMenu( this ); |
56 | mPopUp->insertItem( "What's Next?", this, SLOT ( showWN() ) ); | 56 | mPopUp->insertItem( "What's Next?", this, SLOT ( showWN() ) ); |
57 | mPopUp->insertItem( "Next Days!", this, SLOT ( showKO() ) ); | 57 | mPopUp->insertItem( "Next Days!", this, SLOT ( showKO() ) ); |
58 | mPopUp->insertSeparator(); | 58 | mPopUp->insertSeparator(); |
59 | mPopUp->insertItem( "Todo List", this, SLOT ( showTodo() ) ); | 59 | mPopUp->insertItem( "Todo List", this, SLOT ( showTodo() ) ); |
60 | mPopUp->insertSeparator(); | 60 | mPopUp->insertSeparator(); |
61 | mPopUp->insertItem( "Addresses", this, SLOT ( showAdd() ) ); | 61 | mPopUp->insertItem( "Addresses", this, SLOT ( showAdd() ) ); |
62 | mPopUp->insertSeparator(); | 62 | mPopUp->insertSeparator(); |
63 | mPopUp->insertItem( "Edit Journal", this, SLOT ( writeJournal() ) ); | 63 | mPopUp->insertItem( "Edit Journal", this, SLOT ( writeJournal() ) ); |
64 | mPopUp->insertItem( "New Event", this, SLOT ( newEvent() ) ); | 64 | mPopUp->insertItem( "New Event", this, SLOT ( newEvent() ) ); |
65 | mPopUp->insertItem( "New Todo", this, SLOT ( newTodo() ) ); | 65 | mPopUp->insertItem( "New Todo", this, SLOT ( newTodo() ) ); |
66 | mPopUp->insertItem( "New Mail", this, SLOT ( newMail() ) ); | 66 | mPopUp->insertItem( "New Mail", this, SLOT ( newMail() ) ); |
67 | mPopUp->insertSeparator(); | 67 | mPopUp->insertSeparator(); |
68 | mPopUp->insertItem( "Multi Sync", this, SLOT ( ringSync() ) ); | 68 | mPopUp->insertItem( "Multi Sync", this, SLOT ( ringSync() ) ); |
69 | mTimerPopUp = new QPopupMenu( this ); | 69 | mTimerPopUp = new QPopupMenu( this ); |
70 | 70 | ||
71 | mBeepPopUp = new QPopupMenu( this ); | 71 | mBeepPopUp = new QPopupMenu( this ); |
72 | mSoundPopUp = new QPopupMenu( this ); | 72 | mSoundPopUp = new QPopupMenu( this ); |
73 | mPausePopUp = new QPopupMenu( this ); | 73 | mPausePopUp = new QPopupMenu( this ); |
74 | mFontsizePopup = new QPopupMenu( this ); | 74 | mFontsizePopup = new QPopupMenu( this ); |
75 | mFontsizePopup->insertItem( "10", 10 ); | 75 | mFontsizePopup->insertItem( "10", 10 ); |
76 | mFontsizePopup->insertItem( "12", 12 ); | 76 | mFontsizePopup->insertItem( "12", 12 ); |
77 | mFontsizePopup->insertItem( "14", 14 ); | 77 | mFontsizePopup->insertItem( "14", 14 ); |
78 | mFontsizePopup->insertItem( "16", 16 ); | 78 | mFontsizePopup->insertItem( "16", 16 ); |
79 | mFontsizePopup->insertItem( "18", 18 ); | 79 | mFontsizePopup->insertItem( "18", 18 ); |
80 | mFontsizePopup->insertItem( "20", 20 ); | ||
81 | mFontsizePopup->insertItem( "22", 22 ); | ||
80 | mFontsizePopup->insertItem( "24", 24 ); | 82 | mFontsizePopup->insertItem( "24", 24 ); |
83 | mFontsizePopup->insertItem( "26", 26 ); | ||
84 | mFontsizePopup->insertItem( "28", 28 ); | ||
85 | mFontsizePopup->insertItem( "30", 30 ); | ||
86 | mFontsizePopup->insertItem( "32", 32 ); | ||
87 | mFontsizePopup->insertItem( "36", 36 ); | ||
81 | QPopupMenu* savePopUp = new QPopupMenu( this ); | 88 | QPopupMenu* savePopUp = new QPopupMenu( this ); |
82 | savePopUp->insertItem( "Save", 0 ); | 89 | savePopUp->insertItem( "Save", 0 ); |
83 | savePopUp->insertItem( "Load", 1 ); | 90 | savePopUp->insertItem( "Load", 1 ); |
84 | mSoundPopUp->insertItem( "Buzzer", 0 ); | 91 | mSoundPopUp->insertItem( "Buzzer", 0 ); |
85 | mSoundPopUp->insertItem( "Wav file", 1 ); | 92 | mSoundPopUp->insertItem( "Wav file", 1 ); |
86 | mPausePopUp->insertItem( " 1 sec", 1 ); | 93 | mPausePopUp->insertItem( " 1 sec", 1 ); |
87 | mPausePopUp->insertItem( " 2 sec", 2 ); | 94 | mPausePopUp->insertItem( " 2 sec", 2 ); |
88 | mPausePopUp->insertItem( " 3 sec", 3 ); | 95 | mPausePopUp->insertItem( " 3 sec", 3 ); |
89 | mPausePopUp->insertItem( " 5 sec", 5 ); | 96 | mPausePopUp->insertItem( " 5 sec", 5 ); |
90 | mPausePopUp->insertItem( "10 sec", 10 ); | 97 | mPausePopUp->insertItem( "10 sec", 10 ); |
91 | mPausePopUp->insertItem( "30 sec", 30 ); | 98 | mPausePopUp->insertItem( "30 sec", 30 ); |
92 | mPausePopUp->insertItem( " 1 min", 60 ); | 99 | mPausePopUp->insertItem( " 1 min", 60 ); |
93 | mPausePopUp->insertItem( " 5 min", 300 ); | 100 | mPausePopUp->insertItem( " 5 min", 300 ); |
94 | mPausePopUp->insertItem( "10 min", 600 ); | 101 | mPausePopUp->insertItem( "10 min", 600 ); |
95 | mSuspendPopUp = new QPopupMenu( this ); | 102 | mSuspendPopUp = new QPopupMenu( this ); |
96 | mSuspendPopUp->insertItem( "Off", 0 ); | 103 | mSuspendPopUp->insertItem( "Off", 0 ); |
97 | mSuspendPopUp->insertItem( " 1x", 1 ); | 104 | mSuspendPopUp->insertItem( " 1x", 1 ); |
98 | mSuspendPopUp->insertItem( " 2x", 2 ); | 105 | mSuspendPopUp->insertItem( " 2x", 2 ); |
99 | mSuspendPopUp->insertItem( " 3x", 3 ); | 106 | mSuspendPopUp->insertItem( " 3x", 3 ); |
100 | mSuspendPopUp->insertItem( " 5x", 5 ); | 107 | mSuspendPopUp->insertItem( " 5x", 5 ); |
101 | mSuspendPopUp->insertItem( "10x", 10 ); | 108 | mSuspendPopUp->insertItem( "10x", 10 ); |
102 | mSuspendPopUp->insertItem( "20x", 20 ); | 109 | mSuspendPopUp->insertItem( "20x", 20 ); |
103 | mSuspendPopUp->insertItem( "30x", 30 ); | 110 | mSuspendPopUp->insertItem( "30x", 30 ); |
111 | mBeepPopUp->insertItem( "Config",savePopUp ); | ||
112 | mBeepPopUp->insertItem( "Replay",mSoundPopUp ); | ||
113 | mBeepPopUp->insertItem( "Font Size",mFontsizePopup ); | ||
104 | mBeepPopUp->insertItem( "Auto suspend",mSuspendPopUp ); | 114 | mBeepPopUp->insertItem( "Auto suspend",mSuspendPopUp ); |
105 | mBeepPopUp->insertItem( "Beep interval",mPausePopUp ); | 115 | mBeepPopUp->insertItem( "Beep interval",mPausePopUp ); |
106 | mBeepPopUp->insertItem( "Replay",mSoundPopUp ); | ||
107 | mBeepPopUp->insertItem( "Font Size",mFontsizePopup ); | ||
108 | mBeepPopUp->insertItem( "Config",savePopUp ); | ||
109 | mBeepPopUp->insertItem( "300", 300 ); | ||
110 | mBeepPopUp->insertItem( "180", 180 ); | 116 | mBeepPopUp->insertItem( "180", 180 ); |
111 | mBeepPopUp->insertItem( "60", 60 ); | 117 | mBeepPopUp->insertItem( "60", 60 ); |
112 | mBeepPopUp->insertItem( "30", 30 ); | 118 | mBeepPopUp->insertItem( "30", 30 ); |
119 | mBeepPopUp->insertItem( "18", 18 ); | ||
113 | mBeepPopUp->insertItem( "10", 10 ); | 120 | mBeepPopUp->insertItem( "10", 10 ); |
114 | mBeepPopUp->insertItem( "3", 3 ); | 121 | mBeepPopUp->insertItem( "3", 3 ); |
115 | mBeepPopUp->insertItem( "1", 1 ); | 122 | mBeepPopUp->insertItem( "1", 1 ); |
116 | mBeepPopUp->insertItem( "Off", 0 ); | 123 | mBeepPopUp->insertItem( "Off", 0 ); |
117 | mBeepPopUp->insertSeparator(); | 124 | mBeepPopUp->insertSeparator(); |
118 | mBeepPopUp->insertItem( "Simulate", 1000 ); | 125 | mBeepPopUp->insertItem( "Simulate", 1000 ); |
119 | mBeepPopUp->setCheckable( true ); | 126 | mBeepPopUp->setCheckable( true ); |
120 | mPopUp->insertSeparator(); | 127 | mPopUp->insertSeparator(); |
121 | mPopUp->insertItem( "Play beeps", mBeepPopUp ); | 128 | mPopUp->insertItem( "Play beeps", mBeepPopUp ); |
122 | mPopUp->insertSeparator(); | 129 | mPopUp->insertSeparator(); |
123 | mPopUp->insertItem( "Timer", mTimerPopUp ); | 130 | mPopUp->insertItem( "Timer", mTimerPopUp ); |
124 | //mPopUp->insertSeparator(); | 131 | //mPopUp->insertSeparator(); |
125 | //mPopUp->insertItem( "Simulate", this, SLOT ( simulate() ) ); | 132 | //mPopUp->insertItem( "Simulate", this, SLOT ( simulate() ) ); |
126 | 133 | ||
127 | mPopUp->resize( mPopUp->sizeHint() ); | 134 | mPopUp->resize( mPopUp->sizeHint() ); |
128 | mPlayBeeps = 60; | 135 | mPlayBeeps = 60; |
129 | mBeepPopUp->setItemChecked ( mPlayBeeps, true ); | 136 | mBeepPopUp->setItemChecked ( mPlayBeeps, true ); |
130 | connect ( mBeepPopUp, SIGNAL( activated ( int ) ), this, SLOT (slotPlayBeep( int ) ) ); | 137 | connect ( mBeepPopUp, SIGNAL( activated ( int ) ), this, SLOT (slotPlayBeep( int ) ) ); |
131 | connect ( mTimerPopUp, SIGNAL( activated ( int ) ), this, SLOT (confTimer( int ) ) ); | 138 | connect ( mTimerPopUp, SIGNAL( activated ( int ) ), this, SLOT (confTimer( int ) ) ); |
132 | connect ( mTimerPopUp, SIGNAL(aboutToShow() ), this, SLOT ( showTimer( ) ) ); | 139 | connect ( mTimerPopUp, SIGNAL(aboutToShow() ), this, SLOT ( showTimer( ) ) ); |
133 | connect ( mSoundPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSound( int ) ) ); | 140 | connect ( mSoundPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSound( int ) ) ); |
134 | connect ( mPausePopUp, SIGNAL( activated ( int ) ), this, SLOT (confPause( int ) ) ); | 141 | connect ( mPausePopUp, SIGNAL( activated ( int ) ), this, SLOT (confPause( int ) ) ); |
135 | connect ( mSuspendPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSuspend( int ) ) ); | 142 | connect ( mSuspendPopUp, SIGNAL( activated ( int ) ), this, SLOT (confSuspend( int ) ) ); |
136 | connect ( savePopUp, SIGNAL( activated ( int ) ), this, SLOT (saveSlot( int ) ) ); | 143 | connect ( savePopUp, SIGNAL( activated ( int ) ), this, SLOT (saveSlot( int ) ) ); |
137 | connect ( mFontsizePopup, SIGNAL( activated ( int ) ), this, SLOT (confFontSize( int ) ) ); | 144 | connect ( mFontsizePopup, SIGNAL( activated ( int ) ), this, SLOT (confFontSize( int ) ) ); |
138 | mTimerTime = 0; | 145 | mTimerTime = 0; |
139 | mCustomText = "Custom Text"; | 146 | mCustomText = "Custom Text"; |
140 | mCustomMinutes = 7; | 147 | mCustomMinutes = 7; |
141 | mTimerPopupConf = 1; | 148 | mTimerPopupConf = 1; |
142 | fillTimerPopUp(); | 149 | fillTimerPopUp(); |
143 | mPausePlay = 0; | 150 | mPausePlay = 0; |
144 | confPause( 1 ); | 151 | confPause( 1 ); |
145 | mSuspend = 0; | 152 | mSuspend = 0; |
146 | confSuspend( 0 ); | 153 | confSuspend( 0 ); |
147 | if ( QApplication::desktop()->width() < 480 ) { | 154 | if ( QApplication::desktop()->width() < 480 ) { |
148 | wavAlarm = false; | 155 | wavAlarm = false; |
149 | mSoundPopUp->setItemChecked ( 0, true ); | 156 | mSoundPopUp->setItemChecked ( 0, true ); |
150 | } | 157 | } |
151 | else { | 158 | else { |
152 | wavAlarm = true; | 159 | wavAlarm = true; |
153 | mSoundPopUp->setItemChecked ( 1, true ); | 160 | mSoundPopUp->setItemChecked ( 1, true ); |
154 | } | 161 | } |
155 | mTimerStartLabel = new QLabel( 0, 0, WType_Popup ); | 162 | mTimerStartLabel = new QLabel( 0, 0, WType_Popup ); |
156 | //mTimerStartLabel->setCaption( "Timer started!"); | 163 | //mTimerStartLabel->setCaption( "Timer started!"); |
157 | mTimerStartLabel->setAlignment ( Qt::AlignCenter ) ; | 164 | mTimerStartLabel->setAlignment ( Qt::AlignCenter ) ; |
158 | saveSlot( 1 ); | 165 | saveSlot( 1 ); |
159 | 166 | ||
160 | 167 | ||
161 | 168 | ||
162 | } | 169 | } |
163 | 170 | ||
164 | SimpleAlarmDaemonImpl::~SimpleAlarmDaemonImpl() | 171 | SimpleAlarmDaemonImpl::~SimpleAlarmDaemonImpl() |
165 | { | 172 | { |
166 | //delete mPopUp; | 173 | //delete mPopUp; |
167 | delete mAlarmDialog; | 174 | delete mAlarmDialog; |
168 | delete mTimerStartLabel; | 175 | delete mTimerStartLabel; |
169 | } | 176 | } |
170 | 177 | ||
171 | void SimpleAlarmDaemonImpl::saveSlot( int load ) | 178 | void SimpleAlarmDaemonImpl::saveSlot( int load ) |
172 | { | 179 | { |
173 | QString fileName = QDir::homeDirPath() +"/.kopialarmrc"; | 180 | QString fileName = QDir::homeDirPath() +"/.kopialarmrc"; |
174 | //qDebug("save %d ", load ); | 181 | //qDebug("save %d ", load ); |
175 | QFile file( fileName ); | 182 | QFile file( fileName ); |
176 | if ( load ) { | 183 | if ( load ) { |
177 | mPopupFontSize = mTimerPopUp->font().pointSize(); | 184 | mPopupFontSize = mTimerPopUp->font().pointSize(); |
178 | confFontSize( mPopupFontSize ); | 185 | confFontSize( mPopupFontSize ); |
179 | if( !QFile::exists( fileName) ) | 186 | if( !QFile::exists( fileName) ) |
180 | return; | 187 | return; |
181 | if (!file.open( IO_ReadOnly ) ) { | 188 | if (!file.open( IO_ReadOnly ) ) { |
182 | return ; | 189 | return ; |
183 | } | 190 | } |
184 | QString line; | 191 | QString line; |
185 | bool ok; | 192 | bool ok; |
186 | int val; | 193 | int val; |
187 | int len; | 194 | int len; |
188 | while ( file.readLine( line, 1024 ) > 0 ) { | 195 | while ( file.readLine( line, 1024 ) > 0 ) { |
189 | //qDebug("read %s ", line.latin1()); | 196 | //qDebug("read %s ", line.latin1()); |
190 | len = line.length(); | 197 | len = line.length(); |
191 | if ( line.left(4 ) == "PPAU" ) { | 198 | if ( line.left(4 ) == "PPAU" ) { |
192 | val = line.mid( 4,len-5).toInt( &ok ); | 199 | val = line.mid( 4,len-5).toInt( &ok ); |
193 | if ( ok ) { | 200 | if ( ok ) { |
194 | confPause( val ); | 201 | confPause( val ); |
195 | } | 202 | } |
196 | } | 203 | } |
197 | if ( line.left(4 ) == "POFO" ) { | 204 | if ( line.left(4 ) == "POFO" ) { |
198 | val = line.mid( 4,len-5).toInt( &ok ); | 205 | val = line.mid( 4,len-5).toInt( &ok ); |
199 | if ( ok ) { | 206 | if ( ok ) { |
200 | confFontSize( val ); | 207 | confFontSize( val ); |
201 | } | 208 | } |
202 | } | 209 | } |
203 | if ( line.left(4 ) == "SUCO" ) { | 210 | if ( line.left(4 ) == "SUCO" ) { |
204 | val = line.mid( 4,len-5).toInt( &ok ); | 211 | val = line.mid( 4,len-5).toInt( &ok ); |
205 | if ( ok ) | 212 | if ( ok ) |
206 | confSuspend ( val ); | 213 | confSuspend ( val ); |
207 | } | 214 | } |
208 | if ( line.left(4 ) == "WAAL" ) { | 215 | if ( line.left(4 ) == "WAAL" ) { |