summaryrefslogtreecommitdiffabout
authorulf69 <ulf69>2004-09-21 19:50:27 (UTC)
committer ulf69 <ulf69>2004-09-21 19:50:27 (UTC)
commit93313aa8d66c01aa0e4562449020af20b5cef0a7 (patch) (side-by-side diff)
tree7bf9930c58b4651a29b5aa4210742340c9439bc8
parentc2cce86fdb2d0b291c3d3bdfa9fac47452153d1a (diff)
downloadkdepimpi-93313aa8d66c01aa0e4562449020af20b5cef0a7.zip
kdepimpi-93313aa8d66c01aa0e4562449020af20b5cef0a7.tar.gz
kdepimpi-93313aa8d66c01aa0e4562449020af20b5cef0a7.tar.bz2
added edit elements for global prefs
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libkdepim/kcmconfigs/kcmkdepimconfig.cpp17
-rw-r--r--libkdepim/kcmconfigs/kcmkdepimconfig.h2
-rw-r--r--libkdepim/kcmconfigs/kdepimconfigwidget.cpp313
-rw-r--r--libkdepim/kcmconfigs/kdepimconfigwidget.h45
-rw-r--r--libkdepim/kpimglobalprefs.cpp21
-rw-r--r--libkdepim/kpimglobalprefs.h15
-rw-r--r--libkdepim/kpimprefs.cpp6
-rw-r--r--libkdepim/kpimprefs.h2
-rw-r--r--libkdepim/kprefsdialog.cpp106
-rw-r--r--libkdepim/kprefsdialog.h70
-rw-r--r--libkdepim/libkdepimE.pro2
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,70 +743,27 @@ 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 \