author | ulf69 <ulf69> | 2004-09-21 19:50:27 (UTC) |
---|---|---|
committer | ulf69 <ulf69> | 2004-09-21 19:50:27 (UTC) |
commit | 93313aa8d66c01aa0e4562449020af20b5cef0a7 (patch) (side-by-side diff) | |
tree | 7bf9930c58b4651a29b5aa4210742340c9439bc8 | |
parent | c2cce86fdb2d0b291c3d3bdfa9fac47452153d1a (diff) | |
download | kdepimpi-93313aa8d66c01aa0e4562449020af20b5cef0a7.zip kdepimpi-93313aa8d66c01aa0e4562449020af20b5cef0a7.tar.gz kdepimpi-93313aa8d66c01aa0e4562449020af20b5cef0a7.tar.bz2 |
added edit elements for global prefs
-rw-r--r-- | libkdepim/kcmconfigs/kcmkdepimconfig.cpp | 17 | ||||
-rw-r--r-- | libkdepim/kcmconfigs/kcmkdepimconfig.h | 2 | ||||
-rw-r--r-- | libkdepim/kcmconfigs/kdepimconfigwidget.cpp | 313 | ||||
-rw-r--r-- | libkdepim/kcmconfigs/kdepimconfigwidget.h | 45 | ||||
-rw-r--r-- | libkdepim/kpimglobalprefs.cpp | 21 | ||||
-rw-r--r-- | libkdepim/kpimglobalprefs.h | 15 | ||||
-rw-r--r-- | libkdepim/kpimprefs.cpp | 6 | ||||
-rw-r--r-- | libkdepim/kpimprefs.h | 2 | ||||
-rw-r--r-- | libkdepim/kprefsdialog.cpp | 106 | ||||
-rw-r--r-- | libkdepim/kprefsdialog.h | 70 | ||||
-rw-r--r-- | libkdepim/libkdepimE.pro | 2 |
11 files changed, 410 insertions, 189 deletions
diff --git a/libkdepim/kcmconfigs/kcmkdepimconfig.cpp b/libkdepim/kcmconfigs/kcmkdepimconfig.cpp index f26efe0..e77c5ab 100644 --- a/libkdepim/kcmconfigs/kcmkdepimconfig.cpp +++ b/libkdepim/kcmconfigs/kcmkdepimconfig.cpp @@ -45,16 +45,16 @@ $Id$ extern "C" { - KCModule *create_kabconfig( KPimGlobalPrefs* prefs, QWidget *parent, const char * ) { - return new KCMKdePimConfig( prefs, parent, "kcmkdepimconfig" ); + KCModule *create_kabconfig(QWidget *parent, const char * ) { + return new KCMKdePimConfig(parent, "kcmkdepimconfig" ); } } #endif -KCMKdePimConfig::KCMKdePimConfig( KPimGlobalPrefs* prefs, QWidget *parent, const char *name ) - : KCModule( prefs, parent, name ) +KCMKdePimConfig::KCMKdePimConfig(QWidget *parent, const char *name ) + : KCModule( KPimGlobalPrefs::instance(), parent, name ) { //abort(); QVBoxLayout *layout = new QVBoxLayout( this ); - mConfigWidget = new KDEPIMConfigWidget( this, "mConfigWidget" ); + mConfigWidget = new KDEPIMConfigWidget( (KPimGlobalPrefs*)getPreferences(), this, "KDEPIMConfigWidget" ); layout->addWidget( mConfigWidget ); layout->setSpacing( 0 ); @@ -66,14 +66,15 @@ KCMKdePimConfig::KCMKdePimConfig( KPimGlobalPrefs* prefs, QWidget *parent, const void KCMKdePimConfig::load() { - mConfigWidget->restoreSettings((KPimGlobalPrefs*)getPreferences()); + mConfigWidget->readConfig(); } void KCMKdePimConfig::save() { - mConfigWidget->saveSettings((KPimGlobalPrefs*)getPreferences()); + mConfigWidget->writeConfig(); } void KCMKdePimConfig::defaults() { - mConfigWidget->defaults((KPimGlobalPrefs*)getPreferences()); + qDebug("KCMKdePimConfig::defaults()"); + mConfigWidget->setDefaults(); } diff --git a/libkdepim/kcmconfigs/kcmkdepimconfig.h b/libkdepim/kcmconfigs/kcmkdepimconfig.h index fa96eda..b471e53 100644 --- a/libkdepim/kcmconfigs/kcmkdepimconfig.h +++ b/libkdepim/kcmconfigs/kcmkdepimconfig.h @@ -42,5 +42,5 @@ class KCMKdePimConfig : public KCModule public: - KCMKdePimConfig( KPimGlobalPrefs* prefs, QWidget *parent = 0, const char *name = 0 ); + KCMKdePimConfig( QWidget *parent = 0, const char *name = 0 ); virtual void load(); diff --git a/libkdepim/kcmconfigs/kdepimconfigwidget.cpp b/libkdepim/kcmconfigs/kdepimconfigwidget.cpp index 703aeb1..00a07d9 100644 --- a/libkdepim/kcmconfigs/kdepimconfigwidget.cpp +++ b/libkdepim/kcmconfigs/kdepimconfigwidget.cpp @@ -35,9 +35,11 @@ $Id$ #include <qlabel.h> #include <qlineedit.h> +#include <qbuttongroup.h> #include <qfile.h> #include <kdialog.h> #include <klocale.h> - +#include <kdateedit.h> +#include <kglobal.h> #include <stdlib.h> @@ -72,4 +74,6 @@ $Id$ */ +#include "qapplication.h" + #include "kpimglobalprefs.h" @@ -77,6 +81,6 @@ $Id$ -KDEPIMConfigWidget::KDEPIMConfigWidget( QWidget *parent, const char *name ) - : QWidget( parent, name ) +KDEPIMConfigWidget::KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name ) + : KPrefsWidget(prefs, parent, name ) { mExternalAppsMap.insert(ExternalAppHandler::EMAIL, i18n("Email")); @@ -91,10 +95,17 @@ KDEPIMConfigWidget::KDEPIMConfigWidget( QWidget *parent, const char *name ) KDialog::spacingHint() ); - QTabWidget *tabWidget = new QTabWidget( this ); + tabWidget = new QTabWidget( this ); topLayout->addWidget( tabWidget ); + setupLocaleTab(); + setupLocaleDateTab(); + setupTimeZoneTab(); + setupExternalAppTab(); + +} - // mailclient page +void KDEPIMConfigWidget::setupExternalAppTab() +{ QWidget *externalAppsPage = new QWidget( this ); QVBoxLayout* layout = new QVBoxLayout( externalAppsPage, KDialog::marginHintSmall(), @@ -113,6 +124,4 @@ KDEPIMConfigWidget::KDEPIMConfigWidget( QWidget *parent, const char *name ) - - mExternalAppGroupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Used Mail Client" ), externalAppsPage ); QGridLayout *boxLayout = new QGridLayout( mExternalAppGroupBox->layout(), 4, 2, -1, "gridlayout" ); @@ -169,5 +178,4 @@ KDEPIMConfigWidget::KDEPIMConfigWidget( QWidget *parent, const char *name ) - layout->addWidget( mExternalAppGroupBox ); tabWidget->addTab( externalAppsPage, i18n( "External Apps." ) ); @@ -175,4 +183,175 @@ KDEPIMConfigWidget::KDEPIMConfigWidget( QWidget *parent, const char *name ) } + +void KDEPIMConfigWidget::setupLocaleDateTab() +{ + QWidget *topFrame = new QWidget( this ); + QGridLayout *topLayout = new QGridLayout( topFrame, 3, 2); + + topLayout->setSpacing(KDialog::spacingHint()); + topLayout->setMargin(KDialog::marginHint()); + int iii = 0; + + + KPrefsWidRadios *syncPrefsGroup = + addWidRadios(i18n("Date Format:"),&(KPimGlobalPrefs::instance()->mPreferredDate),topFrame); + QString format; + if ( QApplication::desktop()->width() < 480 ) + format = "(%d.%m.%Y)"; + else + format = "(%d.%m.%Y|%A %d %B %Y)"; + syncPrefsGroup->addRadio(i18n("24.03.2004 "+format)); + if ( QApplication::desktop()->width() < 480 ) + format = "(%m.%d.%Y)"; + else + format = "(%m.%d.%Y|%A %B %d %Y)"; + syncPrefsGroup->addRadio(i18n("03.24.2004 "+format)); + if ( QApplication::desktop()->width() < 480 ) + format = "(%Y-%m-%d)"; + else + format = "(%Y-%m-%d|%A %Y %B %d)"; + syncPrefsGroup->addRadio(i18n("2004-03-24 "+format)); + syncPrefsGroup->addRadio(i18n("User defined")); + topLayout->addMultiCellWidget( (QWidget*)syncPrefsGroup->groupBox(),iii,iii,0,1); + ++iii; + ++iii; + QLabel * lab; + mUserDateFormatLong = new QLineEdit(topFrame); + lab = new QLabel(mUserDateFormatLong, i18n("User long date:"), topFrame); + topLayout->addWidget(lab ,iii,0); + topLayout->addWidget(mUserDateFormatLong,iii,1); + ++iii; + mUserDateFormatShort = new QLineEdit(topFrame); + lab = new QLabel(mUserDateFormatShort, i18n("User short date:"), topFrame); + topLayout->addWidget(lab ,iii,0); + topLayout->addWidget(mUserDateFormatShort,iii,1); + ++iii; + lab = new QLabel( i18n("Monday 19 April 2004: %A %d %B %Y"), topFrame); + topLayout->addMultiCellWidget(lab ,iii,iii,0,1); + ++iii; + lab = new QLabel( i18n("Mon 19.04.04: %a %d.%m.%y"), topFrame); + topLayout->addMultiCellWidget(lab ,iii,iii,0,1); + ++iii; + lab = new QLabel( i18n("Mon, 19.Apr.04: %a, %d.%b.%y"), topFrame); + topLayout->addMultiCellWidget(lab ,iii,iii,0,1); + ++iii; + + connect( mUserDateFormatLong, SIGNAL( textChanged ( const QString & )), this, SLOT( textChanged ( const QString & )) ); + connect( mUserDateFormatShort, SIGNAL( textChanged ( const QString & )), this, SLOT( textChanged ( const QString & )) ); + + + tabWidget->addTab( topFrame, i18n( "Date Format" ) ); +} + +void KDEPIMConfigWidget::setupLocaleTab() +{ + + QWidget *topFrame = new QWidget( this ); + QGridLayout *topLayout = new QGridLayout(topFrame,4,2); + + topLayout->setSpacing(KDialog::spacingHint()); + topLayout->setMargin(KDialog::marginHint()); + int iii = 0; + KPrefsWidRadios *syncPrefsGroup = + addWidRadios(i18n("Language:(needs restart)"),&(KPimGlobalPrefs::instance()->mPreferredLanguage),topFrame); + syncPrefsGroup->addRadio(i18n("English")); + syncPrefsGroup->addRadio(i18n("German")); + syncPrefsGroup->addRadio(i18n("French")); + syncPrefsGroup->addRadio(i18n("User defined (usertranslation.txt)")); + if ( QApplication::desktop()->width() < 300 ) + ;// syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); + topLayout->addMultiCellWidget( (QWidget*)syncPrefsGroup->groupBox(),iii,iii,0,1); + ++iii; + + syncPrefsGroup = + addWidRadios(i18n("Time Format(nr):"),&(KPimGlobalPrefs::instance()->mPreferredTime),topFrame); + if ( QApplication::desktop()->width() > 300 ) + syncPrefsGroup->groupBox()->setOrientation (Qt::Vertical); + syncPrefsGroup->addRadio(i18n("24:00")); + syncPrefsGroup->addRadio(i18n("12:00am")); + syncPrefsGroup->groupBox()->setOrientation (Qt::Vertical); + topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); + ++iii; + + KPrefsWidBool *sb = addWidBool(i18n("Week starts on Sunday"), + &(KPimGlobalPrefs::instance()->mWeekStartsOnSunday),topFrame); + topLayout->addMultiCellWidget((QWidget*)sb->checkBox(), iii,iii,0,1); + ++iii; + + + tabWidget->addTab( topFrame, i18n( "Locale" ) ); + +} + + +void KDEPIMConfigWidget::setupTimeZoneTab() +{ + QWidget *topFrame = new QWidget( this ); + QGridLayout *topLayout = new QGridLayout( topFrame, 5, 2); + topLayout->setSpacing(KDialog::spacingHint()); + topLayout->setMargin(KDialog::marginHint()); + + QHBox *timeZoneBox = new QHBox( topFrame ); + topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 ); + + new QLabel( i18n("Timezone:"), timeZoneBox ); + mTimeZoneCombo = new QComboBox( timeZoneBox ); + if ( QApplication::desktop()->width() < 300 ) { + mTimeZoneCombo->setMaximumWidth(150); + } + + QStringList list; + list = KGlobal::locale()->timeZoneList(); + mTimeZoneCombo->insertStringList(list); + + // find the currently set time zone and select it + QString sCurrentlySet = KPimGlobalPrefs::instance()->mTimeZoneId; + int nCurrentlySet = 11; + for (int i = 0; i < mTimeZoneCombo->count(); i++) + { + if (mTimeZoneCombo->text(i) == sCurrentlySet) + { + nCurrentlySet = i; + break; + } + } + mTimeZoneCombo->setCurrentItem(nCurrentlySet); + int iii = 1; + KPrefsWidBool *sb = + addWidBool(i18n("Timezone has daylight saving"), + &(KPimGlobalPrefs::instance()->mUseDaylightsaving),topFrame); + topLayout->addMultiCellWidget((QWidget*)sb->checkBox(), iii,iii,0,1); + ++iii; + QLabel* lab = new QLabel( i18n("Actual start and end is the\nsunday before this date."), topFrame ); + topLayout->addMultiCellWidget(lab, iii,iii,0,1); + ++iii; + lab = new QLabel( i18n("The year in the date is ignored."), topFrame ); + topLayout->addMultiCellWidget(lab, iii,iii,0,1); + ++iii; + lab = new QLabel( i18n("Daylight start:"), topFrame ); + topLayout->addWidget(lab, iii,0); + mStartDateSavingEdit = new KDateEdit(topFrame); + topLayout->addWidget(mStartDateSavingEdit, iii,1); + ++iii; + + lab = new QLabel( i18n("Daylight end:"), topFrame ); + topLayout->addWidget(lab, iii,0); + mEndDateSavingEdit = new KDateEdit(topFrame); + topLayout->addWidget(mEndDateSavingEdit, iii,1); + ++iii; + QDate current ( 2001, 1,1); + mStartDateSavingEdit->setDate(current.addDays(KPimGlobalPrefs::instance()->mDaylightsavingStart-1)); + mEndDateSavingEdit->setDate(current.addDays(KPimGlobalPrefs::instance()->mDaylightsavingEnd-1)); + + connect( mStartDateSavingEdit, SIGNAL( dateChanged(QDate)), this, SLOT( modified()) ); + connect( mEndDateSavingEdit, SIGNAL( dateChanged(QDate)), this, SLOT( modified()) ); + connect( mTimeZoneCombo, SIGNAL( activated( int ) ), this, SLOT (modified() ) ); + + + + tabWidget->addTab( topFrame, i18n( "Time Zone" ) ); + +} + void KDEPIMConfigWidget::externalapp_changed( int newApp ) { @@ -229,5 +408,5 @@ void KDEPIMConfigWidget::client_changed( int newClient ) updateClientWidgets(); - modified(); + KPrefsWidget::modified(); } @@ -445,12 +624,24 @@ void KDEPIMConfigWidget::updateClientWidgets() } - - - -void KDEPIMConfigWidget::restoreSettings(KPimGlobalPrefs* prefs) +void KDEPIMConfigWidget::usrReadConfig() { + KPimGlobalPrefs* prefs = KPimGlobalPrefs::instance(); + bool blocked = signalsBlocked(); blockSignals( true ); + QString dummy = prefs->mUserDateFormatLong; + mUserDateFormatLong->setText(dummy.replace( QRegExp("K"), QString(",") )); + dummy = prefs->mUserDateFormatShort; + mUserDateFormatShort->setText(dummy.replace( QRegExp("K"), QString(",") )); + + QDate current ( 2001, 1,1); + mStartDateSavingEdit->setDate(current.addDays(prefs->mDaylightsavingStart-1)); + mEndDateSavingEdit->setDate(current.addDays(prefs->mDaylightsavingEnd-1)); + setCombo(mTimeZoneCombo,i18n(prefs->mTimeZoneId)); + + + + mEmailClient = prefs->mEmailClient; mEmailOtherChannel = prefs->mEmailOtherChannel; @@ -492,12 +683,31 @@ void KDEPIMConfigWidget::restoreSettings(KPimGlobalPrefs* prefs) blockSignals( blocked ); - emit changed( false ); - } -void KDEPIMConfigWidget::saveSettings(KPimGlobalPrefs* prefs) +void KDEPIMConfigWidget::usrWriteConfig() { + KPimGlobalPrefs* prefs = KPimGlobalPrefs::instance(); + saveEditFieldSettings(); + + prefs->mUserDateFormatShort = mUserDateFormatShort->text().replace( QRegExp(","), QString("K") ); + prefs->mUserDateFormatLong = mUserDateFormatLong->text().replace( QRegExp(","), QString("K") ); + + prefs->mTimeZoneId = mTimeZoneCombo->currentText(); + QDate date; + date = mStartDateSavingEdit->date(); + int sub = 0; + if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 ) + sub = 1; + prefs->mDaylightsavingStart = date.dayOfYear()-sub; + date = mEndDateSavingEdit->date(); + if ( QDate::leapYear( date.year() ) && date.dayOfYear() > 59 ) + sub = 1; + else + sub = 0; + prefs->mDaylightsavingEnd = date.dayOfYear()-sub; + + prefs->mEmailClient = mEmailClient; prefs->mEmailOtherChannel = mEmailOtherChannel; @@ -533,69 +743,26 @@ void KDEPIMConfigWidget::saveSettings(KPimGlobalPrefs* prefs) prefs->mSipOtherMessageParameters = mSipOtherMessageParameters; - prefs->writeConfig(); - //release the cache that other views can access the changed values instantanious ExternalAppHandler::instance()->loadConfig(); - emit changed( false ); } -void KDEPIMConfigWidget::defaults(KPimGlobalPrefs* prefs) -{ - - DefaultAppItem* dai = ExternalAppHandler::instance()->getDefaultItem(ExternalAppHandler::EMAIL, KPimGlobalPrefs::NONE_EMC); - - mEmailClient = dai->_id; - mEmailOtherChannel = dai->_channel; - mEmailOtherMessage = dai->_message; - mEmailOtherMessageParameters = dai->_parameters; - mEmailOtherMessage2 = dai->_message2; - mEmailOtherMessageParameters2 = dai->_parameters2; - - - dai = ExternalAppHandler::instance()->getDefaultItem(ExternalAppHandler::PHONE, KPimGlobalPrefs::NONE_PHC); - - mPhoneClient = dai->_id; - mPhoneOtherChannel = dai->_channel; - mPhoneOtherMessage = dai->_message; - mPhoneOtherMessageParameters = dai->_parameters; - - dai = ExternalAppHandler::instance()->getDefaultItem(ExternalAppHandler::FAX, KPimGlobalPrefs::NONE_FAC); - - mFaxClient = dai->_id; - mFaxOtherChannel = dai->_channel; - mFaxOtherMessage = dai->_message; - mFaxOtherMessageParameters = dai->_parameters; - dai = ExternalAppHandler::instance()->getDefaultItem(ExternalAppHandler::SMS, KPimGlobalPrefs::NONE_SMC); - - mSMSClient = dai->_id; - mSMSOtherChannel = dai->_channel; - mSMSOtherMessage = dai->_message; - mSMSOtherMessageParameters = dai->_parameters; - - dai = ExternalAppHandler::instance()->getDefaultItem(ExternalAppHandler::PAGER, KPimGlobalPrefs::NONE_PAC); - - mPagerClient = dai->_id; - mPagerOtherChannel = dai->_channel; - mPagerOtherMessage = dai->_message; - mPagerOtherMessageParameters = dai->_parameters; - - - dai = ExternalAppHandler::instance()->getDefaultItem(ExternalAppHandler::SIP, KPimGlobalPrefs::NONE_SIC); - - mSipClient = dai->_id; - mSipOtherChannel = dai->_channel; - mSipOtherMessage = dai->_message; - mSipOtherMessageParameters = dai->_parameters; - - - emit changed( true ); -} - -void KDEPIMConfigWidget::modified() +void KDEPIMConfigWidget::setCombo(QComboBox *combo, const QString & text, + const QStringList *tags) { - emit changed( true ); + if (tags) { + int i = tags->findIndex(text); + if (i > 0) combo->setCurrentItem(i); + } else { + for(int i=0;i<combo->count();++i) { + if (combo->text(i) == text) { + combo->setCurrentItem(i); + break; } + } + } +} + void KDEPIMConfigWidget::textChanged( const QString& text ) diff --git a/libkdepim/kcmconfigs/kdepimconfigwidget.h b/libkdepim/kcmconfigs/kdepimconfigwidget.h index e3cfd81..6f26513 100644 --- a/libkdepim/kcmconfigs/kdepimconfigwidget.h +++ b/libkdepim/kcmconfigs/kdepimconfigwidget.h @@ -32,5 +32,5 @@ $Id$ #define KDEPIMCONFIGWIDGET_H -#include <qwidget.h> +#include <kprefswidget.h> #include <qmap.h> @@ -38,34 +38,26 @@ $Id$ -/* -class QCheckBox; -class QListViewItem; -class QPushButton; -class KListView; -*/ class QComboBox; class QLineEdit; class KPimGlobalPrefs; class QGroupBox; +class QTabWidget; +class KDateEdit; -class KDEPIMConfigWidget : public QWidget +class KDEPIMConfigWidget : public KPrefsWidget { Q_OBJECT public: - KDEPIMConfigWidget( QWidget *parent, const char *name = 0 ); - - void restoreSettings(KPimGlobalPrefs* prefs); - void saveSettings(KPimGlobalPrefs* prefs); - void defaults(KPimGlobalPrefs* prefs); - - signals: - void changed( bool ); - + KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name = 0 ); public slots: - void modified(); void textChanged( const QString& text ); + protected: + /** Implement this to read custom configuration widgets. */ + virtual void usrReadConfig(); + /** Implement this to write custom configuration widgets. */ + virtual void usrWriteConfig(); @@ -78,7 +70,24 @@ class KDEPIMConfigWidget : public QWidget private: + void setupExternalAppTab(); + void setupLocaleDateTab(); + void setupLocaleTab(); + void setupTimeZoneTab(); + + void setCombo(QComboBox *combo,const QString & text, const QStringList *tags = 0); + + void saveEditFieldSettings(); void updateClientWidgets(); + QTabWidget *tabWidget; + + + QLineEdit* mUserDateFormatShort; + QLineEdit* mUserDateFormatLong; + QComboBox* mTimeZoneCombo; + KDateEdit* mStartDateSavingEdit; + KDateEdit* mEndDateSavingEdit; + // void restoreExtensionSettings(); // void saveExtensionSettings(); diff --git a/libkdepim/kpimglobalprefs.cpp b/libkdepim/kpimglobalprefs.cpp index eb8f1de..12a503d 100644 --- a/libkdepim/kpimglobalprefs.cpp +++ b/libkdepim/kpimglobalprefs.cpp @@ -44,4 +44,25 @@ KPimGlobalPrefs::KPimGlobalPrefs( const QString &name ) : KPrefs("microkdeglobalrc") { + + KPrefs::setCurrentGroup("Locale"); + addItemInt("PreferredLanguage",&mPreferredLanguage,0); + addItemInt("PreferredTime",&mPreferredTime,0); + addItemInt("PreferredDate",&mPreferredDate,0); + addItemBool("WeekStartsOnSunday",&mWeekStartsOnSunday,false); + //addItemBool("QuickSavingWOUnicode",&mUseQuicksave,false); + // addItemBool("ShortDateInViewer",&mShortDateInViewer,false); + addItemString("UserDateFormatLong", &mUserDateFormatLong, "%A %d %b %y"); + addItemString("UserDateFormatShort", &mUserDateFormatShort, "%aK %d.%m.%y"); + + KPrefs::setCurrentGroup("Time & Date"); + + addItemString("TimeZoneName",&mTimeZoneId,i18n ("+01:00 Europe/Oslo(CET)") ); + addItemBool("UseDaylightsaving",&mUseDaylightsaving,true); + addItemInt("DaylightsavingStart",&mDaylightsavingStart,90); + addItemInt("DaylightsavingEnd",&mDaylightsavingEnd,304); + + + + KPrefs::setCurrentGroup( "ExternalApplications" ); diff --git a/libkdepim/kpimglobalprefs.h b/libkdepim/kpimglobalprefs.h index 8bd543d..dad78e6 100644 --- a/libkdepim/kpimglobalprefs.h +++ b/libkdepim/kpimglobalprefs.h @@ -85,4 +85,19 @@ class KPimGlobalPrefs : public KPrefs public: + //US I copied the following "locale" settings from KOPrefs + int mPreferredDate; + QString mUserDateFormatLong; + QString mUserDateFormatShort; + int mPreferredLanguage; + int mPreferredTime; + bool mWeekStartsOnSunday; + QString mTimeZoneId; + bool mUseDaylightsaving; + int mDaylightsavingStart; + int mDaylightsavingEnd; + + + + int mEmailClient; QString mEmailOtherChannel; diff --git a/libkdepim/kpimprefs.cpp b/libkdepim/kpimprefs.cpp index 140a286..a9ea330 100644 --- a/libkdepim/kpimprefs.cpp +++ b/libkdepim/kpimprefs.cpp @@ -65,2 +65,8 @@ void KPimPrefs::usrWriteConfig() config()->writeEntry("Custom Categories",mCustomCategories); } + +void KPimPrefs::setCategoryDefaults() +{ + // empty implementation +} + diff --git a/libkdepim/kpimprefs.h b/libkdepim/kpimprefs.h index 9bd9466..860665b 100644 --- a/libkdepim/kpimprefs.h +++ b/libkdepim/kpimprefs.h @@ -59,5 +59,5 @@ class KPimPrefs : public KPrefs protected: - virtual void setCategoryDefaults() = 0; + virtual void setCategoryDefaults(); }; diff --git a/libkdepim/kprefsdialog.cpp b/libkdepim/kprefsdialog.cpp index 205c526..dd9a602 100644 --- a/libkdepim/kprefsdialog.cpp +++ b/libkdepim/kprefsdialog.cpp @@ -58,5 +58,5 @@ //#include "kprefsdialog.moc" -KPrefsWidBool::KPrefsWidBool(const QString &text,bool *reference, +KPrefsDialogWidBool::KPrefsDialogWidBool(const QString &text,bool *reference, QWidget *parent) { @@ -66,15 +66,15 @@ KPrefsWidBool::KPrefsWidBool(const QString &text,bool *reference, } -void KPrefsWidBool::readConfig() +void KPrefsDialogWidBool::readConfig() { mCheck->setChecked(*mReference); } -void KPrefsWidBool::writeConfig() +void KPrefsDialogWidBool::writeConfig() { *mReference = mCheck->isChecked(); } -QCheckBox *KPrefsWidBool::checkBox() +QCheckBox *KPrefsDialogWidBool::checkBox() { return mCheck; @@ -82,5 +82,5 @@ QCheckBox *KPrefsWidBool::checkBox() -KPrefsWidColor::KPrefsWidColor(const QString &text,QColor *reference, +KPrefsDialogWidColor::KPrefsDialogWidColor(const QString &text,QColor *reference, QWidget *parent) { @@ -94,30 +94,30 @@ KPrefsWidColor::KPrefsWidColor(const QString &text,QColor *reference, } -KPrefsWidColor::~KPrefsWidColor() +KPrefsDialogWidColor::~KPrefsDialogWidColor() { -// kdDebug(5300) << "KPrefsWidColor::~KPrefsWidColor()" << endl; +// kdDebug(5300) << "KPrefsDialogWidColor::~KPrefsDialogWidColor()" << endl; } -void KPrefsWidColor::readConfig() +void KPrefsDialogWidColor::readConfig() { mButton->setColor(*mReference); } -void KPrefsWidColor::writeConfig() +void KPrefsDialogWidColor::writeConfig() { *mReference = mButton->color(); } -QLabel *KPrefsWidColor::label() +QLabel *KPrefsDialogWidColor::label() { return mLabel; } -KColorButton *KPrefsWidColor::button() +KColorButton *KPrefsDialogWidColor::button() { return mButton; } -KPrefsWidFont::KPrefsWidFont(const QString &sampleText,const QString &labelText, +KPrefsDialogWidFont::KPrefsDialogWidFont(const QString &sampleText,const QString &labelText, QFont *reference,QWidget *parent) { @@ -135,34 +135,34 @@ KPrefsWidFont::KPrefsWidFont(const QString &sampleText,const QString &labelText, } -KPrefsWidFont::~KPrefsWidFont() +KPrefsDialogWidFont::~KPrefsDialogWidFont() { } -void KPrefsWidFont::readConfig() +void KPrefsDialogWidFont::readConfig() { mPreview->setFont(*mReference); } -void KPrefsWidFont::writeConfig() +void KPrefsDialogWidFont::writeConfig() { *mReference = mPreview->font(); } -QLabel *KPrefsWidFont::label() +QLabel *KPrefsDialogWidFont::label() { return mLabel; } -QLabel *KPrefsWidFont::preview() +QLabel *KPrefsDialogWidFont::preview() { return mPreview; } -QPushButton *KPrefsWidFont::button() +QPushButton *KPrefsDialogWidFont::button() { return mButton; } -void KPrefsWidFont::selectFont() +void KPrefsDialogWidFont::selectFont() { QFont myFont(mPreview->font()); @@ -175,5 +175,5 @@ void KPrefsWidFont::selectFont() -KPrefsWidTime::KPrefsWidTime(const QString &text,int *reference, +KPrefsDialogWidTime::KPrefsDialogWidTime(const QString &text,int *reference, QWidget *parent) { @@ -185,20 +185,20 @@ KPrefsWidTime::KPrefsWidTime(const QString &text,int *reference, } -void KPrefsWidTime::readConfig() +void KPrefsDialogWidTime::readConfig() { mSpin->setValue(*mReference); } -void KPrefsWidTime::writeConfig() +void KPrefsDialogWidTime::writeConfig() { *mReference = mSpin->value(); } -QLabel *KPrefsWidTime::label() +QLabel *KPrefsDialogWidTime::label() { return mLabel; } -QSpinBox *KPrefsWidTime::spinBox() +QSpinBox *KPrefsDialogWidTime::spinBox() { return mSpin; @@ -206,5 +206,5 @@ QSpinBox *KPrefsWidTime::spinBox() -KPrefsWidRadios::KPrefsWidRadios(const QString &text,int *reference, +KPrefsDialogWidRadios::KPrefsDialogWidRadios(const QString &text,int *reference, QWidget *parent) { @@ -214,24 +214,24 @@ KPrefsWidRadios::KPrefsWidRadios(const QString &text,int *reference, } -KPrefsWidRadios::~KPrefsWidRadios() +KPrefsDialogWidRadios::~KPrefsDialogWidRadios() { } -void KPrefsWidRadios::addRadio(const QString &text) +void KPrefsDialogWidRadios::addRadio(const QString &text) { new QRadioButton(text,mBox); } -QButtonGroup *KPrefsWidRadios::groupBox() +QButtonGroup *KPrefsDialogWidRadios::groupBox() { return mBox; } -void KPrefsWidRadios::readConfig() +void KPrefsDialogWidRadios::readConfig() { mBox->setButton(*mReference); } -void KPrefsWidRadios::writeConfig() +void KPrefsDialogWidRadios::writeConfig() { *mReference = mBox->id(mBox->selected()); @@ -239,5 +239,5 @@ void KPrefsWidRadios::writeConfig() -KPrefsWidString::KPrefsWidString(const QString &text,QString *reference, +KPrefsDialogWidString::KPrefsDialogWidString(const QString &text,QString *reference, QWidget *parent, QLineEdit::EchoMode echomode) { @@ -249,24 +249,24 @@ KPrefsWidString::KPrefsWidString(const QString &text,QString *reference, } -KPrefsWidString::~KPrefsWidString() +KPrefsDialogWidString::~KPrefsDialogWidString() { } -void KPrefsWidString::readConfig() +void KPrefsDialogWidString::readConfig() { mEdit->setText(*mReference); } -void KPrefsWidString::writeConfig() +void KPrefsDialogWidString::writeConfig() { *mReference = mEdit->text(); } -QLabel *KPrefsWidString::label() +QLabel *KPrefsDialogWidString::label() { return mLabel; } -QLineEdit *KPrefsWidString::lineEdit() +QLineEdit *KPrefsDialogWidString::lineEdit() { return mEdit; @@ -292,55 +292,55 @@ KPrefsDialog::~KPrefsDialog() } -void KPrefsDialog::addWid(KPrefsWid *wid) +void KPrefsDialog::addWid(KPrefsDialogWid *wid) { mPrefsWids.append(wid); } -KPrefsWidBool *KPrefsDialog::addWidBool(const QString &text,bool *reference,QWidget *parent) +KPrefsDialogWidBool *KPrefsDialog::addWidBool(const QString &text,bool *reference,QWidget *parent) { - KPrefsWidBool *w = new KPrefsWidBool(text,reference,parent); + KPrefsDialogWidBool *w = new KPrefsDialogWidBool(text,reference,parent); addWid(w); return w; } -KPrefsWidTime *KPrefsDialog::addWidTime(const QString &text,int *reference,QWidget *parent) +KPrefsDialogWidTime *KPrefsDialog::addWidTime(const QString &text,int *reference,QWidget *parent) { - KPrefsWidTime *w = new KPrefsWidTime(text,reference,parent); + KPrefsDialogWidTime *w = new KPrefsDialogWidTime(text,reference,parent); addWid(w); return w; } -KPrefsWidColor *KPrefsDialog::addWidColor(const QString &text,QColor *reference,QWidget *parent) +KPrefsDialogWidColor *KPrefsDialog::addWidColor(const QString &text,QColor *reference,QWidget *parent) { - KPrefsWidColor *w = new KPrefsWidColor(text,reference,parent); + KPrefsDialogWidColor *w = new KPrefsDialogWidColor(text,reference,parent); addWid(w); return w; } -KPrefsWidRadios *KPrefsDialog::addWidRadios(const QString &text,int *reference,QWidget *parent) +KPrefsDialogWidRadios *KPrefsDialog::addWidRadios(const QString &text,int *reference,QWidget *parent) { - KPrefsWidRadios *w = new KPrefsWidRadios(text,reference,parent); + KPrefsDialogWidRadios *w = new KPrefsDialogWidRadios(text,reference,parent); addWid(w); return w; } -KPrefsWidString *KPrefsDialog::addWidString(const QString &text,QString *reference,QWidget *parent) +KPrefsDialogWidString *KPrefsDialog::addWidString(const QString &text,QString *reference,QWidget *parent) { - KPrefsWidString *w = new KPrefsWidString(text,reference,parent); + KPrefsDialogWidString *w = new KPrefsDialogWidString(text,reference,parent); addWid(w); return w; } -KPrefsWidString *KPrefsDialog::addWidPassword(const QString &text,QString *reference,QWidget *parent) +KPrefsDialogWidString *KPrefsDialog::addWidPassword(const QString &text,QString *reference,QWidget *parent) { - KPrefsWidString *w = new KPrefsWidString(text,reference,parent,QLineEdit::Password); + KPrefsDialogWidString *w = new KPrefsDialogWidString(text,reference,parent,QLineEdit::Password); addWid(w); return w; } -KPrefsWidFont *KPrefsDialog::addWidFont(const QString &sampleText,const QString &buttonText, +KPrefsDialogWidFont *KPrefsDialog::addWidFont(const QString &sampleText,const QString &buttonText, QFont *reference,QWidget *parent) { - KPrefsWidFont *w = new KPrefsWidFont(sampleText,buttonText,reference,parent); + KPrefsDialogWidFont *w = new KPrefsDialogWidFont(sampleText,buttonText,reference,parent); addWid(w); return w; @@ -358,5 +358,5 @@ void KPrefsDialog::readConfig() // kdDebug(5300) << "KPrefsDialog::readConfig()" << endl; - KPrefsWid *wid; + KPrefsDialogWid *wid; for(wid = mPrefsWids.first();wid;wid=mPrefsWids.next()) { wid->readConfig(); @@ -370,5 +370,5 @@ void KPrefsDialog::writeConfig() // kdDebug(5300) << "KPrefsDialog::writeConfig()" << endl; - KPrefsWid *wid; + KPrefsDialogWid *wid; for(wid = mPrefsWids.first();wid;wid=mPrefsWids.next()) { wid->writeConfig(); diff --git a/libkdepim/kprefsdialog.h b/libkdepim/kprefsdialog.h index dceab01..ad13b78 100644 --- a/libkdepim/kprefsdialog.h +++ b/libkdepim/kprefsdialog.h @@ -47,5 +47,5 @@ class QButtonGroup; KPrefsDialog. */ -class KPrefsWid +class KPrefsDialogWid { public: @@ -68,5 +68,5 @@ class KPrefsWid used by KPrefsDialog. The user is responsible for the layout management. */ -class KPrefsWidBool : public KPrefsWid +class KPrefsDialogWidBool : public KPrefsDialogWid { public: @@ -78,5 +78,5 @@ class KPrefsWidBool : public KPrefsWid @param parent Parent widget. */ - KPrefsWidBool(const QString &text,bool *reference,QWidget *parent); + KPrefsDialogWidBool(const QString &text,bool *reference,QWidget *parent); /** @@ -100,5 +100,5 @@ class KPrefsWidBool : public KPrefsWid used by KPrefsDialog. The user is responsible for the layout management. */ -class KPrefsWidTime : public KPrefsWid +class KPrefsDialogWidTime : public KPrefsDialogWid { public: @@ -110,5 +110,5 @@ class KPrefsWidTime : public KPrefsWid @param parent Parent widget. */ - KPrefsWidTime(const QString &text,int *reference,QWidget *parent); + KPrefsDialogWidTime(const QString &text,int *reference,QWidget *parent); /** @@ -137,5 +137,5 @@ class KPrefsWidTime : public KPrefsWid used by KPrefsDialog. The user is responsible for the layout management. */ -class KPrefsWidColor : public QObject, public KPrefsWid +class KPrefsDialogWidColor : public QObject, public KPrefsDialogWid { Q_OBJECT @@ -149,9 +149,9 @@ class KPrefsWidColor : public QObject, public KPrefsWid @param parent Parent widget. */ - KPrefsWidColor(const QString &text,QColor *reference,QWidget *parent); + KPrefsDialogWidColor(const QString &text,QColor *reference,QWidget *parent); /** Destruct color setting widget. */ - ~KPrefsWidColor(); + ~KPrefsDialogWidColor(); /** @@ -180,5 +180,5 @@ class KPrefsWidColor : public QObject, public KPrefsWid used by KPrefsDialog. The user is responsible for the layout management. */ -class KPrefsWidFont : public QObject, public KPrefsWid +class KPrefsDialogWidFont : public QObject, public KPrefsDialogWid { Q_OBJECT @@ -192,10 +192,10 @@ class KPrefsWidFont : public QObject, public KPrefsWid @param parent Parent widget. */ - KPrefsWidFont(const QString &sampleText,const QString &labelText, + KPrefsDialogWidFont(const QString &sampleText,const QString &labelText, QFont *reference,QWidget *parent); /** Destruct font setting widget. */ - ~KPrefsWidFont(); + ~KPrefsDialogWidFont(); /** @@ -236,5 +236,5 @@ class KPrefsWidFont : public QObject, public KPrefsWid addRadio() calls, starting with 0. */ -class KPrefsWidRadios : public KPrefsWid +class KPrefsDialogWidRadios : public KPrefsDialogWid { public: @@ -247,6 +247,6 @@ class KPrefsWidRadios : public KPrefsWid @param parent Parent widget. */ - KPrefsWidRadios(const QString &text,int *reference,QWidget *parent); - virtual ~KPrefsWidRadios(); + KPrefsDialogWidRadios(const QString &text,int *reference,QWidget *parent); + virtual ~KPrefsDialogWidRadios(); /** @@ -278,5 +278,5 @@ class KPrefsWidRadios : public KPrefsWid used by KPrefsDialog. The user is responsible for the layout management. */ -class KPrefsWidString : public KPrefsWid +class KPrefsDialogWidString : public KPrefsDialogWid { public: @@ -288,9 +288,9 @@ class KPrefsWidString : public KPrefsWid @param parent Parent widget. */ - KPrefsWidString(const QString &text,QString *reference,QWidget *parent,QLineEdit::EchoMode echomode=QLineEdit::Normal); + KPrefsDialogWidString(const QString &text,QString *reference,QWidget *parent,QLineEdit::EchoMode echomode=QLineEdit::Normal); /** Destructor. */ - virtual ~KPrefsWidString(); + virtual ~KPrefsDialogWidString(); /** @@ -321,5 +321,5 @@ class KPrefsWidString : public KPrefsWid do the layout management. - KPrefsDialog provides functions to add subclasses of @ref KPrefsWid. For + KPrefsDialog provides functions to add subclasses of @ref KPrefsDialogWid. For these widgets the reading, writing and setting to default values is handled automatically. Custom widgets have to be handled in the functions @ref @@ -345,9 +345,9 @@ class KPrefsDialog : public KDialogBase /** - Register a custom KPrefsWid object. + Register a custom KPrefsDialogWid object. */ - void addWid(KPrefsWid *); + void addWid(KPrefsDialogWid *); /** - Register a @ref KPrefsWidBool object. + Register a @ref KPrefsDialogWidBool object. @param text Text of bool widget. @@ -355,7 +355,7 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidBool *addWidBool(const QString &text,bool *reference,QWidget *parent); + KPrefsDialogWidBool *addWidBool(const QString &text,bool *reference,QWidget *parent); /** - Register a @ref KPrefsWidTime object. + Register a @ref KPrefsDialogWidTime object. @param text Text of time widget. @@ -363,7 +363,7 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidTime *addWidTime(const QString &text,int *reference,QWidget *parent); + KPrefsDialogWidTime *addWidTime(const QString &text,int *reference,QWidget *parent); /** - Register a @ref KPrefsWidColor object. + Register a @ref KPrefsDialogWidColor object. @param text Text of color widget. @@ -371,7 +371,7 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidColor *addWidColor(const QString &text,QColor *reference,QWidget *parent); + KPrefsDialogWidColor *addWidColor(const QString &text,QColor *reference,QWidget *parent); /** - Register a @ref KPrefsWidRadios object. + Register a @ref KPrefsDialogWidRadios object. @param text Text of radio button box widget. @@ -379,7 +379,7 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidRadios *addWidRadios(const QString &text,int *reference,QWidget *parent); + KPrefsDialogWidRadios *addWidRadios(const QString &text,int *reference,QWidget *parent); /** - Register a @ref KPrefsWidString object. + Register a @ref KPrefsDialogWidString object. @param text Text of string widget. @@ -387,7 +387,7 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidString *addWidString(const QString &text,QString *reference,QWidget *parent); + KPrefsDialogWidString *addWidString(const QString &text,QString *reference,QWidget *parent); /** - Register a password @ref KPrefsWidString object, with echomode set to QLineEdit::Password. + Register a password @ref KPrefsDialogWidString object, with echomode set to QLineEdit::Password. @param text Text of string widget. @@ -395,7 +395,7 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidString *addWidPassword (const QString &text,QString *reference,QWidget *parent); + KPrefsDialogWidString *addWidPassword (const QString &text,QString *reference,QWidget *parent); /** - Register a @ref KPrefsWidFont object. + Register a @ref KPrefsDialogWidFont object. @param sampleText Sample text of font widget. @@ -404,5 +404,5 @@ class KPrefsDialog : public KDialogBase @param parent Parent widget. */ - KPrefsWidFont *addWidFont(const QString &sampleText,const QString &buttonText, + KPrefsDialogWidFont *addWidFont(const QString &sampleText,const QString &buttonText, QFont *reference,QWidget *parent); @@ -441,5 +441,5 @@ class KPrefsDialog : public KDialogBase KPrefs *mPrefs; - QPtrList<KPrefsWid> mPrefsWids; + QPtrList<KPrefsDialogWid> mPrefsWids; }; diff --git a/libkdepim/libkdepimE.pro b/libkdepim/libkdepimE.pro index 69980e3..2a30ee8 100644 --- a/libkdepim/libkdepimE.pro +++ b/libkdepim/libkdepimE.pro @@ -25,4 +25,5 @@ HEADERS = \ kpimglobalprefs.h \ kprefsdialog.h \ + kprefswidget.h \ ksyncprofile.h \ ksyncprefsdialog.h \ @@ -44,4 +45,5 @@ SOURCES = \ kpimglobalprefs.cpp \ kprefsdialog.cpp \ + kprefswidget.cpp \ ksyncprofile.cpp \ ksyncprefsdialog.cpp \ |