summaryrefslogtreecommitdiffabout
path: root/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
Unidiff
Diffstat (limited to 'libkdepim/kcmconfigs/kdepimconfigwidget.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libkdepim/kcmconfigs/kdepimconfigwidget.cpp33
1 files changed, 28 insertions, 5 deletions
diff --git a/libkdepim/kcmconfigs/kdepimconfigwidget.cpp b/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
index 6eaf2f2..bbed38d 100644
--- a/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
+++ b/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
@@ -20,88 +20,90 @@
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/* 24/*
25Enhanced Version of the file for platform independent KDE tools. 25Enhanced Version of the file for platform independent KDE tools.
26Copyright (c) 2004 Ulf Schenk 26Copyright (c) 2004 Ulf Schenk
27 27
28$Id$ 28$Id$
29*/ 29*/
30 30
31#include <qlayout.h> 31#include <qlayout.h>
32#include <qtabwidget.h> 32#include <qtabwidget.h>
33#include <qcombobox.h> 33#include <qcombobox.h>
34#include <qgroupbox.h> 34#include <qgroupbox.h>
35#include <qlabel.h> 35#include <qlabel.h>
36#include <qlineedit.h> 36#include <qlineedit.h>
37#include <qbuttongroup.h> 37#include <qbuttongroup.h>
38#include <qfile.h> 38#include <qfile.h>
39#include <qvbox.h> 39#include <qvbox.h>
40#include <qdir.h> 40#include <qdir.h>
41#include <qregexp.h> 41#include <qregexp.h>
42 42
43#include <kdialog.h> 43#include <kdialog.h>
44#include <kprefsdialog.h>
44#include <klocale.h> 45#include <klocale.h>
45#include <kdateedit.h> 46#include <kdateedit.h>
46#include <kglobal.h> 47#include <kglobal.h>
47#include <stdlib.h> 48#include <stdlib.h>
48 49
49/*US 50/*US
50#include <qcheckbox.h> 51#include <qcheckbox.h>
51#include <qframe.h> 52#include <qframe.h>
52#include <qpushbutton.h> 53#include <qpushbutton.h>
53#include <qcombobox.h> 54#include <qcombobox.h>
54#include <qlineedit.h> 55#include <qlineedit.h>
55#include <qlabel.h> 56#include <qlabel.h>
56#include <qfile.h> 57#include <qfile.h>
57 58
58#include <kconfig.h> 59#include <kconfig.h>
59#include <kdebug.h> 60#include <kdebug.h>
60#include <kdialog.h> 61#include <kdialog.h>
61#include <klistview.h> 62#include <klistview.h>
62#include <klocale.h> 63#include <klocale.h>
63#include <kglobal.h> 64#include <kglobal.h>
64#include <kmessagebox.h> 65#include <kmessagebox.h>
65#include <kstandarddirs.h> 66#include <kstandarddirs.h>
66 67
67#ifndef KAB_EMBEDDED 68#ifndef KAB_EMBEDDED
68#include <ktrader.h> 69#include <ktrader.h>
69#else // KAB_EMBEDDED 70#else // KAB_EMBEDDED
70#include <mergewidget.h> 71#include <mergewidget.h>
71#include <distributionlistwidget.h> 72#include <distributionlistwidget.h>
72#endif // KAB_EMBEDDED 73#endif // KAB_EMBEDDED
73 74
74#include "addresseewidget.h" 75#include "addresseewidget.h"
75#include "extensionconfigdialog.h" 76#include "extensionconfigdialog.h"
76#include "extensionwidget.h" 77#include "extensionwidget.h"
77*/ 78*/
78 79
79#include "qapplication.h" 80#include "qapplication.h"
80 81
81#include "kpimglobalprefs.h" 82#include "kpimglobalprefs.h"
82 83
83#include "kdepimconfigwidget.h" 84#include "kdepimconfigwidget.h"
85#include <kprefs.h>
84 86
85 87
86KDEPIMConfigWidget::KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name ) 88KDEPIMConfigWidget::KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name )
87 : KPrefsWidget(prefs, parent, name ) 89 : KPrefsWidget(prefs, parent, name )
88{ 90{
89 mExternalAppsMap.insert(ExternalAppHandler::EMAIL, i18n("Email")); 91 mExternalAppsMap.insert(ExternalAppHandler::EMAIL, i18n("Email"));
90 mExternalAppsMap.insert(ExternalAppHandler::PHONE, i18n("Phone")); 92 mExternalAppsMap.insert(ExternalAppHandler::PHONE, i18n("Phone"));
91 mExternalAppsMap.insert(ExternalAppHandler::SMS, i18n("SMS")); 93 mExternalAppsMap.insert(ExternalAppHandler::SMS, i18n("SMS"));
92 mExternalAppsMap.insert(ExternalAppHandler::FAX, i18n("Fax")); 94 mExternalAppsMap.insert(ExternalAppHandler::FAX, i18n("Fax"));
93 mExternalAppsMap.insert(ExternalAppHandler::PAGER, i18n("Pager")); 95 mExternalAppsMap.insert(ExternalAppHandler::PAGER, i18n("Pager"));
94 mExternalAppsMap.insert(ExternalAppHandler::SIP, i18n("SIP")); 96 mExternalAppsMap.insert(ExternalAppHandler::SIP, i18n("SIP"));
95 97
96 98
97 QVBoxLayout *topLayout = new QVBoxLayout( this, 0, 99 QVBoxLayout *topLayout = new QVBoxLayout( this, 0,
98 KDialog::spacingHint() ); 100 KDialog::spacingHint() );
99 101
100 tabWidget = new QTabWidget( this ); 102 tabWidget = new QTabWidget( this );
101 topLayout->addWidget( tabWidget ); 103 topLayout->addWidget( tabWidget );
102 104
103 105
104 setupLocaleTab(); 106 setupLocaleTab();
105 setupLocaleDateTab(); 107 setupLocaleDateTab();
106 setupTimeZoneTab(); 108 setupTimeZoneTab();
107 setupExternalAppTab(); 109 setupExternalAppTab();
@@ -327,50 +329,58 @@ void KDEPIMConfigWidget::setupLocaleTab()
327 iii = 0; 329 iii = 0;
328 syncPrefsGroup = 330 syncPrefsGroup =
329 addWidRadios(i18n("Time Format(nr):"),&(KPimGlobalPrefs::instance()->mPreferredTime),topFrame); 331 addWidRadios(i18n("Time Format(nr):"),&(KPimGlobalPrefs::instance()->mPreferredTime),topFrame);
330 if ( QApplication::desktop()->width() > 300 ) 332 if ( QApplication::desktop()->width() > 300 )
331 syncPrefsGroup->groupBox()->setOrientation (Qt::Vertical); 333 syncPrefsGroup->groupBox()->setOrientation (Qt::Vertical);
332 syncPrefsGroup->addRadio(i18n("24:00")); 334 syncPrefsGroup->addRadio(i18n("24:00"));
333 syncPrefsGroup->addRadio(i18n("12:00am")); 335 syncPrefsGroup->addRadio(i18n("12:00am"));
334 syncPrefsGroup->groupBox()->setOrientation (Qt::Vertical); 336 syncPrefsGroup->groupBox()->setOrientation (Qt::Vertical);
335 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 337 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
336 ++iii; 338 ++iii;
337 339
338 KPrefsWidBool *sb = addWidBool(i18n("Week starts on Sunday"), 340 KPrefsWidBool *sb = addWidBool(i18n("Week starts on Sunday"),
339 &(KPimGlobalPrefs::instance()->mWeekStartsOnSunday),topFrame); 341 &(KPimGlobalPrefs::instance()->mWeekStartsOnSunday),topFrame);
340 topLayout->addMultiCellWidget((QWidget*)sb->checkBox(), iii,iii,0,1); 342 topLayout->addMultiCellWidget((QWidget*)sb->checkBox(), iii,iii,0,1);
341 ++iii; 343 ++iii;
342 344
343 345
344 tabWidget->addTab( topFrame, i18n( "Time Format" ) ); 346 tabWidget->addTab( topFrame, i18n( "Time Format" ) );
345 347
346} 348}
347 349
348 350
349void KDEPIMConfigWidget::setupTimeZoneTab() 351void KDEPIMConfigWidget::setupTimeZoneTab()
350{ 352{
351 QWidget *topFrame = new QWidget( this ); 353 QWidget *topFrame;
352 QGridLayout *topLayout = new QGridLayout( topFrame, 5, 2); 354 QGridLayout *topLayout ;
355
356
357
358
359
360
361 topFrame = new QWidget( this );
362 topLayout = new QGridLayout( topFrame, 5, 2);
353 topLayout->setSpacing(KDialog::spacingHintSmall()); 363 topLayout->setSpacing(KDialog::spacingHintSmall());
354 topLayout->setMargin(KDialog::marginHintSmall()); 364 topLayout->setMargin(KDialog::marginHintSmall());
355 365
356 QHBox *timeZoneBox = new QHBox( topFrame ); 366 QHBox *timeZoneBox = new QHBox( topFrame );
357 topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 ); 367 topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 );
358 368
359 new QLabel( i18n("Timezone:"), timeZoneBox ); 369 new QLabel( i18n("Timezone:"), timeZoneBox );
360 mTimeZoneCombo = new QComboBox( timeZoneBox ); 370 mTimeZoneCombo = new QComboBox( timeZoneBox );
361 if ( QApplication::desktop()->width() < 300 ) { 371 if ( QApplication::desktop()->width() < 300 ) {
362 mTimeZoneCombo->setMaximumWidth(150); 372 mTimeZoneCombo->setMaximumWidth(150);
363 } 373 }
364 374
365 QStringList list; 375 QStringList list;
366 list = KGlobal::locale()->timeZoneList(); 376 list = KGlobal::locale()->timeZoneList();
367 mTimeZoneCombo->insertStringList(list); 377 mTimeZoneCombo->insertStringList(list);
368 378
369 // find the currently set time zone and select it 379 // find the currently set time zone and select it
370 QString sCurrentlySet = KPimGlobalPrefs::instance()->mTimeZoneId; 380 QString sCurrentlySet = KPimGlobalPrefs::instance()->mTimeZoneId;
371 int nCurrentlySet = 11; 381 int nCurrentlySet = 11;
372 for (int i = 0; i < mTimeZoneCombo->count(); i++) 382 for (int i = 0; i < mTimeZoneCombo->count(); i++)
373 { 383 {
374 if (mTimeZoneCombo->text(i) == sCurrentlySet) 384 if (mTimeZoneCombo->text(i) == sCurrentlySet)
375 { 385 {
376 nCurrentlySet = i; 386 nCurrentlySet = i;
@@ -395,53 +405,66 @@ void KDEPIMConfigWidget::setupTimeZoneTab()
395 topLayout->addMultiCellWidget(lab, iii,iii,0,1); 405 topLayout->addMultiCellWidget(lab, iii,iii,0,1);
396 ++iii; 406 ++iii;
397 407
398 lab = new QLabel( i18n("The year in the date is ignored."), topFrame ); 408 lab = new QLabel( i18n("The year in the date is ignored."), topFrame );
399 topLayout->addMultiCellWidget(lab, iii,iii,0,1); 409 topLayout->addMultiCellWidget(lab, iii,iii,0,1);
400 ++iii; 410 ++iii;
401 lab = new QLabel( i18n("Daylight start:"), topFrame ); 411 lab = new QLabel( i18n("Daylight start:"), topFrame );
402 topLayout->addWidget(lab, iii,0); 412 topLayout->addWidget(lab, iii,0);
403 mStartDateSavingEdit = new KDateEdit(topFrame); 413 mStartDateSavingEdit = new KDateEdit(topFrame);
404 topLayout->addWidget(mStartDateSavingEdit, iii,1); 414 topLayout->addWidget(mStartDateSavingEdit, iii,1);
405 ++iii; 415 ++iii;
406 416
407 lab = new QLabel( i18n("Daylight end:"), topFrame ); 417 lab = new QLabel( i18n("Daylight end:"), topFrame );
408 topLayout->addWidget(lab, iii,0); 418 topLayout->addWidget(lab, iii,0);
409 mEndDateSavingEdit = new KDateEdit(topFrame); 419 mEndDateSavingEdit = new KDateEdit(topFrame);
410 topLayout->addWidget(mEndDateSavingEdit, iii,1); 420 topLayout->addWidget(mEndDateSavingEdit, iii,1);
411 ++iii; 421 ++iii;
412 QDate current ( 2001, 1,1); 422 QDate current ( 2001, 1,1);
413 mStartDateSavingEdit->setDate(current.addDays(KPimGlobalPrefs::instance()->mDaylightsavingStart-1)); 423 mStartDateSavingEdit->setDate(current.addDays(KPimGlobalPrefs::instance()->mDaylightsavingStart-1));
414 mEndDateSavingEdit->setDate(current.addDays(KPimGlobalPrefs::instance()->mDaylightsavingEnd-1)); 424 mEndDateSavingEdit->setDate(current.addDays(KPimGlobalPrefs::instance()->mDaylightsavingEnd-1));
415 425
416 connect( mStartDateSavingEdit, SIGNAL( dateChanged(QDate)), this, SLOT( modified()) ); 426 connect( mStartDateSavingEdit, SIGNAL( dateChanged(QDate)), this, SLOT( modified()) );
417 connect( mEndDateSavingEdit, SIGNAL( dateChanged(QDate)), this, SLOT( modified()) ); 427 connect( mEndDateSavingEdit, SIGNAL( dateChanged(QDate)), this, SLOT( modified()) );
418 connect( mTimeZoneCombo, SIGNAL( activated( int ) ), this, SLOT (modified() ) ); 428 connect( mTimeZoneCombo, SIGNAL( activated( int ) ), this, SLOT (modified() ) );
419
420
421
422 tabWidget->addTab( topFrame, i18n( "Time Zone" ) ); 429 tabWidget->addTab( topFrame, i18n( "Time Zone" ) );
423 430
431
432 topFrame = new QWidget( this );
433 topLayout = new QGridLayout( topFrame, 3, 2);
434 topLayout->setSpacing(KDialog::spacingHintSmall());
435 topLayout->setMargin(KDialog::marginHintSmall());
436 tabWidget->addTab( topFrame, i18n( "Fonts" ) );
437
438 QLabel* labb = new QLabel( i18n("Global application font for all apps:"), topFrame );
439 topLayout->addMultiCellWidget(labb,0,0,0,2);
440 int i = 1;
441 KPrefsWidFont *timeLabelsFont =
442 addWidFont(i18n("Kx/Pi"),i18n("Application Font"),
443 &(KPimGlobalPrefs::instance()->mApplicationFont),topFrame);
444 topLayout->addWidget(timeLabelsFont->label(),i,0);
445 topLayout->addWidget(timeLabelsFont->preview(),i,1);
446 topLayout->addWidget(timeLabelsFont->button(),i,2);
424} 447}
425 448
426void KDEPIMConfigWidget::externalapp_changed( int newApp ) 449void KDEPIMConfigWidget::externalapp_changed( int newApp )
427{ 450{
428 // first store the current data 451 // first store the current data
429 saveEditFieldSettings(); 452 saveEditFieldSettings();
430 453
431 // set mCurrentApp 454 // set mCurrentApp
432 mCurrentApp = (ExternalAppHandler::Types)newApp; 455 mCurrentApp = (ExternalAppHandler::Types)newApp;
433 456
434 // set mCurrentClient 457 // set mCurrentClient
435 switch(mCurrentApp) 458 switch(mCurrentApp)
436 { 459 {
437 case(ExternalAppHandler::EMAIL): 460 case(ExternalAppHandler::EMAIL):
438 mCurrentClient = mEmailClient; 461 mCurrentClient = mEmailClient;
439 break; 462 break;
440 case(ExternalAppHandler::PHONE): 463 case(ExternalAppHandler::PHONE):
441 mCurrentClient = mPhoneClient; 464 mCurrentClient = mPhoneClient;
442 break; 465 break;
443 case(ExternalAppHandler::SMS): 466 case(ExternalAppHandler::SMS):
444 mCurrentClient = mSMSClient; 467 mCurrentClient = mSMSClient;
445 break; 468 break;
446 case(ExternalAppHandler::FAX): 469 case(ExternalAppHandler::FAX):
447 mCurrentClient = mFaxClient; 470 mCurrentClient = mFaxClient;