summaryrefslogtreecommitdiffabout
path: root/libkdepim
Unidiff
Diffstat (limited to 'libkdepim') (more/less context) (ignore whitespace changes)
-rw-r--r--libkdepim/kcmconfigs/kdepimconfigwidget.cpp26
-rw-r--r--libkdepim/kcmconfigs/kdepimconfigwidget.h1
2 files changed, 27 insertions, 0 deletions
diff --git a/libkdepim/kcmconfigs/kdepimconfigwidget.cpp b/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
index 5cd845e..4fe1e66 100644
--- a/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
+++ b/libkdepim/kcmconfigs/kdepimconfigwidget.cpp
@@ -38,148 +38,174 @@ $Id$
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 <kprefsdialog.h>
45#include <klocale.h> 45#include <klocale.h>
46#include <kdateedit.h> 46#include <kdateedit.h>
47#include <kglobal.h> 47#include <kglobal.h>
48#include <stdlib.h> 48#include <stdlib.h>
49 49
50/*US 50/*US
51#include <qcheckbox.h> 51#include <qcheckbox.h>
52#include <qframe.h> 52#include <qframe.h>
53#include <qpushbutton.h> 53#include <qpushbutton.h>
54#include <qcombobox.h> 54#include <qcombobox.h>
55#include <qlineedit.h> 55#include <qlineedit.h>
56#include <qlabel.h> 56#include <qlabel.h>
57#include <qfile.h> 57#include <qfile.h>
58 58
59#include <kconfig.h> 59#include <kconfig.h>
60#include <kdebug.h> 60#include <kdebug.h>
61#include <kdialog.h> 61#include <kdialog.h>
62#include <klistview.h> 62#include <klistview.h>
63#include <klocale.h> 63#include <klocale.h>
64#include <kglobal.h> 64#include <kglobal.h>
65#include <kmessagebox.h> 65#include <kmessagebox.h>
66#include <kstandarddirs.h> 66#include <kstandarddirs.h>
67 67
68#ifndef KAB_EMBEDDED 68#ifndef KAB_EMBEDDED
69#include <ktrader.h> 69#include <ktrader.h>
70#else // KAB_EMBEDDED 70#else // KAB_EMBEDDED
71#include <mergewidget.h> 71#include <mergewidget.h>
72#include <distributionlistwidget.h> 72#include <distributionlistwidget.h>
73#endif // KAB_EMBEDDED 73#endif // KAB_EMBEDDED
74 74
75#include "addresseewidget.h" 75#include "addresseewidget.h"
76#include "extensionconfigdialog.h" 76#include "extensionconfigdialog.h"
77#include "extensionwidget.h" 77#include "extensionwidget.h"
78*/ 78*/
79 79
80#include "qapplication.h" 80#include "qapplication.h"
81 81
82#include "kpimglobalprefs.h" 82#include "kpimglobalprefs.h"
83 83
84#include "kdepimconfigwidget.h" 84#include "kdepimconfigwidget.h"
85#include <kprefs.h> 85#include <kprefs.h>
86#include <kmessagebox.h>
86 87
87 88
88KDEPIMConfigWidget::KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name ) 89KDEPIMConfigWidget::KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name )
89 : KPrefsWidget(prefs, parent, name ) 90 : KPrefsWidget(prefs, parent, name )
90{ 91{
91 mExternalAppsMap.insert(ExternalAppHandler::EMAIL, i18n("Email")); 92 mExternalAppsMap.insert(ExternalAppHandler::EMAIL, i18n("Email"));
92 mExternalAppsMap.insert(ExternalAppHandler::PHONE, i18n("Phone")); 93 mExternalAppsMap.insert(ExternalAppHandler::PHONE, i18n("Phone"));
93 mExternalAppsMap.insert(ExternalAppHandler::SMS, i18n("SMS")); 94 mExternalAppsMap.insert(ExternalAppHandler::SMS, i18n("SMS"));
94 mExternalAppsMap.insert(ExternalAppHandler::FAX, i18n("Fax")); 95 mExternalAppsMap.insert(ExternalAppHandler::FAX, i18n("Fax"));
95 mExternalAppsMap.insert(ExternalAppHandler::PAGER, i18n("Pager")); 96 mExternalAppsMap.insert(ExternalAppHandler::PAGER, i18n("Pager"));
96 mExternalAppsMap.insert(ExternalAppHandler::SIP, i18n("SIP")); 97 mExternalAppsMap.insert(ExternalAppHandler::SIP, i18n("SIP"));
97 98
98 99
99 QVBoxLayout *topLayout = new QVBoxLayout( this, 0, 100 QVBoxLayout *topLayout = new QVBoxLayout( this, 0,
100 KDialog::spacingHint() ); 101 KDialog::spacingHint() );
101 102
102 tabWidget = new QTabWidget( this ); 103 tabWidget = new QTabWidget( this );
103 topLayout->addWidget( tabWidget ); 104 topLayout->addWidget( tabWidget );
104 105
105 106
106 setupLocaleTab(); 107 setupLocaleTab();
107 setupLocaleDateTab(); 108 setupLocaleDateTab();
108 setupTimeZoneTab(); 109 setupTimeZoneTab();
109 setupExternalAppTab(); 110 setupExternalAppTab();
110 setupStoreTab(); 111 setupStoreTab();
111 112
112} 113}
113void KDEPIMConfigWidget::showTimeZoneTab() 114void KDEPIMConfigWidget::showTimeZoneTab()
114{ 115{
115 tabWidget->setCurrentPage ( 3 ) ; 116 tabWidget->setCurrentPage ( 3 ) ;
116} 117}
117void KDEPIMConfigWidget::setupStoreTab() 118void KDEPIMConfigWidget::setupStoreTab()
118{ 119{
119 QVBox *storePage = new QVBox( this ); 120 QVBox *storePage = new QVBox( this );
120 new QLabel( i18n("Your current storage dir is:\n%1\nYour mail is stored in:\n(storagedir)/apps/kopiemail/localmail").arg(KGlobal::dirs()->localkdedir()), storePage ); 121 new QLabel( i18n("Your current storage dir is:\n%1\nYour mail is stored in:\n(storagedir)/apps/kopiemail/localmail").arg(KGlobal::dirs()->localkdedir()), storePage );
121 new QLabel( i18n("<b>New data storage dir:</b>"), storePage ); 122 new QLabel( i18n("<b>New data storage dir:</b>"), storePage );
122 mStoreUrl = new KURLRequester( storePage ); 123 mStoreUrl = new KURLRequester( storePage );
123 mStoreUrl->setURL( KGlobal::dirs()->localkdedir() ); 124 mStoreUrl->setURL( KGlobal::dirs()->localkdedir() );
125#ifdef DESKTOP_VERSION
126 QString confFile = qApp->applicationDirPath ()+ "/.microkdehome" ;
127 QFileInfo fi ( confFile );
128 if ( fi.exists() ) {
129 KConfig cfg ( confFile );
130 cfg.setGroup("Global");
131 QString localKdeDir = cfg.readEntry( "MICROKDEHOME", "x_x_x" );
132 if ( localKdeDir != "x_x_x" ) {
133 mStoreUrl->setURL( localKdeDir );
134 qDebug("Reading config from %s ", confFile.latin1());
135 }
136 }
137
138#endif
124 new QLabel( i18n("New dirs are created automatically"), storePage ); 139 new QLabel( i18n("New dirs are created automatically"), storePage );
125 QHBox *bb = new QHBox( storePage ); 140 QHBox *bb = new QHBox( storePage );
126 QPushButton * pb; 141 QPushButton * pb;
127 if ( QApplication::desktop()->width() < 640 ) 142 if ( QApplication::desktop()->width() < 640 )
128 pb = new QPushButton ( i18n("Save"), bb ); 143 pb = new QPushButton ( i18n("Save"), bb );
129 else 144 else
130 pb = new QPushButton ( i18n("Save settings"), bb ); 145 pb = new QPushButton ( i18n("Save settings"), bb );
131 connect(pb, SIGNAL( clicked() ), this, SLOT ( saveStoreSettings() ) ); 146 connect(pb, SIGNAL( clicked() ), this, SLOT ( saveStoreSettings() ) );
132 pb = new QPushButton ( i18n("Save standard"), bb ); 147 pb = new QPushButton ( i18n("Save standard"), bb );
133 connect(pb, SIGNAL( clicked() ), this, SLOT ( setStandardStore() ) ); 148 connect(pb, SIGNAL( clicked() ), this, SLOT ( setStandardStore() ) );
149#ifdef DESKTOP_VERSION
150 pb = new QPushButton ( i18n("Save using LOCAL storage"), bb );
151 connect(pb, SIGNAL( clicked() ), this, SLOT ( setLocalStore() ) );
152#endif
134 new QLabel( i18n("<b>New settings are used\nafter a restart</b>"), storePage ); 153 new QLabel( i18n("<b>New settings are used\nafter a restart</b>"), storePage );
135 new QLabel( i18n("Settings are stored in\n%1").arg(QDir::homeDirPath() + "/.microkdehome" ), storePage ); 154 new QLabel( i18n("Settings are stored in\n%1").arg(QDir::homeDirPath() + "/.microkdehome" ), storePage );
136 tabWidget->addTab( storePage, i18n( "Data storage path" ) ); 155 tabWidget->addTab( storePage, i18n( "Data storage path" ) );
137} 156}
157void KDEPIMConfigWidget::setLocalStore()
158{
159 mStoreUrl->setURL( "LOCAL:kdepimpi" );
160 saveStoreSettings();
161 QString message = i18n("'LOCAL' mode makes is possible to run\nKA/Pi and KO/Pi from a USB memory stick.\nIn LOCAL mode the data is stored\nin a path relative to the executable.\nNote, that in LOCAL mode only addressbook\nresource files in\n <path of the executable>/<dirname after LOCAL:>/apps/kabc/*.vcf\n are supported.\nIf you use the standard addressbook settings\nyou do not have to reconfigure any path,\njust restart the application and import\nyour addressbook and calendar data.");
162 KMessageBox::information( this, message);
163}
138void KDEPIMConfigWidget::setStandardStore() 164void KDEPIMConfigWidget::setStandardStore()
139{ 165{
140 mStoreUrl->setURL( QDir::homeDirPath() + "/kdepim" ); 166 mStoreUrl->setURL( QDir::homeDirPath() + "/kdepim" );
141 saveStoreSettings(); 167 saveStoreSettings();
142} 168}
143void KDEPIMConfigWidget::saveStoreSettings() 169void KDEPIMConfigWidget::saveStoreSettings()
144{ 170{
145 if ( !mStoreUrl->url().isEmpty() ) { 171 if ( !mStoreUrl->url().isEmpty() ) {
146 QString path = QDir::homeDirPath(); 172 QString path = QDir::homeDirPath();
147 QString url = mStoreUrl->url(); 173 QString url = mStoreUrl->url();
148#ifdef DESKTOP_VERSION 174#ifdef DESKTOP_VERSION
149 if ( url.startsWith( "LOCAL:" ) ) { 175 if ( url.startsWith( "LOCAL:" ) ) {
150 path = qApp->applicationDirPath () ; 176 path = qApp->applicationDirPath () ;
151 } 177 }
152#endif 178#endif
153 KConfig cfg ( path + "/.microkdehome" ); 179 KConfig cfg ( path + "/.microkdehome" );
154 cfg.setGroup("Global"); 180 cfg.setGroup("Global");
155 cfg.writeEntry( "MICROKDEHOME", url ); 181 cfg.writeEntry( "MICROKDEHOME", url );
156 qDebug("cfg.writeEntry( MICROKDEHOME, %s ", url.latin1()); 182 qDebug("cfg.writeEntry( MICROKDEHOME, %s ", url.latin1());
157 cfg.sync(); 183 cfg.sync();
158 } else { 184 } else {
159 mStoreUrl->setURL( QDir::homeDirPath() + "/kdepim" ); 185 mStoreUrl->setURL( QDir::homeDirPath() + "/kdepim" );
160 saveStoreSettings(); 186 saveStoreSettings();
161 } 187 }
162} 188}
163void KDEPIMConfigWidget::setupExternalAppTab() 189void KDEPIMConfigWidget::setupExternalAppTab()
164{ 190{
165 QWidget *externalAppsPage = new QWidget( this ); 191 QWidget *externalAppsPage = new QWidget( this );
166 QVBoxLayout* layout = new QVBoxLayout( externalAppsPage, KDialog::marginHintSmall(), 192 QVBoxLayout* layout = new QVBoxLayout( externalAppsPage, KDialog::marginHintSmall(),
167 KDialog::spacingHintSmall() ); 193 KDialog::spacingHintSmall() );
168 194
169 mExternalApps = new QComboBox( externalAppsPage ); 195 mExternalApps = new QComboBox( externalAppsPage );
170 196
171 QMap<ExternalAppHandler::Types, QString>::Iterator it; 197 QMap<ExternalAppHandler::Types, QString>::Iterator it;
172 for( it = mExternalAppsMap.begin(); it != mExternalAppsMap.end(); ++it ) 198 for( it = mExternalAppsMap.begin(); it != mExternalAppsMap.end(); ++it )
173 mExternalApps->insertItem( it.data(), it.key() ); 199 mExternalApps->insertItem( it.data(), it.key() );
174 200
175 layout->addWidget( mExternalApps ); 201 layout->addWidget( mExternalApps );
176 202
177 connect( mExternalApps, SIGNAL( activated( int ) ), 203 connect( mExternalApps, SIGNAL( activated( int ) ),
178 this, SLOT (externalapp_changed( int ) ) ); 204 this, SLOT (externalapp_changed( int ) ) );
179 205
180 206
181 mExternalAppGroupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Used Mail Client" ), externalAppsPage ); 207 mExternalAppGroupBox = new QGroupBox( 0, Qt::Vertical, i18n( "Used Mail Client" ), externalAppsPage );
182 QGridLayout *boxLayout = new QGridLayout( mExternalAppGroupBox->layout(), 4, 2, -1, "gridlayout" ); 208 QGridLayout *boxLayout = new QGridLayout( mExternalAppGroupBox->layout(), 4, 2, -1, "gridlayout" );
183 mExternalAppGroupBox->layout()->setMargin(5); 209 mExternalAppGroupBox->layout()->setMargin(5);
184 210
185 mClient = new QComboBox( mExternalAppGroupBox ); 211 mClient = new QComboBox( mExternalAppGroupBox );
diff --git a/libkdepim/kcmconfigs/kdepimconfigwidget.h b/libkdepim/kcmconfigs/kdepimconfigwidget.h
index c545207..984e4e0 100644
--- a/libkdepim/kcmconfigs/kdepimconfigwidget.h
+++ b/libkdepim/kcmconfigs/kdepimconfigwidget.h
@@ -26,96 +26,97 @@ Enhanced 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#ifndef KDEPIMCONFIGWIDGET_H 31#ifndef KDEPIMCONFIGWIDGET_H
32#define KDEPIMCONFIGWIDGET_H 32#define KDEPIMCONFIGWIDGET_H
33 33
34#include <kprefswidget.h> 34#include <kprefswidget.h>
35#include <kio/kfile/kurlrequester.h> 35#include <kio/kfile/kurlrequester.h>
36#include <qmap.h> 36#include <qmap.h>
37 37
38#include "externalapphandler.h" 38#include "externalapphandler.h"
39 39
40 40
41class QComboBox; 41class QComboBox;
42class QLineEdit; 42class QLineEdit;
43class KPimGlobalPrefs; 43class KPimGlobalPrefs;
44class QGroupBox; 44class QGroupBox;
45class QTabWidget; 45class QTabWidget;
46class KDateEdit; 46class KDateEdit;
47 47
48class KDEPIMConfigWidget : public KPrefsWidget 48class KDEPIMConfigWidget : public KPrefsWidget
49{ 49{
50 Q_OBJECT 50 Q_OBJECT
51 51
52 public: 52 public:
53 KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name = 0 ); 53 KDEPIMConfigWidget(KPimGlobalPrefs *prefs, QWidget *parent, const char *name = 0 );
54 54
55 public slots: 55 public slots:
56 void textChanged( const QString& text ); 56 void textChanged( const QString& text );
57 void showTimeZoneTab(); 57 void showTimeZoneTab();
58 58
59 protected: 59 protected:
60 /** Implement this to read custom configuration widgets. */ 60 /** Implement this to read custom configuration widgets. */
61 virtual void usrReadConfig(); 61 virtual void usrReadConfig();
62 /** Implement this to write custom configuration widgets. */ 62 /** Implement this to write custom configuration widgets. */
63 virtual void usrWriteConfig(); 63 virtual void usrWriteConfig();
64 64
65 65
66 private slots: 66 private slots:
67// void configureExtension(); 67// void configureExtension();
68// void selectionChanged( QListViewItem* ); 68// void selectionChanged( QListViewItem* );
69// void itemClicked( QListViewItem* ); 69// void itemClicked( QListViewItem* );
70 void client_changed( int newClient ); 70 void client_changed( int newClient );
71 void externalapp_changed( int newApp ); 71 void externalapp_changed( int newApp );
72 void saveStoreSettings(); 72 void saveStoreSettings();
73 void setStandardStore(); 73 void setStandardStore();
74 void setLocalStore();
74 75
75 private: 76 private:
76 void setupExternalAppTab(); 77 void setupExternalAppTab();
77 void setupLocaleDateTab(); 78 void setupLocaleDateTab();
78 void setupLocaleTab(); 79 void setupLocaleTab();
79 void setupTimeZoneTab(); 80 void setupTimeZoneTab();
80 void setupStoreTab(); 81 void setupStoreTab();
81 KURLRequester* mStoreUrl; 82 KURLRequester* mStoreUrl;
82 83
83 void setCombo(QComboBox *combo,const QString & text, const QStringList *tags = 0); 84 void setCombo(QComboBox *combo,const QString & text, const QStringList *tags = 0);
84 85
85 86
86 void saveEditFieldSettings(); 87 void saveEditFieldSettings();
87 void updateClientWidgets(); 88 void updateClientWidgets();
88 89
89 QTabWidget *tabWidget; 90 QTabWidget *tabWidget;
90 91
91 92
92 QLineEdit* mUserDateFormatShort; 93 QLineEdit* mUserDateFormatShort;
93 QLineEdit* mUserDateFormatLong; 94 QLineEdit* mUserDateFormatLong;
94 QComboBox* mTimeZoneCombo; 95 QComboBox* mTimeZoneCombo;
95 KDateEdit* mStartDateSavingEdit; 96 KDateEdit* mStartDateSavingEdit;
96 KDateEdit* mEndDateSavingEdit; 97 KDateEdit* mEndDateSavingEdit;
97 98
98// void restoreExtensionSettings(); 99// void restoreExtensionSettings();
99// void saveExtensionSettings(); 100// void saveExtensionSettings();
100 101
101// KListView *mExtensionView; 102// KListView *mExtensionView;
102 103
103// QCheckBox *mNameParsing; 104// QCheckBox *mNameParsing;
104// QCheckBox *mViewsSingleClickBox; 105// QCheckBox *mViewsSingleClickBox;
105// QPushButton *mConfigureButton; 106// QPushButton *mConfigureButton;
106 QComboBox* mExternalApps; 107 QComboBox* mExternalApps;
107 QGroupBox* mExternalAppGroupBox; 108 QGroupBox* mExternalAppGroupBox;
108 109
109 110
110 QComboBox* mClient; 111 QComboBox* mClient;
111 QLineEdit* mChannel; 112 QLineEdit* mChannel;
112 QLineEdit* mMessage; 113 QLineEdit* mMessage;
113 QLineEdit* mParameters; 114 QLineEdit* mParameters;
114 QLineEdit* mMessage2; 115 QLineEdit* mMessage2;
115 QLineEdit* mParameters2; 116 QLineEdit* mParameters2;
116 117
117 ExternalAppHandler::Types mCurrentApp; 118 ExternalAppHandler::Types mCurrentApp;
118 int mCurrentClient; 119 int mCurrentClient;
119 120
120 121
121 int mEmailClient; 122 int mEmailClient;