summaryrefslogtreecommitdiffabout
path: root/kmicromail/koprefsdialog.cpp~
Unidiff
Diffstat (limited to 'kmicromail/koprefsdialog.cpp~') (more/less context) (show whitespace changes)
-rw-r--r--kmicromail/koprefsdialog.cpp~1609
1 files changed, 1609 insertions, 0 deletions
diff --git a/kmicromail/koprefsdialog.cpp~ b/kmicromail/koprefsdialog.cpp~
new file mode 100644
index 0000000..5ba4817
--- a/dev/null
+++ b/kmicromail/koprefsdialog.cpp~
@@ -0,0 +1,1609 @@
1/*
2 This file is part of KOrganizer.
3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
4
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
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
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
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18
19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution.
22*/
23
24#include <qlayout.h>
25#include <qlabel.h>
26#include <qgroupbox.h>
27#include <qbuttongroup.h>
28#include <qlineedit.h>
29#include <qfont.h>
30#include <qslider.h>
31#include <qfile.h>
32#include <qtextstream.h>
33#include <qcombobox.h>
34#include <qvbox.h>
35#include <qhbox.h>
36#include <qregexp.h>
37#include <qspinbox.h>
38#include <qdatetime.h>
39#include <qcheckbox.h>
40#include <qradiobutton.h>
41#include <qpushbutton.h>
42#include <qstrlist.h>
43#include <qapplication.h>
44
45#include <kcolorbutton.h>
46#include <kdebug.h>
47#include <klocale.h>
48#include <kglobal.h>
49#include <kfontdialog.h>
50#include <kfiledialog.h>
51#include <kmessagebox.h>
52#include <kcolordialog.h>
53#include <kiconloader.h>
54#include <kemailsettings.h>
55#include <kstandarddirs.h>
56
57#include <kurlrequester.h>
58#include <klineedit.h>
59
60#if defined(USE_SOLARIS)
61#include <sys/param.h>
62
63#define ZONEINFODIR "/usr/share/lib/zoneinfo"
64#define INITFILE "/etc/default/init"
65#endif
66
67#include "koprefs.h"
68
69#include "koprefsdialog.h"
70
71
72KOPrefsDialog::KOPrefsDialog(QWidget *parent, char *name, bool modal) :
73 KPrefsDialog(KOPrefs::instance(),parent,name,true)
74{
75
76 setCaption( i18n("Preferences - some settings need a restart (nr)"));
77 mCategoryDict.setAutoDelete(true);
78
79 KGlobal::locale()->insertCatalogue("timezones");
80
81 setupMainTab();
82 setupLocaleTab();
83 setupTimeZoneTab();
84 setupTimeTab();
85 setupLocaleDateTab();
86 setupFontsTab();
87 setupColorsTab();
88 setupViewsTab();
89 //setupSyncTab();
90 //setupSyncAlgTab();
91 //setupPrinterTab();
92 //setupGroupSchedulingTab();
93 //setupGroupAutomationTab();
94}
95
96
97KOPrefsDialog::~KOPrefsDialog()
98{
99}
100
101void KOPrefsDialog::setupLocaleDateTab()
102{
103QFrame *topFrame = addPage(i18n("Date Format"),0,0);
104 QGridLayout *topLayout = new QGridLayout(topFrame,3,2);
105 topLayout->setSpacing(spacingHint());
106 topLayout->setMargin(marginHint());
107 int iii = 0;
108
109
110 KPrefsWidRadios *syncPrefsGroup =
111 addWidRadios(i18n("Date Format:"),&(KOPrefs::instance()->mPreferredDate),topFrame);
112 QString format;
113 if ( QApplication::desktop()->width() < 480 )
114 format = "(%d.%m.%Y)";
115 else
116 format = "(%d.%m.%Y|%A %d %B %Y)";
117 syncPrefsGroup->addRadio(i18n("24.03.2004 "+format));
118 if ( QApplication::desktop()->width() < 480 )
119 format = "(%m.%d.%Y)";
120 else
121 format = "(%m.%d.%Y|%A %B %d %Y)";
122 syncPrefsGroup->addRadio(i18n("03.24.2004 "+format));
123 if ( QApplication::desktop()->width() < 480 )
124 format = "(%Y-%m-%d)";
125 else
126 format = "(%Y-%m-%d|%A %Y %B %d)";
127 syncPrefsGroup->addRadio(i18n("2004-03-24 "+format));
128 syncPrefsGroup->addRadio(i18n("User defined"));
129 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
130 ++iii;
131 ++iii;
132 QLabel * lab;
133 mUserDateFormatLong = new QLineEdit(topFrame);
134 lab = new QLabel(mUserDateFormatLong, i18n("User long date:"), topFrame);
135 topLayout->addWidget(lab ,iii,0);
136 topLayout->addWidget(mUserDateFormatLong,iii,1);
137 ++iii;
138 mUserDateFormatShort = new QLineEdit(topFrame);
139 lab = new QLabel(mUserDateFormatShort, i18n("User short date:"), topFrame);
140 topLayout->addWidget(lab ,iii,0);
141 topLayout->addWidget(mUserDateFormatShort,iii,1);
142 ++iii;
143 lab = new QLabel( i18n("Monday 19 April 2004: %A %d %B %Y"), topFrame);
144 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
145 ++iii;
146 lab = new QLabel( i18n("Mon 19.04.04: %a %d.%m.%y"), topFrame);
147 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
148 ++iii;
149 lab = new QLabel( i18n("Mon, 19.Apr.04: %a, %d.%b.%y"), topFrame);
150 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
151 ++iii;
152
153}
154
155void KOPrefsDialog::setupLocaleTab()
156{
157 QFrame *topFrame = addPage(i18n("Locale"),0,0);
158 QGridLayout *topLayout = new QGridLayout(topFrame,4,2);
159 topLayout->setSpacing(spacingHint());
160 topLayout->setMargin(marginHint());
161 int iii = 0;
162 KPrefsWidRadios *syncPrefsGroup =
163 addWidRadios(i18n("Language:(needs restart)"),&(KOPrefs::instance()->mPreferredLanguage),topFrame);
164 syncPrefsGroup->addRadio(i18n("English"));
165 syncPrefsGroup->addRadio(i18n("German"));
166 syncPrefsGroup->addRadio(i18n("French"));
167 syncPrefsGroup->addRadio(i18n("User defined (usertranslation.txt)"));
168 if ( QApplication::desktop()->width() < 300 )
169 ;// syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
170 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
171 ++iii;
172
173 syncPrefsGroup =
174 addWidRadios(i18n("Time Format(nr):"),&(KOPrefs::instance()->mPreferredTime),topFrame);
175 if ( QApplication::desktop()->width() > 300 )
176 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
177 syncPrefsGroup->addRadio(i18n("24:00"));
178 syncPrefsGroup->addRadio(i18n("12:00am"));
179 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
180 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
181 ++iii;
182 KPrefsWidBool *sb;
183 if ( QApplication::desktop()->width() < 300 ) {
184 sb =
185 addWidBool(i18n("Week starts on Sunday"),
186 &(KOPrefs::instance()->mWeekStartsOnSunday),topFrame);
187 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
188 ++iii;
189 sb =
190 addWidBool(i18n("Use short date in (WN/E) view"),
191 &(KOPrefs::instance()->mShortDateInViewer),topFrame);
192 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
193 }
194 else {
195 QWidget * hb = new QWidget( topFrame );
196 QHBoxLayout *hbLayout = new QHBoxLayout(hb);
197 sb =
198 addWidBool(i18n("Week starts on Sunday"),
199 &(KOPrefs::instance()->mWeekStartsOnSunday),hb);
200 hbLayout->addWidget(sb->checkBox() );
201 sb =
202 addWidBool(i18n("Use short date in (WN/E) view"),
203 &(KOPrefs::instance()->mShortDateInViewer),hb);
204 hbLayout->addWidget(sb->checkBox() );
205 topLayout->addMultiCellWidget(hb, iii,iii,0,1);
206
207 }
208 //#ifndef DESKTOP_VERSION
209#if 0
210 ++iii;
211 sb =
212 addWidBool(i18n("Quick load/save (w/o Unicode)"),
213 &(KOPrefs::instance()->mUseQuicksave),topFrame);
214 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
215#endif
216}
217void KOPrefsDialog::showSyncPage()
218{
219 showPage ( 2 ) ;
220
221}
222void KOPrefsDialog::setupSyncAlgTab()
223{
224#if 0
225 QLabel * lab;
226 QFrame *topFrame = addPage(i18n("Sync Prefs"),0,0);
227 mSetupSyncAlgTab = topFrame;
228 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
229 topLayout->setSpacing(spacingHint());
230 topLayout->setMargin(marginHint());
231 int iii = 0;
232
233 KPrefsWidBool *sb =
234 addWidBool(i18n("Ask for preferences before syncing"),
235 &(KOPrefs::instance()->mAskForPreferences),topFrame);
236 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
237
238 ++iii;
239
240 KPrefsWidRadios *syncPrefsGroup =
241 addWidRadios(i18n("Sync preferences:"),&(KOPrefs::instance()->mSyncAlgoPrefs),
242 topFrame);
243 syncPrefsGroup->addRadio(i18n("Take local entry on conflict"));
244 syncPrefsGroup->addRadio(i18n("Take remote entry on conflict"));
245 syncPrefsGroup->addRadio(i18n("Take newest entry on conflict"));
246 syncPrefsGroup->addRadio(i18n("Ask for every entry on conflict"));
247 syncPrefsGroup->addRadio(i18n("Force take local entry always"));
248 syncPrefsGroup->addRadio(i18n("Force take remote entry always"));
249 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
250 ++iii;
251 sb =
252 addWidBool(i18n("Show summary after syncing"),
253 &(KOPrefs::instance()->mShowSyncSummary),topFrame);
254 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
255
256 ++iii;
257#endif
258
259
260
261}
262
263
264void KOPrefsDialog::setupSyncTab()
265{
266#if 0
267 QLabel * lab;
268 QFrame *topFrame = addPage(i18n("Sync Network"),0,0);
269 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
270 topLayout->setSpacing(spacingHint());
271 topLayout->setMargin(marginHint());
272 lab = new QLabel(i18n("Remote syncing (via ssh/scp)\nnetwork settings "), topFrame);
273 int iii = 0;
274 topLayout->addMultiCellWidget(lab , iii,iii,0,1);
275 ++iii;
276
277 mRemoteIPEdit = new QLineEdit(topFrame);
278 lab = new QLabel(mRemoteIPEdit, i18n("Remote IP:"), topFrame);
279 topLayout->addWidget(lab ,iii,0);
280 topLayout->addWidget(mRemoteIPEdit,iii,1);
281 ++iii;
282 mRemoteUser = new QLineEdit(topFrame);
283 lab = new QLabel(mRemoteUser, i18n("Remote user:"), topFrame);
284 topLayout->addWidget(lab ,iii,0);
285 topLayout->addWidget(mRemoteUser, iii,1);
286 ++iii;
287
288 mRemoteFile = new QLineEdit(topFrame);
289 lab = new QLabel(mRemoteFile, i18n("Remote file:"), topFrame);
290 topLayout->addWidget(lab ,iii,0);
291 topLayout->addWidget(mRemoteFile,iii,1);
292 ++iii;
293
294 mLocalTempFile = new QLineEdit(topFrame);
295 lab = new QLabel(mLocalTempFile, i18n("Local temp file:"), topFrame);
296 topLayout->addWidget(lab ,iii,0);
297 topLayout->addWidget(mLocalTempFile,iii,1);
298 ++iii;
299
300 KPrefsWidBool *wb =
301 addWidBool(i18n("Write back synced file"),
302 &(KOPrefs::instance()->mWriteBackFile),topFrame);
303 topLayout->addMultiCellWidget(wb->checkBox(), iii,iii,0,1);
304 ++iii;
305 wb =
306 addWidBool(i18n("Write back existing entries only"),
307 &(KOPrefs::instance()->mWriteBackExistingOnly),topFrame);
308 topLayout->addMultiCellWidget(wb->checkBox(), iii,iii,0,1);
309 ++iii;
310
311#endif
312}
313
314void KOPrefsDialog::setupMainTab()
315{
316 QFrame *topFrame = addPage(i18n("General"),0,0);
317 // DesktopIcon("identity",KIcon::SizeMedium));
318
319 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
320 topLayout->setSpacing(spacingHint());
321 topLayout->setMargin(marginHint());
322
323 // KPrefsWidBool *emailControlCenter =
324// addWidBool(i18n("&Use email settings from Control Center"),
325// &(KOPrefs::instance()->mEmailControlCenter),topFrame);
326// topLayout->addMultiCellWidget(emailControlCenter->checkBox(),0,0,0,1);
327 // connect(emailControlCenter->checkBox(),SIGNAL(toggled(bool)),
328 // SLOT(toggleEmailSettings(bool)));
329
330 mNameEdit = new QLineEdit(topFrame);
331 mNameLabel = new QLabel(mNameEdit, i18n("Full &name:"), topFrame);
332 topLayout->addWidget(mNameLabel,0,0);
333 topLayout->addWidget(mNameEdit,0,1);
334
335 mEmailEdit = new QLineEdit(topFrame);
336 mEmailLabel = new QLabel(mEmailEdit, i18n("E&mail address:"),topFrame);
337 topLayout->addWidget(mEmailLabel,1,0);
338 topLayout->addWidget(mEmailEdit,1,1);
339 KPrefsWidBool *wb;
340 QHBox *dummy;
341 if ( QApplication::desktop()->width() > 480 ) {
342 dummy = new QHBox(topFrame);
343 } else {
344 dummy = new QVBox(topFrame);
345 }
346
347 topLayout->addMultiCellWidget(dummy, 2,2,0,1);
348 addWidBool(i18n("Full menu bar(nr)"),
349 &(KOPrefs::instance()->mShowFullMenu),dummy);
350
351
352 addWidBool(i18n("Mini icons in toolbar(nr)"),
353 &(KOPrefs::instance()->mToolBarMiniIcons),dummy);
354
355
356 dummy = new QHBox(topFrame);
357 new QLabel(i18n("Days in What's Next:"),dummy);
358 mWhatsNextSpin = new QSpinBox(1,14,1,dummy);
359
360 topLayout->addMultiCellWidget(dummy,3,3,0,1);
361
362
363
364 dummy = new QHBox(topFrame);
365 new QLabel(i18n("Days in Next-X-Days:"),dummy);
366 mNextXDaysSpin = new QSpinBox(2,14,1,dummy);
367
368 topLayout->addMultiCellWidget(dummy,4,4,0,1);
369
370 QHBox *prioBox = new QHBox(topFrame);
371 // intervalBox->setSpacing(spacingHint());
372 topLayout->addMultiCellWidget(prioBox,5,5,0,1);
373 QString messa = i18n("Show topmost todo prios in What's Next:");
374
375 if ( QApplication::desktop()->width() < 300 )
376 messa = i18n("Show topmost todo prios in What's N.:");
377 QLabel *prioLabel = new QLabel(messa, prioBox);
378 mPrioSpin = new QSpinBox(0,5,1,prioBox);
379 if ( QApplication::desktop()->width() < 300 )
380 mPrioSpin->setFixedWidth( 40 );
381
382 // KPrefsWidBool *bcc =
383// addWidBool(i18n("Send copy to owner when mailing events"),
384// &(KOPrefs::instance()->mBcc),topFrame);
385// topLayout->addMultiCellWidget(bcc->checkBox(),4,4,0,1);
386
387
388 // QGroupBox *autoSaveGroup = new QGroupBox(1,Horizontal,i18n("Auto-Save"), topFrame);
389 //topLayout->addMultiCellWidget(autoSaveGroup,6,6,0,1);
390
391 // addWidBool(i18n("Enable automatic saving of calendar"),
392 // &(KOPrefs::instance()->mAutoSave),autoSaveGroup);
393
394 QHBox *intervalBox = new QHBox(topFrame);
395 // intervalBox->setSpacing(spacingHint());
396 topLayout->addMultiCellWidget(intervalBox,6,6,0,1);
397 QLabel *autoSaveIntervalLabel = new QLabel(i18n("Auto save delay in minutes:"),intervalBox);
398 mAutoSaveIntervalSpin = new QSpinBox(0,500,1,intervalBox);
399 autoSaveIntervalLabel->setBuddy(mAutoSaveIntervalSpin);
400 /*
401 QHBox * agendasize = new QHBox ( topFrame );
402
403 new QLabel (i18n("AllDayAgenda Height:"), agendasize );
404
405
406 mHourSizeSlider = new QSlider(24,47,1,24,Horizontal,agendasize);
407 topLayout->addMultiCellWidget(agendasize,7,7,0,1);
408 */
409 KPrefsWidBool *verticalScreen =
410 addWidBool(i18n("Show vertical screen (Needs restart)"),
411 &(KOPrefs::instance()->mVerticalScreen),topFrame);
412 //topLayout->addWidget(verticalScreen->checkBox(),ii++,0);
413 topLayout->addMultiCellWidget(verticalScreen->checkBox(),7,7,0,1);
414
415 KPrefsWidBool *ask =
416 addWidBool(i18n("Ask for quit when closing KO/Pi"),
417 &(KOPrefs::instance()->mAskForQuit),topFrame);
418 topLayout->addMultiCellWidget(ask->checkBox(),8,8,0,1);
419
420
421 /*
422 KPrefsWidBool *confirmCheck =
423 addWidBool(i18n("Confirm &deletes"),&(KOPrefs::instance()->mConfirm),
424 topFrame);
425 topLayout->addMultiCellWidget(confirmCheck->checkBox(),7,7,0,1);
426
427
428 mEnableGroupScheduling =
429 addWidBool(i18n("Enable group scheduling"),
430 &(KOPrefs::instance()->mEnableGroupScheduling),topFrame);
431 topLayout->addWidget(mEnableGroupScheduling->checkBox(),8,0);
432 connect(mEnableGroupScheduling->checkBox(),SIGNAL(clicked()),
433 SLOT(warningGroupScheduling()));
434
435 mEnableProjectView =
436 addWidBool(i18n("Enable project view"),
437 &(KOPrefs::instance()->mEnableProjectView),topFrame);
438 topLayout->addWidget(mEnableProjectView->checkBox(),9,0);
439 connect(mEnableProjectView->checkBox(),SIGNAL(clicked()),
440 SLOT(warningProjectView()));
441
442 // Can't be disabled anymore
443 mEnableGroupScheduling->checkBox()->hide();
444
445 // Disable setting, because this feature now becomes stable
446 mEnableProjectView->checkBox()->hide();
447
448 KPrefsWidRadios *defaultFormatGroup =
449 addWidRadios(i18n("Default Calendar Format"),
450 &(KOPrefs::instance()->mDefaultFormat),topFrame);
451 defaultFormatGroup->addRadio(i18n("vCalendar"));
452 defaultFormatGroup->addRadio(i18n("iCalendar"));
453
454 topLayout->addMultiCellWidget(defaultFormatGroup->groupBox(),10,10,0,1);
455
456 // Default format unconditionally is iCalendar
457 defaultFormatGroup->groupBox()->hide();
458
459 KPrefsWidRadios *mailClientGroup =
460 addWidRadios(i18n("Mail Client"),&(KOPrefs::instance()->mMailClient),
461 topFrame);
462 mailClientGroup->addRadio(i18n("KMail"));
463 mailClientGroup->addRadio(i18n("Sendmail"));
464 topLayout->addMultiCellWidget(mailClientGroup->groupBox(),11,11,0,1);
465
466 KPrefsWidBool *htmlsave =
467 addWidBool(i18n("Export to HTML with every save"),&(KOPrefs::instance()->mHtmlWithSave),
468 topFrame);
469 topLayout->addMultiCellWidget(htmlsave->checkBox(),12,12,0,1);
470
471 KPrefsWidRadios *destinationGroup =
472 addWidRadios(i18n("New Events/Todos should"),&(KOPrefs::instance()->mDestination),
473 topFrame);
474 destinationGroup->addRadio(i18n("be added to the standard resource"));
475 destinationGroup->addRadio(i18n("be asked which resource to use"));
476 topLayout->addMultiCellWidget(destinationGroup->groupBox(),13,13,0,1);
477
478 topLayout->setRowStretch(14,1);
479 */
480}
481
482
483void KOPrefsDialog::setupTimeTab()
484{
485 QFrame *topFrame = addPage(i18n("Time"),0,0);
486 // DesktopIcon("clock",KIcon::SizeMedium));
487
488 QGridLayout *topLayout = new QGridLayout(topFrame,4,2);
489 topLayout->setSpacing(spacingHint());
490 topLayout->setMargin(marginHint());
491
492 QHBox *dummy = new QHBox(topFrame);
493 KPrefsWidTime *dayBegins =
494 addWidTime(i18n("Day begins at:"),&(KOPrefs::instance()->mDayBegins),
495 dummy);
496 //topLayout->addWidget(dayBegins->label(),2,0);
497
498 //topLayout->addWidget(dayBegins->spinBox(),2,1);
499 topLayout->addMultiCellWidget(dummy,0,0,0,1);
500
501 topLayout->addWidget(new QLabel(i18n("Default appointment time:"),
502 topFrame),1,0);
503 mStartTimeSpin = new QSpinBox(0,23,1,topFrame);
504 mStartTimeSpin->setSuffix(":00");
505 topLayout->addWidget(mStartTimeSpin,1,1);
506
507 topLayout->addWidget(new QLabel(i18n("Def. duration of new app.:"),
508 topFrame),2,0);
509 mDefaultDurationSpin = new QSpinBox(0,23,1,topFrame);
510 mDefaultDurationSpin->setSuffix(":00");
511 topLayout->addWidget(mDefaultDurationSpin,2,1);
512
513 QStringList alarmList;
514 alarmList << i18n("1 minute") << i18n("5 minutes") << i18n("10 minutes")
515 << i18n("15 minutes") << i18n("30 minutes")<< i18n("1 hour")<< i18n("3 hours") << i18n("24 hours") ;
516 topLayout->addWidget(new QLabel(i18n("Default alarm time:"),topFrame),
517 3,0);
518 mAlarmTimeCombo = new QComboBox(topFrame);
519 mAlarmTimeCombo->insertStringList(alarmList);
520 topLayout->addWidget(mAlarmTimeCombo,3,1);
521
522
523 QGroupBox *workingHoursGroup = new QGroupBox(1,Horizontal,
524 i18n("Working Hours"),
525 topFrame);
526 topLayout->addMultiCellWidget(workingHoursGroup,4,4,0,1);
527 workingHoursGroup->layout()->setSpacing( 0 );
528 workingHoursGroup->layout()->setMargin( 4 );
529 QHBox *workStartBox = new QHBox(workingHoursGroup);
530 // workStartBox->setMargin( 0 );
531 addWidTime(i18n("Daily starting hour:"),
532 &(KOPrefs::instance()->mWorkingHoursStart),workStartBox);
533
534 QHBox *workEndBox = new QHBox(workingHoursGroup);
535 //workEndBox->setMargin( 0 );
536 addWidTime(i18n("Daily ending hour:"),
537 &(KOPrefs::instance()->mWorkingHoursEnd),workEndBox);
538 QVBox *excludeBox = new QVBox(workingHoursGroup);
539 //excludeBox->setMargin( 0 );
540 addWidBool(i18n("Exclude holidays"),
541 &(KOPrefs::instance()->mExcludeHolidays),excludeBox);
542
543 addWidBool(i18n("Exclude Saturdays"),
544 &(KOPrefs::instance()->mExcludeSaturdays),excludeBox);
545
546// KPrefsWidBool *marcusBainsShowSeconds = addWidBool(i18n("Show seconds on Marcus Bains line"),
547 // &(KOPrefs::instance()->mMarcusBainsShowSeconds),
548 // topFrame);
549// topLayout->addWidget(marcusBainsShowSeconds->checkBox(),5,0);
550
551 // topLayout->setRowStretch(6,1);
552}
553
554
555void KOPrefsDialog::setupViewsTab()
556{
557
558 QFrame *topFrame = addPage(i18n("Views"),0,0);
559 // DesktopIcon("viewmag",KIcon::SizeMedium));
560
561 QGridLayout *topLayout = new QGridLayout(topFrame,6,1);
562 topLayout->setSpacing(spacingHint());
563 topLayout->setMargin(marginHint());
564
565// QBoxLayout *dayBeginsLayout = new QHBoxLayout;
566// topLayout->addLayout(dayBeginsLayout,0,0);
567
568// KPrefsWidTime *dayBegins =
569// addWidTime(i18n("Day begins at:"),&(KOPrefs::instance()->mDayBegins),
570// topFrame);
571// dayBeginsLayout->addWidget(dayBegins->label());
572// dayBeginsLayout->addStretch(1);
573// dayBeginsLayout->addWidget(dayBegins->spinBox());
574
575// QBoxLayout *nextDaysLayout = new QHBoxLayout;
576// topLayout->addLayout(nextDaysLayout,1,0);
577// nextDaysLayout->addWidget(new QLabel(i18n("Days to show in Next-X-Days view:"),topFrame));
578// mNextXDaysSpin = new QSpinBox(2,14,1,topFrame);
579// nextDaysLayout->addStretch(1);
580// nextDaysLayout->addWidget(mNextXDaysSpin);
581
582
583 int ii = 0;
584 KPrefsWidBool *dummy =
585 addWidBool(i18n("Edit item on doubleclick (if not, show)"),
586 &(KOPrefs::instance()->mEditOnDoubleClick),topFrame);
587 topLayout->addWidget(dummy->checkBox(),ii++,0);
588
589 dummy =
590 addWidBool(i18n("Highlight current day in agenda"),
591 &(KOPrefs::instance()->mHighlightCurrentDay),topFrame);
592 topLayout->addWidget(dummy->checkBox(),ii++,0);
593
594 dummy =
595 addWidBool(i18n("Use light color for highlight current day"),
596 &(KOPrefs::instance()->mUseHighlightLightColor),topFrame);
597 topLayout->addWidget(dummy->checkBox(),ii++,0);
598
599 KPrefsWidBool *dailyRecur =
600 addWidBool(i18n("Show events that recur daily in date nav."),
601 &(KOPrefs::instance()->mDailyRecur),topFrame);
602 topLayout->addWidget(dailyRecur->checkBox(),ii++,0);
603
604 KPrefsWidBool *weeklyRecur =
605 addWidBool(i18n("Show ev. that recur weekly in date nav."),
606 &(KOPrefs::instance()->mWeeklyRecur),topFrame);
607 topLayout->addWidget(weeklyRecur->checkBox(),ii++,0);
608 if ( QApplication::desktop()->width() > 640 ) {
609
610 KPrefsWidBool *enableToolTips =
611 addWidBool(i18n("Enable tooltips displaying summary of ev."),
612 &(KOPrefs::instance()->mEnableToolTips),topFrame);
613 topLayout->addWidget(enableToolTips->checkBox(),ii++,0);
614
615 }
616 KPrefsWidBool *passwdk =
617 addWidBool(i18n("Show parent To-Do's in What's Next view"),
618 &(KOPrefs::instance()->mWNViewShowsParents),topFrame);
619 topLayout->addWidget(passwdk->checkBox(), ii++,0);
620
621 passwdk =
622 addWidBool(i18n("Show location in What's Next view"),
623 &(KOPrefs::instance()->mWNViewShowLocation),topFrame);
624 topLayout->addWidget(passwdk->checkBox(), ii++,0);
625
626 passwdk =
627 addWidBool(i18n("Show Sync Events in WN/Agenda view"),
628 &(KOPrefs::instance()->mShowSyncEvents),topFrame);
629 topLayout->addWidget(passwdk->checkBox(), ii++,0);
630
631
632 KPrefsWidBool *marcusBainsEnabled =
633 addWidBool(i18n("Show Marcus Bains line"),
634 &(KOPrefs::instance()->mMarcusBainsEnabled),topFrame);
635 topLayout->addWidget(marcusBainsEnabled->checkBox(),ii++,0);
636
637
638 // topLayout->addWidget(hourSizeGroup,ii++,0);
639 // topLayout->addMultiCellWidget(hourSizeGroup,ii,ii,0,0);
640 //topLayout->setRowStretch(11,1);
641
642
643
644
645
646
647 topFrame = addPage(i18n("ViewChange"),0,0);
648 // DesktopIcon("viewmag",KIcon::SizeMedium));
649
650 topLayout = new QGridLayout(topFrame,6,1);
651 topLayout->setSpacing(spacingHint());
652 topLayout->setMargin(marginHint());
653 ii = 0;
654
655
656 dummy =
657 addWidBool(i18n("Hold fullscreen on view change"),
658 &(KOPrefs::instance()->mViewChangeHoldFullscreen),topFrame);
659 topLayout->addWidget(dummy->checkBox(),ii++,0);
660
661 dummy =
662 addWidBool(i18n("Hold non-fullscreen on view change"),
663 &(KOPrefs::instance()->mViewChangeHoldNonFullscreen),topFrame);
664 topLayout->addWidget(dummy->checkBox(),ii++,0);
665
666
667 KPrefsWidBool *fullViewTodo =
668 addWidBool(i18n("Event list view uses full window"),
669 &(KOPrefs::instance()->mFullViewTodo),topFrame);
670 topLayout->addWidget(fullViewTodo->checkBox(),ii++,0);
671
672 KPrefsWidBool *fullViewMonth =
673 addWidBool(i18n("Next days view uses full window"),
674 &(KOPrefs::instance()->mFullViewMonth),topFrame);
675 topLayout->addWidget(fullViewMonth->checkBox(),ii++,0);
676
677 dummy =
678 addWidBool(i18n("Set agenda to DayBeginsAt on change"),
679 &(KOPrefs::instance()->mSetTimeToDayStartAt),topFrame);
680 topLayout->addWidget(dummy->checkBox(),ii++,0);
681
682 dummy =
683 addWidBool(i18n("Set agenda to current time on change"),
684 &(KOPrefs::instance()->mCenterOnCurrentTime),topFrame);
685 topLayout->addWidget(dummy->checkBox(),ii++,0);
686
687 dummy =
688 addWidBool(i18n("Listview uses monthly timespan"),
689 &(KOPrefs::instance()->mListViewMonthTimespan),topFrame);
690 topLayout->addWidget(dummy->checkBox(),ii++,0);
691 dummy =
692 addWidBool(i18n("Highlight selection in Time Edit"),
693 &(KOPrefs::instance()->mHightlightDateTimeEdit),topFrame);
694 topLayout->addWidget( dummy->checkBox(), ii++,0);
695
696
697
698
699
700 topFrame = addPage(i18n("Month View"),0,0);
701 // DesktopIcon("viewmag",KIcon::SizeMedium));
702
703 topLayout = new QGridLayout(topFrame,5,1);
704 topLayout->setSpacing(spacingHint());
705 topLayout->setMargin(marginHint());
706 ii = 0;
707 QLabel *lab;
708 QHBox *habo = new QHBox( topFrame );
709 if ( QApplication::desktop()->width() < 320 ) {
710 lab = new QLabel ( i18n("Show events that recur "), topFrame );
711 topLayout->addMultiCellWidget(lab,ii, ii,0,1);
712 ii++;
713
714 } else {
715 new QLabel ( i18n("Show events that recur "), habo );
716
717 }
718 dailyRecur =
719 addWidBool(i18n("daily"),
720 &(KOPrefs::instance()->mMonthDailyRecur),habo);
721 // topLayout->addWidget(dailyRecur->checkBox(),ii++,0);
722
723 weeklyRecur =
724 addWidBool(i18n("weekly"),
725 &(KOPrefs::instance()->mMonthWeeklyRecur),habo);
726 topLayout->addMultiCellWidget(habo,ii, ii,0,1);
727 ii++;
728
729
730 habo = new QHBox( topFrame );
731 if ( QApplication::desktop()->width() < 320 ) {
732 lab = new QLabel (i18n("Show in every cell ") , topFrame );
733 topLayout->addMultiCellWidget(lab,ii, ii,0,1);
734 ii++;
735
736 } else {
737 new QLabel ( i18n("Show in every cell "), habo );
738 }
739 weeklyRecur =
740 addWidBool(i18n("short month"),
741 &(KOPrefs::instance()->mMonthShowShort),habo);
742 weeklyRecur =
743 addWidBool(i18n("icons"),
744 &(KOPrefs::instance()->mMonthShowIcons),habo);
745
746 topLayout->addMultiCellWidget(habo,ii, ii,0,1);
747 ii++;
748#ifdef DESKTOP_VERSION
749 KPrefsWidBool *enableMonthScroll =
750 addWidBool(i18n("Enable scrollbars in month view cells"),
751 &(KOPrefs::instance()->mEnableMonthScroll),topFrame);
752 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0);
753#endif
754
755 dummy =
756 addWidBool(i18n("Show Sat/Sun together"),
757 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame);
758 topLayout->addWidget(dummy->checkBox(),ii++,0);
759
760 KPrefsWidBool *coloredCategoriesInMonthView =
761 addWidBool(i18n("Month view uses category colors"),
762 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame);
763 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
764
765 dummy =
766 addWidBool(i18n("Categorie colors are applied to text"),
767 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame);
768 topLayout->addWidget(dummy->checkBox(),ii++,0);
769 coloredCategoriesInMonthView =
770 addWidBool(i18n("Month view uses day colors"),
771 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame);
772 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
773
774 KPrefsWidColor *holidayColor =
775 addWidColor(i18n("Day color odd months"),
776 &(KOPrefs::instance()->mMonthViewOddColor),topFrame);
777 topLayout->addWidget(holidayColor->label(),ii,0);
778 topLayout->addWidget(holidayColor->button(),ii++,1);
779
780 holidayColor =
781 addWidColor(i18n("Day color even months"),
782 &(KOPrefs::instance()->mMonthViewEvenColor),topFrame);
783 topLayout->addWidget(holidayColor->label(),ii,0);
784 topLayout->addWidget(holidayColor->button(),ii++,1);
785
786
787 holidayColor =
788 addWidColor(i18n("Color for Sundays + category \"Holiday\""),
789 &(KOPrefs::instance()->mMonthViewHolidayColor),topFrame);
790 topLayout->addWidget(holidayColor->label(),ii,0);
791 topLayout->addWidget(holidayColor->button(),ii++,1);
792
793 // *********************** Todo View
794
795 topFrame = addPage(i18n("Todo View"),0,0);
796 // DesktopIcon("viewmag",KIcon::SizeMedium));
797
798 topLayout = new QGridLayout(topFrame,4,1);
799 topLayout->setSpacing(spacingHint());
800 topLayout->setMargin(marginHint());
801 ii = 0;
802
803 KPrefsWidBool *showCompletedTodo =
804 addWidBool(i18n("To-do view shows completed Todos"),
805 &(KOPrefs::instance()->mShowCompletedTodo),topFrame);
806 topLayout->addWidget(showCompletedTodo->checkBox(),ii++,0);
807 dummy =
808 addWidBool(i18n("To-do view shows complete as 'xx %'"),
809 &(KOPrefs::instance()->mTodoViewShowsPercentage),topFrame);
810 topLayout->addWidget(dummy->checkBox(),ii++,0);
811
812 dummy =
813 addWidBool(i18n("Small To-do view uses smaller font"),
814 &(KOPrefs::instance()->mTodoViewUsesSmallFont),topFrame);
815 topLayout->addWidget(dummy->checkBox(),ii++,0);
816
817
818
819 dummy =
820 addWidBool(i18n("Todo view uses category colors"),
821 &(KOPrefs::instance()->mTodoViewUsesCatColors),topFrame);
822 topLayout->addWidget(dummy->checkBox(),ii++,0);
823
824
825 QWidget* wid = new QWidget( topFrame );
826 // Todo due today color
827 KPrefsWidColor *todoDueTodayColor =
828 addWidColor(i18n("Todo due today color:"),
829 &(KOPrefs::instance()->mTodoDueTodayColor),wid);
830 QHBoxLayout *widLayout = new QHBoxLayout(wid);
831 widLayout->addWidget( todoDueTodayColor->label() );
832 widLayout->addWidget( todoDueTodayColor->button() );
833 topLayout->addWidget(wid,ii++,0);
834 //topLayout->addWidget(todoDueTodayColor->button(),ii++,1);
835
836 // Todo overdue color
837 wid = new QWidget( topFrame );
838 widLayout = new QHBoxLayout(wid);
839 KPrefsWidColor *todoOverdueColor =
840 addWidColor(i18n("Todo overdue color:"),
841 &(KOPrefs::instance()->mTodoOverdueColor),wid);
842 widLayout->addWidget(todoOverdueColor->label());
843 widLayout->addWidget(todoOverdueColor->button());
844 topLayout->addWidget(wid,ii++,0);
845
846 dummy =
847 addWidBool(i18n("Colors are applied to text"),
848 &(KOPrefs::instance()->mTodoViewUsesForegroundColor),topFrame);
849 topLayout->addWidget(dummy->checkBox(),ii++,0);
850
851 dummy =
852 addWidBool(i18n("Allday Agenda view shows todos"),
853 &(KOPrefs::instance()->mShowTodoInAgenda),topFrame);
854 topLayout->addWidget(dummy->checkBox(),ii++,0);
855
856
857
858
859 topFrame = addPage(i18n("Alarm"),0,0);
860 // DesktopIcon("viewmag",KIcon::SizeMedium));
861
862 topLayout = new QGridLayout(topFrame,2,1);
863 topLayout->setSpacing(spacingHint());
864 topLayout->setMargin(marginHint());
865 int iii = 0;
866
867 dummy =
868 addWidBool(i18n("Use internal alarm notification"),
869 &(KOPrefs::instance()->mUseInternalAlarmNotification),topFrame);
870 topLayout->addWidget(dummy->checkBox(),iii++,0);
871 lab = new QLabel( i18n("Note: KO/Pi must be running to notify you about an alarm. Recommended for use on Zaurus: Disable this option and install KO/Pi alarm applet.\n"), topFrame);
872
873 topLayout->addWidget(lab ,iii++,0);
874#ifndef DESKTOP_VERSION
875 lab->setAlignment( AlignLeft|WordBreak|AlignTop);
876#else
877 lab->setAlignment( AlignLeft|BreakAnywhere|WordBreak|AlignTop);
878 lab->setSizePolicy( QSizePolicy( QSizePolicy::Ignored , QSizePolicy::Ignored,true) );
879#endif
880
881 QHBox* dummyBox = new QHBox(topFrame);
882 new QLabel(i18n("Play beeps count:"),dummyBox);
883 mAlarmPlayBeeps = new QSpinBox(0,500,1,dummyBox);
884 topLayout->addWidget(dummyBox,iii++,0);
885
886 dummyBox = new QHBox(topFrame);
887 new QLabel(i18n("Beeps interval in sec:"),dummyBox);
888 mAlarmBeepInterval = new QSpinBox(1,600,1,dummyBox);
889 topLayout->addWidget(dummyBox,iii++,0);
890
891 dummyBox = new QHBox(topFrame);
892 new QLabel(i18n("Default suspend time in min:"),dummyBox);
893 mAlarmSuspendTime = new QSpinBox(1,600,1,dummyBox);
894 topLayout->addWidget(dummyBox,iii++,0);
895
896 dummyBox = new QHBox(topFrame);
897 new QLabel(i18n("Auto suspend count:"),dummyBox);
898 mAlarmSuspendCount = new QSpinBox(0,60,1,dummyBox);
899 topLayout->addWidget(dummyBox,iii++,0);
900
901
902
903
904
905
906
907 QHBox* hbo = new QHBox ( topFrame );
908 mDefaultAlarmFile = new QLineEdit(hbo);
909 QPushButton * loadTemplate = new QPushButton(hbo);
910 QPixmap icon;
911 if ( QApplication::desktop()->width() < 321 )
912 icon = SmallIcon("fileimport16");
913 else
914 icon = SmallIcon("fileimport");
915 loadTemplate->setIconSet (icon ) ;
916 connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( selectSoundFile() ) );
917 int size = loadTemplate->sizeHint().height();
918 loadTemplate->setFixedSize( size, size );
919 //lab = new QLabel( i18n("This setting is useless for 5500 user!"), topFrame);
920 // topLayout->addWidget(lab ,iii++,0);
921 lab = new QLabel( i18n("Alarm *.wav file for newly created alarm:"), topFrame);
922 topLayout->addWidget(lab ,iii++,0);
923 topLayout->addWidget(hbo,iii++,0);
924 // lab = new QLabel( i18n("Note: This does not mean, that for every alarm this file is replayed. This file here is associated with a newly created alarm."), topFrame);
925
926// topLayout->addWidget(lab ,iii++,0);
927// #ifndef DESKTOP_VERSION
928// lab->setAlignment( AlignLeft|WordBreak|AlignTop);
929// #else
930// lab->setAlignment( AlignLeft|BreakAnywhere|WordBreak|AlignTop);
931// lab->setSizePolicy( QSizePolicy( QSizePolicy::Ignored , QSizePolicy::Ignored,true) );
932// #endif
933
934
935}
936
937void KOPrefsDialog::selectSoundFile()
938{
939 QString fileName = mDefaultAlarmFile->text();
940 fileName = KFileDialog::getSaveFileName( mDefaultAlarmFile->text() , "Choose default alarm file", this );
941 if ( fileName.length() > 0 )
942 mDefaultAlarmFile->setText( fileName );
943}
944void KOPrefsDialog::setupFontsTab()
945{
946
947 QFrame *topFrame = addPage(i18n("Fonts"),0,0);
948 // DesktopIcon("fonts",KIcon::SizeMedium));
949
950 QGridLayout *topLayout = new QGridLayout(topFrame,7,3);
951 topLayout->setSpacing(1);
952 topLayout->setMargin(3);
953 KPrefsWidFont * tVFont;
954 int i = 0;
955 KPrefsWidFont *timeLabelsFont =
956 addWidFont(i18n("23"),i18n("DateNavigator:(nr)"),
957 &(KOPrefs::instance()->mDateNavigatorFont),topFrame);
958 topLayout->addWidget(timeLabelsFont->label(),i,0);
959 topLayout->addWidget(timeLabelsFont->preview(),i,1);
960 topLayout->addWidget(timeLabelsFont->button(),i,2);
961 ++i;
962
963
964 timeLabelsFont =
965 addWidFont(i18n("Mon 15"),i18n("Date Labels:"),
966 &(KOPrefs::instance()->mTimeLabelsFont),topFrame);
967 topLayout->addWidget(timeLabelsFont->label(),i,0);
968 topLayout->addWidget(timeLabelsFont->preview(),i,1);
969 topLayout->addWidget(timeLabelsFont->button(),i,2);
970 ++i;
971
972 KPrefsWidFont *timeBarFont =
973 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)),i18n("Time bar:"),
974 &(KOPrefs::instance()->mTimeBarFont),topFrame);
975 topLayout->addWidget(timeBarFont->label(),i,0);
976 topLayout->addWidget(timeBarFont->preview(),i,1);
977 topLayout->addWidget(timeBarFont->button(),i,2);
978 ++i;
979
980
981 KPrefsWidFont *marcusBainsFont =
982 addWidFont(KGlobal::locale()->formatTime(QTime(12,34,23)),i18n("M. Bains line:"),
983 &(KOPrefs::instance()->mMarcusBainsFont),topFrame);
984 topLayout->addWidget(marcusBainsFont->label(),i,0);
985 topLayout->addWidget(marcusBainsFont->preview(),i,1);
986 topLayout->addWidget(marcusBainsFont->button(),i,2);
987 ++i;
988
989 tVFont =
990 addWidFont(i18n("Summary"),i18n("Event Viewer:"),
991 &(KOPrefs::instance()->mEventViewFont),topFrame);
992 topLayout->addWidget(tVFont->label(),i,0);
993 topLayout->addWidget(tVFont->preview(),i,1);
994 topLayout->addWidget(tVFont->button(),i,2);
995 ++i;
996
997
998
999 tVFont =
1000 addWidFont(i18n("Details"),i18n("EditorBox:"),
1001 &(KOPrefs::instance()->mEditBoxFont),topFrame);
1002 topLayout->addWidget(tVFont->label(),i,0);
1003 topLayout->addWidget(tVFont->preview(),i,1);
1004 topLayout->addWidget(tVFont->button(),i,2);
1005 ++i;
1006
1007
1008
1009 topLayout->setColStretch(1,1);
1010 topLayout->setRowStretch(4,1);
1011
1012
1013 i = 0;
1014 topFrame = addPage(i18n("View Fonts"),0,
1015 DesktopIcon("fonts",KIcon::SizeMedium));
1016
1017 topLayout = new QGridLayout(topFrame,7,3);
1018 topLayout->setSpacing(1);
1019 topLayout->setMargin(3);
1020
1021 tVFont =
1022 addWidFont(i18n("Configure KO"),i18n("What's Next View:"),
1023 &(KOPrefs::instance()->mWhatsNextFont),topFrame);
1024 topLayout->addWidget(tVFont->label(),i,0);
1025 topLayout->addWidget(tVFont->preview(),i,1);
1026 topLayout->addWidget(tVFont->button(),i,2);
1027 ++i;
1028 KPrefsWidFont *agendaViewFont =
1029 addWidFont(i18n("Event text"),i18n("Agenda view:"),
1030 &(KOPrefs::instance()->mAgendaViewFont),topFrame);
1031 topLayout->addWidget(agendaViewFont->label(),i,0);
1032 topLayout->addWidget(agendaViewFont->preview(),i,1);
1033 topLayout->addWidget(agendaViewFont->button(),i,2);
1034 ++i;
1035
1036
1037 KPrefsWidFont *monthViewFont =
1038 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)) + " " + i18n("Event"),
1039 i18n("Month view:"),&(KOPrefs::instance()->mMonthViewFont),topFrame);
1040 topLayout->addWidget(monthViewFont->label(),i,0);
1041 topLayout->addWidget(monthViewFont->preview(),i,1);
1042 topLayout->addWidget(monthViewFont->button(),i,2);
1043 ++i;
1044
1045
1046 KPrefsWidFont *lVFont =
1047 addWidFont(i18n("Event"),i18n("List View:"),
1048 &(KOPrefs::instance()->mListViewFont),topFrame);
1049 topLayout->addWidget(lVFont->label(),i,0);
1050 topLayout->addWidget(lVFont->preview(),i,1);
1051 topLayout->addWidget(lVFont->button(),i,2);
1052 ++i;
1053
1054
1055 tVFont =
1056 addWidFont(i18n("ToDo"),i18n("ToDoView:"),
1057 &(KOPrefs::instance()->mTodoViewFont),topFrame);
1058 topLayout->addWidget(tVFont->label(),i,0);
1059 topLayout->addWidget(tVFont->preview(),i,1);
1060 topLayout->addWidget(tVFont->button(),i,2);
1061 ++i;
1062
1063
1064 tVFont =
1065 addWidFont(i18n("Today"),i18n("JournalView:"),
1066 &(KOPrefs::instance()->mJornalViewFont),topFrame);
1067 topLayout->addWidget(tVFont->label(),i,0);
1068 topLayout->addWidget(tVFont->preview(),i,1);
1069 topLayout->addWidget(tVFont->button(),i,2);
1070 ++i;
1071
1072
1073
1074
1075 topLayout->setColStretch(1,1);
1076 topLayout->setRowStretch(4,1);
1077
1078
1079
1080
1081}
1082
1083void KOPrefsDialog::setupColorsTab()
1084{
1085 QFrame *topFrame = addPage(i18n("Colors"),0,0);
1086 // DesktopIcon("colorize",KIcon::SizeMedium));
1087
1088 QGridLayout *topLayout = new QGridLayout(topFrame,5,2);
1089 // topLayout->setSpacing(spacingHint());
1090 // topLayout->setMargin(marginHint());
1091
1092 topLayout->setSpacing(2);
1093 topLayout->setMargin(3);
1094
1095 int ii = 1;
1096 QGroupBox *categoryGroup ;
1097
1098 categoryGroup = new QGroupBox(1,Vertical,i18n("Categories"),
1099 topFrame);
1100 topLayout->addMultiCellWidget(categoryGroup,0,0,0,1);
1101
1102 mCategoryCombo = new QComboBox(categoryGroup);
1103 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories);
1104 connect(mCategoryCombo,SIGNAL(activated(int)),SLOT(updateCategoryColor()));
1105
1106 mCategoryButton = new KColorButton(categoryGroup);
1107 connect(mCategoryButton,SIGNAL(changed(const QColor &)),SLOT(setCategoryColor()));
1108 updateCategoryColor();
1109
1110
1111 // Holiday Color
1112
1113 KPrefsWidColor *holidayColor =
1114 addWidColor(i18n("Holiday color:"),
1115 &(KOPrefs::instance()->mHolidayColor),topFrame);
1116 topLayout->addWidget(holidayColor->label(),ii,0);
1117 topLayout->addWidget(holidayColor->button(),ii++,1);
1118
1119 // Highlight Color
1120 KPrefsWidColor *highlightColor =
1121 addWidColor(i18n("Highlight color:"),
1122 &(KOPrefs::instance()->mHighlightColor),topFrame);
1123 topLayout->addWidget(highlightColor->label(),ii,0);
1124 topLayout->addWidget(highlightColor->button(),ii++,1);
1125
1126 // Event color
1127 KPrefsWidColor *eventColor =
1128 addWidColor(i18n("Default event color:"),
1129 &(KOPrefs::instance()->mEventColor),topFrame);
1130 topLayout->addWidget(eventColor->label(),ii,0);
1131 topLayout->addWidget(eventColor->button(),ii++,1);
1132
1133 // agenda view background color
1134 KPrefsWidColor *agendaBgColor =
1135 addWidColor(i18n("Agenda view background color:"),
1136 &(KOPrefs::instance()->mAgendaBgColor),topFrame);
1137 topLayout->addWidget(agendaBgColor->label(),ii,0);
1138 topLayout->addWidget(agendaBgColor->button(),ii++,1);
1139
1140 // working hours color
1141 KPrefsWidColor *workingHoursColor =
1142 addWidColor(i18n("Working hours color:"),
1143 &(KOPrefs::instance()->mWorkingHoursColor),topFrame);
1144 topLayout->addWidget(workingHoursColor->label(),ii,0);
1145 topLayout->addWidget(workingHoursColor->button(),ii++,1);
1146
1147 KPrefsWidBool *sb =
1148 addWidBool(i18n("Use colors for application:"),
1149 &(KOPrefs::instance()->mUseAppColors),topFrame);
1150 topLayout->addMultiCellWidget(sb->checkBox(), ii, ii, 0,1 );
1151
1152 ii++;
1153 KPrefsWidColor * workingHoursColor1 =
1154 addWidColor(i18n("Buttons, menus, etc.:"),
1155 &(KOPrefs::instance()->mAppColor1),topFrame);
1156 topLayout->addWidget(workingHoursColor1->label(),ii,0);
1157 topLayout->addWidget(workingHoursColor1->button(),ii++,1);
1158
1159 KPrefsWidColor * workingHoursColor2 =
1160 addWidColor(i18n("Frames, labels, etc.:"),
1161 &(KOPrefs::instance()->mAppColor2),topFrame);
1162 topLayout->addWidget(workingHoursColor2->label(),ii,0);
1163 topLayout->addWidget(workingHoursColor2->button(),ii++,1);
1164
1165
1166
1167}
1168
1169void KOPrefsDialog::setCategoryColor()
1170{
1171 mCategoryDict.replace(mCategoryCombo->currentText(), new QColor(mCategoryButton->color()));
1172}
1173
1174void KOPrefsDialog::updateCategoryColor()
1175{
1176 QString cat = mCategoryCombo->currentText();
1177 QColor *color = mCategoryDict.find(cat);
1178 if (!color) {
1179 color = KOPrefs::instance()->categoryColor(cat);
1180 }
1181 if (color) {
1182 mCategoryButton->setColor(*color);
1183 }
1184}
1185
1186void KOPrefsDialog::setupPrinterTab()
1187{
1188 mPrinterTab = addPage(i18n("Printing"),0,
1189 DesktopIcon("fileprint",KIcon::SizeMedium));
1190
1191 QGridLayout *topLayout = new QGridLayout(mPrinterTab,5,2);
1192 topLayout->setSpacing(spacingHint());
1193 topLayout->setMargin(marginHint());
1194
1195 topLayout->setRowStretch(4,1);
1196}
1197
1198void KOPrefsDialog::setupGroupSchedulingTab()
1199{
1200#if 0
1201 QFrame *topFrame = addPage(i18n("Group Scheduling"),0,
1202 DesktopIcon("personal",KIcon::SizeMedium));
1203
1204 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
1205 topLayout->setSpacing(spacingHint());
1206 topLayout->setMargin(marginHint());
1207
1208#if 0
1209 KPrefsWidRadios *schedulerGroup =
1210 addWidRadios(i18n("Scheduler Mail Client"),&(KOPrefs::instance()->mIMIPScheduler),
1211 topFrame);
1212 schedulerGroup->addRadio("Dummy"); // Only for debugging
1213 schedulerGroup->addRadio(i18n("Mail client"));
1214
1215 topLayout->addMultiCellWidget(schedulerGroup->groupBox(),0,0,0,1);
1216#endif
1217
1218 KPrefsWidRadios *sendGroup =
1219 addWidRadios(i18n("Scheduler Mails Should Be"),&(KOPrefs::instance()->mIMIPSend),
1220 topFrame);
1221 sendGroup->addRadio(i18n("Send to outbox"));
1222 sendGroup->addRadio(i18n("Send directly"));
1223
1224 topLayout->addMultiCellWidget(sendGroup->groupBox(),1,1,0,1);
1225
1226 topLayout->addMultiCellWidget(new QLabel(i18n("Additional email addresses:"),topFrame),2,2,0,1);
1227 mAMails = new QListView(topFrame);
1228 mAMails->addColumn(i18n("Email"),300);
1229 topLayout->addMultiCellWidget(mAMails,3,3,0,1);
1230
1231 topLayout->addWidget(new QLabel(i18n("Additional email address:"),topFrame),4,0);
1232 aEmailsEdit = new QLineEdit(topFrame);
1233 aEmailsEdit->setEnabled(false);
1234 topLayout->addWidget(aEmailsEdit,4,1);
1235
1236 QPushButton *add = new QPushButton(i18n("New"),topFrame,"new");
1237 topLayout->addWidget(add,5,0);
1238 QPushButton *del = new QPushButton(i18n("Remove"),topFrame,"remove");
1239 topLayout->addWidget(del,5,1);
1240
1241 //topLayout->setRowStretch(2,1);
1242 connect(add, SIGNAL( clicked() ), this, SLOT(addItem()) );
1243 connect(del, SIGNAL( clicked() ), this, SLOT(removeItem()) );
1244 connect(aEmailsEdit,SIGNAL( textChanged(const QString&) ), this,SLOT(updateItem()));
1245 connect(mAMails,SIGNAL(selectionChanged(QListViewItem *)),SLOT(updateInput()));
1246#endif
1247}
1248
1249void KOPrefsDialog::setupGroupAutomationTab()
1250{
1251 return;
1252 QFrame *topFrame = addPage(i18n("Group Automation"),0,
1253 DesktopIcon("personal",KIcon::SizeMedium));
1254
1255 QGridLayout *topLayout = new QGridLayout(topFrame,5,1);
1256 topLayout->setSpacing(spacingHint());
1257 topLayout->setMargin(marginHint());
1258
1259 KPrefsWidRadios *autoRefreshGroup =
1260 addWidRadios(i18n("Auto Send Refresh"),
1261 &(KOPrefs::instance()->mIMIPAutoRefresh),topFrame);
1262 autoRefreshGroup->addRadio(i18n("Never"));
1263 autoRefreshGroup->addRadio(i18n("If attendee is in addressbook"));
1264 //autoRefreshGroup->addRadio(i18n("selected emails"));
1265 topLayout->addMultiCellWidget(autoRefreshGroup->groupBox(),0,0,0,0);
1266
1267 KPrefsWidRadios *autoInsertGroup =
1268 addWidRadios(i18n("Auto Insert IMIP Replies"),
1269 &(KOPrefs::instance()->mIMIPAutoInsertReply),topFrame);
1270 autoInsertGroup->addRadio(i18n("Never"));
1271 autoInsertGroup->addRadio(i18n("If attendee is in addressbook"));
1272 //autoInsertGroup->addRadio(i18n("selected emails"));
1273 topLayout->addMultiCellWidget(autoInsertGroup->groupBox(),1,1,0,0);
1274
1275 KPrefsWidRadios *autoRequestGroup =
1276 addWidRadios(i18n("Auto Insert IMIP Requests"),
1277 &(KOPrefs::instance()->mIMIPAutoInsertRequest),topFrame);
1278 autoRequestGroup->addRadio(i18n("Never"));
1279 autoRequestGroup->addRadio(i18n("If organizer is in addressbook"));
1280 //autoInsertGroup->addRadio(i18n("selected emails"));
1281 topLayout->addMultiCellWidget(autoRequestGroup->groupBox(),2,2,0,0);
1282
1283 KPrefsWidRadios *autoFreeBusyGroup =
1284 addWidRadios(i18n("Auto Send FreeBusy Information"),
1285 &(KOPrefs::instance()->mIMIPAutoFreeBusy),topFrame);
1286 autoFreeBusyGroup->addRadio(i18n("Never"));
1287 autoFreeBusyGroup->addRadio(i18n("If requested from an email in addressbook"));
1288 //autoFreeBusyGroup->addRadio(i18n("selected emails"));
1289 topLayout->addMultiCellWidget(autoFreeBusyGroup->groupBox(),3,3,0,0);
1290
1291 KPrefsWidRadios *autoFreeBusyReplyGroup =
1292 addWidRadios(i18n("Auto Save FreeBusy Replies"),
1293 &(KOPrefs::instance()->mIMIPAutoFreeBusyReply),topFrame);
1294 autoFreeBusyReplyGroup->addRadio(i18n("Never"));
1295 autoFreeBusyReplyGroup->addRadio(i18n("If attendee is in addressbook"));
1296 //autoFreeBusyGroup->addRadio(i18n("selected emails"));
1297 topLayout->addMultiCellWidget(autoFreeBusyReplyGroup->groupBox(),4,4,0,0);
1298}
1299
1300void KOPrefsDialog::showPrinterTab()
1301{
1302 showPage(pageIndex(mPrinterTab));
1303}
1304
1305
1306void KOPrefsDialog::setCombo(QComboBox *combo, const QString & text,
1307 const QStringList *tags)
1308{
1309 if (tags) {
1310 int i = tags->findIndex(text);
1311 if (i > 0) combo->setCurrentItem(i);
1312 } else {
1313 for(int i=0;i<combo->count();++i) {
1314 if (combo->text(i) == text) {
1315 combo->setCurrentItem(i);
1316 break;
1317 }
1318 }
1319 }
1320}
1321
1322void KOPrefsDialog::usrReadConfig()
1323{
1324 mNameEdit->setText(KOPrefs::instance()->fullName());
1325 mEmailEdit->setText(KOPrefs::instance()->email());
1326
1327 mAutoSaveIntervalSpin->setValue(KOPrefs::instance()->mAutoSaveInterval);
1328 QDate current ( 2001, 1,1);
1329 mStartDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingStart-1));
1330 mEndDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingEnd-1));
1331 setCombo(mTimeZoneCombo,i18n(KOPrefs::instance()->mTimeZoneId));
1332 //mTimezoneOffsetSpin->setValue( KOPrefs::instance()->mTimeZoneOffset);
1333 mStartTimeSpin->setValue(KOPrefs::instance()->mStartTime);
1334 mDefaultDurationSpin->setValue(KOPrefs::instance()->mDefaultDuration);
1335 mAlarmTimeCombo->setCurrentItem(KOPrefs::instance()->mAlarmTime);
1336 // if (KOPrefs::instance()->mAllDaySize > 47 )
1337 // KOPrefs::instance()->mAllDaySize = KOPrefs::instance()->mAllDaySize/2;
1338 //mHourSizeSlider->setValue(KOPrefs::instance()->mAllDaySize);
1339
1340 mNextXDaysSpin->setValue(KOPrefs::instance()->mNextXDays);
1341 mWhatsNextSpin->setValue(KOPrefs::instance()->mWhatsNextDays);
1342 mPrioSpin->setValue(KOPrefs::instance()->mWhatsNextPrios);
1343 // mAMails->clear();
1344 // for ( QStringList::Iterator it = KOPrefs::instance()->mAdditionalMails.begin();
1345// it != KOPrefs::instance()->mAdditionalMails.end(); ++it ) {
1346// QListViewItem *item = new QListViewItem(mAMails);
1347// item->setText(0,*it);
1348// mAMails->insertItem(item);
1349// }
1350
1351 // mRemoteIPEdit->setText(KOPrefs::instance()->mRemoteIP);
1352 //mRemoteUser->setText(KOPrefs::instance()->mRemoteUser);
1353 //mRemotePassWd->setText(KOPrefs::instance()->mRemotePassWd);
1354 //mRemoteFile->setText(KOPrefs::instance()->mRemoteFile);
1355
1356 //that soundmLocalTempFile->setText(KOPrefs::instance()->mLocalTempFile);
1357 mDefaultAlarmFile->setText(KOPrefs::instance()->mDefaultAlarmFile);
1358 QString dummy = KOPrefs::instance()->mUserDateFormatLong;
1359 mUserDateFormatLong->setText(dummy.replace( QRegExp("K"), QString(",") ));
1360 dummy = KOPrefs::instance()->mUserDateFormatShort;
1361 mUserDateFormatShort->setText(dummy.replace( QRegExp("K"), QString(",") ));
1362 updateCategories();
1363 mAlarmPlayBeeps->setValue(KOPrefs::instance()->mAlarmPlayBeeps );
1364 mAlarmSuspendTime->setValue(KOPrefs::instance()->mAlarmSuspendTime );
1365 mAlarmSuspendCount->setValue(KOPrefs::instance()->mAlarmSuspendCount );
1366 mAlarmBeepInterval->setValue(KOPrefs::instance()->mAlarmBeepInterval );
1367}
1368
1369
1370void KOPrefsDialog::usrWriteConfig()
1371{
1372
1373 // KOPrefs::instance()->mRemoteIP = mRemoteIPEdit->text();
1374 //KOPrefs::instance()->mRemoteUser = mRemoteUser->text();
1375 //KOPrefs::instance()->mRemotePassWd = mRemotePassWd->text();
1376 //KOPrefs::instance()->mRemoteFile= mRemoteFile->text();
1377 //KOPrefs::instance()->mLocalTempFile =mLocalTempFile->text();
1378 KOPrefs::instance()->mDefaultAlarmFile =mDefaultAlarmFile->text();
1379
1380 KOPrefs::instance()->mUserDateFormatShort = mUserDateFormatShort->text().replace( QRegExp(","), QString("K") );
1381 KOPrefs::instance()->mUserDateFormatLong = mUserDateFormatLong->text().replace( QRegExp(","), QString("K") );
1382 KOPrefs::instance()->setFullName(mNameEdit->text());
1383 KOPrefs::instance()->setEmail(mEmailEdit->text());
1384
1385 KOPrefs::instance()->mAutoSaveInterval = mAutoSaveIntervalSpin->value();
1386
1387 KOPrefs::instance()->mTimeZoneId = mTimeZoneCombo->currentText();
1388 QDate date;
1389 date = mStartDateSavingEdit->date();
1390 int sub = 0;
1391 if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 )
1392 sub = 1;
1393 KOPrefs::instance()->mDaylightsavingStart = date.dayOfYear()-sub;
1394 date = mEndDateSavingEdit->date();
1395 if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 )
1396 sub = 1;
1397 else
1398 sub = 0;
1399 KOPrefs::instance()->mDaylightsavingEnd = date.dayOfYear()-sub;
1400 // KOPrefs::instance()->mTimeZoneOffset = mTimezoneOffsetSpin->value();
1401
1402 KOPrefs::instance()->mStartTime = mStartTimeSpin->value();
1403 KOPrefs::instance()->mDefaultDuration = mDefaultDurationSpin->value();
1404 KOPrefs::instance()->mAlarmTime = mAlarmTimeCombo->currentItem();
1405
1406 //KOPrefs::instance()->mAllDaySize = mHourSizeSlider->value();
1407
1408 QDictIterator<QColor> it(mCategoryDict);
1409 while (it.current()) {
1410 KOPrefs::instance()->setCategoryColor(it.currentKey(),*it.current());
1411 ++it;
1412 }
1413
1414 KOPrefs::instance()->mNextXDays = mNextXDaysSpin->value();
1415 KOPrefs::instance()->mWhatsNextDays = mWhatsNextSpin->value();
1416 KOPrefs::instance()->mWhatsNextPrios = mPrioSpin->value();
1417
1418 KOPrefs::instance()->mAdditionalMails.clear();
1419 // QListViewItem *item;
1420 // item = mAMails->firstChild();
1421 // while (item)
1422 // {
1423 // KOPrefs::instance()->mAdditionalMails.append( item->text(0) );
1424 // item = item->nextSibling();
1425 // }
1426 KOPrefs::instance()->mAlarmPlayBeeps = mAlarmPlayBeeps->value();
1427 KOPrefs::instance()->mAlarmSuspendTime = mAlarmSuspendTime->value() ;
1428 KOPrefs::instance()->mAlarmSuspendCount= mAlarmSuspendCount->value() ;
1429 KOPrefs::instance()->mAlarmBeepInterval= mAlarmBeepInterval->value() ;
1430
1431}
1432
1433void KOPrefsDialog::updateCategories()
1434{
1435 mCategoryCombo->clear();
1436 mCategoryDict.clear();
1437 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories);
1438 updateCategoryColor();
1439}
1440
1441void KOPrefsDialog::warningGroupScheduling()
1442{
1443 warningExperimental(mEnableGroupScheduling->checkBox()->isChecked());
1444}
1445
1446void KOPrefsDialog::warningProjectView()
1447{
1448 warningExperimental(mEnableProjectView->checkBox()->isChecked());
1449}
1450
1451void KOPrefsDialog::warningExperimental(bool on)
1452{
1453 if (on) {
1454 KMessageBox::information(this,i18n("This is an experimental feature. "
1455 "It may not work, it may do nothing useful and it may cause data loss. "
1456 "Use with care.\n"
1457 "You have to restart KOrganizer for this setting to take effect."));
1458 } else {
1459 KMessageBox::information(this,
1460 i18n("You have to restart KOrganizer for this setting to take effect."));
1461 }
1462}
1463
1464void KOPrefsDialog::toggleEmailSettings(bool on)
1465{
1466 if (on) {
1467 mEmailEdit->setEnabled(false);
1468 mNameEdit->setEnabled(false);
1469 mEmailLabel->setEnabled(false);
1470 mNameLabel->setEnabled(false);
1471
1472 KEMailSettings settings;
1473 mNameEdit->setText(settings.getSetting(KEMailSettings::RealName));
1474 mEmailEdit->setText(settings.getSetting(KEMailSettings::EmailAddress));
1475 } else {
1476 mEmailEdit->setEnabled(true);
1477 mNameEdit->setEnabled(true);
1478 mEmailLabel->setEnabled(true);
1479 mNameLabel->setEnabled(true);
1480 }
1481}
1482
1483void KOPrefsDialog::addItem()
1484{
1485 // aEmailsEdit->setEnabled(true);
1486// QListViewItem *item = new QListViewItem(mAMails);
1487// mAMails->insertItem(item);
1488// mAMails->setSelected(item,true);
1489// aEmailsEdit->setText(i18n("(EmptyEmail)"));
1490}
1491
1492void KOPrefsDialog::removeItem()
1493{
1494// QListViewItem *item;
1495// item = mAMails->selectedItem();
1496// if (!item) return;
1497// mAMails->takeItem(item);
1498// item = mAMails->selectedItem();
1499// if (!item) {
1500// aEmailsEdit->setText("");
1501// aEmailsEdit->setEnabled(false);
1502// }
1503// if (mAMails->childCount() == 0) {
1504// aEmailsEdit->setEnabled(false);
1505// }
1506}
1507
1508void KOPrefsDialog::updateItem()
1509{
1510 // QListViewItem *item;
1511// item = mAMails->selectedItem();
1512// if (!item) return;
1513// item->setText(0,aEmailsEdit->text());
1514}
1515
1516void KOPrefsDialog::updateInput()
1517{
1518// QListViewItem *item;
1519// item = mAMails->selectedItem();
1520// if (!item) return;
1521// aEmailsEdit->setEnabled(true);
1522// aEmailsEdit->setText(item->text(0));
1523}
1524void KOPrefsDialog::updateTimezoneOffset( int index )
1525{
1526 /*
1527 qDebug("updateTimezoneOffset %d ", index);
1528 if ( index < 24 ) {
1529 mTimezoneOffsetSpin->setEnabled ( false );
1530 mTimezoneOffsetSpin->setValue( ( index-11 ) * 60 );
1531
1532
1533 } else {
1534 if ( index == 24 ) {
1535 mTimezoneOffsetSpin->setEnabled ( true );
1536 mTimezoneOffsetSpin->setValue( KOPrefs::instance()->mTimeZoneOffset);
1537
1538 } else {
1539 mTimezoneOffsetSpin->setEnabled ( false );
1540 mTimezoneOffsetSpin->setValue( 0 );
1541 }
1542 }
1543 */
1544}
1545
1546void KOPrefsDialog::setupTimeZoneTab()
1547{
1548 QFrame *topFrame = addPage(i18n("Time Zone"),0,0);
1549 // DesktopIcon("clock",KIcon::SizeMedium));
1550
1551 QGridLayout *topLayout = new QGridLayout(topFrame,5,2);
1552 topLayout->setSpacing(spacingHint());
1553 topLayout->setMargin(marginHint());
1554
1555 QHBox *timeZoneBox = new QHBox( topFrame );
1556 topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 );
1557
1558 new QLabel( i18n("Timezone:"), timeZoneBox );
1559 mTimeZoneCombo = new QComboBox( timeZoneBox );
1560 if ( QApplication::desktop()->width() < 300 ) {
1561 mTimeZoneCombo->setMaximumWidth(150);
1562 }
1563
1564 QStringList list;
1565 list = KGlobal::locale()->timeZoneList();
1566 mTimeZoneCombo->insertStringList(list);
1567
1568 // find the currently set time zone and select it
1569 QString sCurrentlySet = KOPrefs::instance()->mTimeZoneId;
1570 int nCurrentlySet = 11;
1571 for (int i = 0; i < mTimeZoneCombo->count(); i++)
1572 {
1573 if (mTimeZoneCombo->text(i) == sCurrentlySet)
1574 {
1575 nCurrentlySet = i;
1576 break;
1577 }
1578 }
1579 mTimeZoneCombo->setCurrentItem(nCurrentlySet);
1580 int iii = 1;
1581 KPrefsWidBool *sb =
1582 addWidBool(i18n("Timezone has daylight saving"),
1583 &(KOPrefs::instance()->mUseDaylightsaving),topFrame);
1584 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
1585 ++iii;
1586 QLabel* lab = new QLabel( i18n("Actual start and end is the\nsunday before this date."), topFrame );
1587 topLayout->addMultiCellWidget(lab, iii,iii,0,1);
1588 ++iii;
1589 lab = new QLabel( i18n("The year in the date is ignored."), topFrame );
1590 topLayout->addMultiCellWidget(lab, iii,iii,0,1);
1591 ++iii;
1592 lab = new QLabel( i18n("Daylight start:"), topFrame );
1593 topLayout->addWidget(lab, iii,0);
1594 mStartDateSavingEdit = new KDateEdit(topFrame);
1595 topLayout->addWidget(mStartDateSavingEdit, iii,1);
1596 ++iii;
1597
1598 lab = new QLabel( i18n("Daylight end:"), topFrame );
1599 topLayout->addWidget(lab, iii,0);
1600 mEndDateSavingEdit = new KDateEdit(topFrame);
1601 topLayout->addWidget(mEndDateSavingEdit, iii,1);
1602 ++iii;
1603 QDate current ( 2001, 1,1);
1604 mStartDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingStart-1));
1605 mEndDateSavingEdit->setDate(current.addDays(KOPrefs::instance()->mDaylightsavingEnd-1));
1606
1607
1608}
1609