-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | kaddressbook/kabprefs.cpp | 73 | ||||
-rw-r--r-- | kaddressbook/kabprefs.h | 1 | ||||
-rw-r--r-- | kmicromail/koprefs.h | 2 | ||||
-rw-r--r-- | korganizer/kodialogmanager.cpp | 5 | ||||
-rw-r--r-- | korganizer/koprefs.cpp | 88 | ||||
-rw-r--r-- | korganizer/koprefs.h | 16 | ||||
-rw-r--r-- | korganizer/ktimeedit.cpp | 5 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 3 | ||||
-rw-r--r-- | libkdepim/kpimglobalprefs.cpp | 76 | ||||
-rw-r--r-- | libkdepim/kpimglobalprefs.h | 2 | ||||
-rw-r--r-- | microkde/kstaticdeleter.h | 5 | ||||
-rw-r--r-- | pwmanager/pwmanager/pwmprefs.cpp | 12 |
13 files changed, 105 insertions, 185 deletions
@@ -1,9 +1,9 @@ | |||
1 | ############################################################################# | 1 | ############################################################################# |
2 | # Makefile for building: kdepim-desktop | 2 | # Makefile for building: kdepim-desktop |
3 | # Generated by qmake (1.07a) (Qt 3.3.3) on: Sat Oct 23 09:29:11 2004 | 3 | # Generated by qmake (1.07a) (Qt 3.3.3) on: Sat Oct 23 12:23:49 2004 |
4 | # Project: kdepim-desktop.pro | 4 | # Project: kdepim-desktop.pro |
5 | # Template: subdirs | 5 | # Template: subdirs |
6 | # Command: $(QMAKE) "CONFIG+=thread" "CONFIG+=debug" -o Makefile kdepim-desktop.pro | 6 | # Command: $(QMAKE) "CONFIG+=thread" "CONFIG+=debug" -o Makefile kdepim-desktop.pro |
7 | ############################################################################# | 7 | ############################################################################# |
8 | 8 | ||
9 | MAKEFILE =Makefile | 9 | MAKEFILE =Makefile |
diff --git a/kaddressbook/kabprefs.cpp b/kaddressbook/kabprefs.cpp index 01c935f..3cbcc9a 100644 --- a/kaddressbook/kabprefs.cpp +++ b/kaddressbook/kabprefs.cpp | |||
@@ -40,19 +40,17 @@ | |||
40 | 40 | ||
41 | #ifdef DESKTOP_VERSION | 41 | #ifdef DESKTOP_VERSION |
42 | #include <qapplication.h> | 42 | #include <qapplication.h> |
43 | #endif | 43 | #endif |
44 | 44 | ||
45 | KABPrefs *KABPrefs::sInstance = 0; | 45 | KABPrefs *KABPrefs::sInstance = 0; |
46 | static KStaticDeleter<KABPrefs> staticDeleter; | 46 | static KStaticDeleter<KABPrefs> staticDeleterAB; |
47 | 47 | ||
48 | KABPrefs::KABPrefs() | 48 | KABPrefs::KABPrefs() |
49 | : KPimPrefs("kaddressbookrc") | 49 | : KPimPrefs("kaddressbookrc") |
50 | { | 50 | { |
51 | |||
52 | mLocaleDict = 0; | ||
53 | mDetailsFont = QFont("helvetica",12); | 51 | mDetailsFont = QFont("helvetica",12); |
54 | KPrefs::setCurrentGroup( "Views" ); | 52 | KPrefs::setCurrentGroup( "Views" ); |
55 | addItemBool( "HonorSingleClick", &mHonorSingleClick, false ); | 53 | addItemBool( "HonorSingleClick", &mHonorSingleClick, false ); |
56 | 54 | ||
57 | KPrefs::setCurrentGroup( "General" ); | 55 | KPrefs::setCurrentGroup( "General" ); |
58 | addItemBool( "AutomaticNameParsing", &mAutomaticNameParsing, true ); | 56 | addItemBool( "AutomaticNameParsing", &mAutomaticNameParsing, true ); |
@@ -93,25 +91,24 @@ KABPrefs::KABPrefs() | |||
93 | 91 | ||
94 | } | 92 | } |
95 | 93 | ||
96 | KABPrefs::~KABPrefs() | 94 | KABPrefs::~KABPrefs() |
97 | { | 95 | { |
98 | //qDebug("KABPrefs::~KABPrefs() "); | 96 | //qDebug("KABPrefs::~KABPrefs() "); |
99 | setLocaleDict( 0 ); | 97 | if (sInstance == this) |
100 | if ( mLocaleDict ) | 98 | sInstance = staticDeleterAB.setObject(0); |
101 | delete mLocaleDict; | ||
102 | } | 99 | } |
103 | 100 | ||
104 | KABPrefs *KABPrefs::instance() | 101 | KABPrefs *KABPrefs::instance() |
105 | { | 102 | { |
106 | if ( !sInstance ) { | 103 | if ( !sInstance ) { |
107 | #ifdef KAB_EMBEDDED | 104 | #ifdef KAB_EMBEDDED |
108 | sInstance = staticDeleter.setObject( new KABPrefs() ); | 105 | sInstance = staticDeleterAB.setObject( new KABPrefs() ); |
109 | #else //KAB_EMBEDDED | 106 | #else //KAB_EMBEDDED |
110 | //US the following line has changed ???. Why | 107 | //US the following line has changed ???. Why |
111 | staticDeleter.setObject( sInstance, new KABPrefs() ); | 108 | staticDeleterAB.setObject( sInstance, new KABPrefs() ); |
112 | #endif //KAB_EMBEDDED | 109 | #endif //KAB_EMBEDDED |
113 | sInstance->readConfig(); | 110 | sInstance->readConfig(); |
114 | } | 111 | } |
115 | 112 | ||
116 | return sInstance; | 113 | return sInstance; |
117 | } | 114 | } |
@@ -128,72 +125,12 @@ void KABPrefs::setCategoryDefaults() | |||
128 | KConfig* KABPrefs::getConfig() | 125 | KConfig* KABPrefs::getConfig() |
129 | { | 126 | { |
130 | return config(); | 127 | return config(); |
131 | } | 128 | } |
132 | void KABPrefs::usrReadConfig() | 129 | void KABPrefs::usrReadConfig() |
133 | { | 130 | { |
134 | QString fileName ; | ||
135 | #ifndef DESKTOP_VERSION | ||
136 | fileName= QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/"; | ||
137 | #else | ||
138 | fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/"; | ||
139 | #endif | ||
140 | int mPreferredLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; | ||
141 | mLocaleDict = 0; | ||
142 | if ( mPreferredLanguage > 0 && mPreferredLanguage < 5 ) { | ||
143 | |||
144 | if ( mPreferredLanguage == 1 ) | ||
145 | fileName = fileName+"germantranslation.txt"; | ||
146 | else if ( mPreferredLanguage == 4 ) | ||
147 | fileName = fileName+"usertranslation.txt"; | ||
148 | else if ( mPreferredLanguage == 2 ) | ||
149 | fileName = fileName+"frenchtranslation.txt"; | ||
150 | else if ( mPreferredLanguage == 3 ) | ||
151 | fileName = fileName+"italiantranslation.txt"; | ||
152 | QFile file( fileName ); | ||
153 | if (file.open( IO_ReadOnly ) ) { | ||
154 | QTextStream ts( &file ); | ||
155 | ts.setEncoding( QTextStream::Latin1 ); | ||
156 | //ts.setCodec( QTextCodec::latin1 ); | ||
157 | QString text = ts.read(); | ||
158 | file.close(); | ||
159 | text.replace( QRegExp("\\\\n"), "\n" ); | ||
160 | QString line; | ||
161 | QString we; | ||
162 | QString wt; | ||
163 | int br = 0; | ||
164 | int nbr; | ||
165 | nbr = text.find ( "},", br ); | ||
166 | line = text.mid( br, nbr - br ); | ||
167 | br = nbr+1; | ||
168 | int se, ee, st, et; | ||
169 | mLocaleDict = new QDict<QString>; | ||
170 | QString end = "{ \"\",\"\" }"; | ||
171 | while ( (line != end) && (br > 1) ) { | ||
172 | //qDebug("%d *%s* ", br, line.latin1()); | ||
173 | se = line.find("\"")+1; | ||
174 | et = line.findRev("\"",-1); | ||
175 | ee = line.find("\",\""); | ||
176 | st = ee+3; | ||
177 | we = line.mid( se, ee-se ); | ||
178 | wt = line.mid( st, et-st ); | ||
179 | //qDebug("*%s* *%s* ", we.latin1(), wt.latin1()); | ||
180 | mLocaleDict->insert( we, new QString (wt) ); | ||
181 | nbr = text.find ( "}", br ); | ||
182 | line = text.mid( br, nbr - br ); | ||
183 | br = nbr+1; | ||
184 | } | ||
185 | //qDebug("end *%s* ", end.latin1()); | ||
186 | |||
187 | setLocaleDict( mLocaleDict ); | ||
188 | } else { | ||
189 | qDebug("KO: Cannot find translation file %s",fileName.latin1() ); | ||
190 | } | ||
191 | |||
192 | |||
193 | } | ||
194 | KPimPrefs::usrReadConfig(); | 131 | KPimPrefs::usrReadConfig(); |
195 | } | 132 | } |
196 | 133 | ||
197 | 134 | ||
198 | /*US | 135 | /*US |
199 | void KABPrefs::usrSetDefaults() | 136 | void KABPrefs::usrSetDefaults() |
diff --git a/kaddressbook/kabprefs.h b/kaddressbook/kabprefs.h index 1098f4c..cc8413e 100644 --- a/kaddressbook/kabprefs.h +++ b/kaddressbook/kabprefs.h | |||
@@ -86,11 +86,10 @@ class KABPrefs : public KPimPrefs | |||
86 | void setCategoryDefaults(); | 86 | void setCategoryDefaults(); |
87 | QFont mDetailsFont; | 87 | QFont mDetailsFont; |
88 | 88 | ||
89 | private: | 89 | private: |
90 | KABPrefs(); | 90 | KABPrefs(); |
91 | 91 | ||
92 | QDict<QString> *mLocaleDict; | ||
93 | static KABPrefs *sInstance; | 92 | static KABPrefs *sInstance; |
94 | }; | 93 | }; |
95 | 94 | ||
96 | #endif | 95 | #endif |
diff --git a/kmicromail/koprefs.h b/kmicromail/koprefs.h index a47642b..f0a4463 100644 --- a/kmicromail/koprefs.h +++ b/kmicromail/koprefs.h | |||
@@ -20,13 +20,12 @@ | |||
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 | #ifndef KOPREFS_H | 23 | #ifndef KOPREFS_H |
24 | #define KOPREFS_H | 24 | #define KOPREFS_H |
25 | 25 | ||
26 | #include <qdict.h> | ||
27 | 26 | ||
28 | #include <libkdepim/kpimprefs.h> | 27 | #include <libkdepim/kpimprefs.h> |
29 | 28 | ||
30 | class KConfig; | 29 | class KConfig; |
31 | class QFont; | 30 | class QFont; |
32 | class QColor; | 31 | class QColor; |
@@ -59,13 +58,12 @@ class KOPrefs : public KPimPrefs | |||
59 | private: | 58 | private: |
60 | /** Constructor disabled for public. Use instance() to create a KOPrefs | 59 | /** Constructor disabled for public. Use instance() to create a KOPrefs |
61 | object. */ | 60 | object. */ |
62 | KOPrefs(); | 61 | KOPrefs(); |
63 | 62 | ||
64 | static KOPrefs *mInstance; | 63 | static KOPrefs *mInstance; |
65 | QDict<QString> *mLocaleDict; | ||
66 | public: | 64 | public: |
67 | // preferences data | 65 | // preferences data |
68 | KConfig* getConfig(); | 66 | KConfig* getConfig(); |
69 | QFont mAppFont; | 67 | QFont mAppFont; |
70 | QFont mComposeFont; | 68 | QFont mComposeFont; |
71 | QFont mReadFont; | 69 | QFont mReadFont; |
diff --git a/korganizer/kodialogmanager.cpp b/korganizer/kodialogmanager.cpp index 58198a2..db7c3f2 100644 --- a/korganizer/kodialogmanager.cpp +++ b/korganizer/kodialogmanager.cpp | |||
@@ -86,13 +86,13 @@ void KODialogManager::createOutgoingDialog() | |||
86 | mMainView,SIGNAL(numOutgoingChanged(int))); | 86 | mMainView,SIGNAL(numOutgoingChanged(int))); |
87 | } | 87 | } |
88 | } | 88 | } |
89 | 89 | ||
90 | void KODialogManager::showOptionsDialog( bool showSync ) | 90 | void KODialogManager::showOptionsDialog( bool showSync ) |
91 | { | 91 | { |
92 | int curLanguage = KOPrefs::instance()->mPreferredLanguage; | 92 | |
93 | if (!mOptionsDialog) { | 93 | if (!mOptionsDialog) { |
94 | mOptionsDialog = new KOPrefsDialog(mMainView); | 94 | mOptionsDialog = new KOPrefsDialog(mMainView); |
95 | //mOptionsDialog->readConfig(); | 95 | //mOptionsDialog->readConfig(); |
96 | connect(mOptionsDialog,SIGNAL(configChanged()), | 96 | connect(mOptionsDialog,SIGNAL(configChanged()), |
97 | mMainView,SLOT(updateConfig())); | 97 | mMainView,SLOT(updateConfig())); |
98 | //connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()), | 98 | //connect(mCategoryEditDialog,SIGNAL(categoryConfigChanged()), |
@@ -105,14 +105,13 @@ void KODialogManager::showOptionsDialog( bool showSync ) | |||
105 | #else | 105 | #else |
106 | mOptionsDialog->show(); | 106 | mOptionsDialog->show(); |
107 | #endif | 107 | #endif |
108 | if ( showSync ) | 108 | if ( showSync ) |
109 | mOptionsDialog->showSyncPage(); | 109 | mOptionsDialog->showSyncPage(); |
110 | mOptionsDialog->exec(); | 110 | mOptionsDialog->exec(); |
111 | if ( curLanguage != KOPrefs::instance()->mPreferredLanguage ) | 111 | |
112 | KOPrefs::instance()->mLanguageChanged = true; | ||
113 | } | 112 | } |
114 | void KODialogManager::showSyncOptions() | 113 | void KODialogManager::showSyncOptions() |
115 | { | 114 | { |
116 | showOptionsDialog( true ); | 115 | showOptionsDialog( true ); |
117 | 116 | ||
118 | } | 117 | } |
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp index ba1c6d1..f44debc 100644 --- a/korganizer/koprefs.cpp +++ b/korganizer/koprefs.cpp | |||
@@ -43,25 +43,19 @@ | |||
43 | #include <kstaticdeleter.h> | 43 | #include <kstaticdeleter.h> |
44 | #include <libkdepim/kpimglobalprefs.h> | 44 | #include <libkdepim/kpimglobalprefs.h> |
45 | 45 | ||
46 | #include "koprefs.h" | 46 | #include "koprefs.h" |
47 | #include "mainwindow.h" | 47 | #include "mainwindow.h" |
48 | 48 | ||
49 | const char *germanwords[][2] = { | ||
50 | #include "wordsgerman.h" | ||
51 | "", "" | ||
52 | }; | ||
53 | |||
54 | KOPrefs *KOPrefs::mInstance = 0; | 49 | KOPrefs *KOPrefs::mInstance = 0; |
55 | static KStaticDeleter<KOPrefs> insd; | 50 | static KStaticDeleter<KOPrefs> insd; |
56 | 51 | ||
57 | KOPrefs::KOPrefs() : | 52 | KOPrefs::KOPrefs() : |
58 | KPimPrefs("korganizerrc") | 53 | KPimPrefs("korganizerrc") |
59 | { | 54 | { |
60 | mCategoryColors.setAutoDelete(true); | 55 | mCategoryColors.setAutoDelete(true); |
61 | mLocaleDict = 0; | ||
62 | fillMailDefaults(); | 56 | fillMailDefaults(); |
63 | mDefaultCategoryColor = QColor(175,210,255);//196,196,196); | 57 | mDefaultCategoryColor = QColor(175,210,255);//196,196,196); |
64 | QColor defaultHolidayColor = QColor(255,0,0); | 58 | QColor defaultHolidayColor = QColor(255,0,0); |
65 | QColor defaultHighlightColor = QColor(129,112,255);//64,64,255); | 59 | QColor defaultHighlightColor = QColor(129,112,255);//64,64,255); |
66 | QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128); | 60 | QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128); |
67 | QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160); | 61 | QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160); |
@@ -97,13 +91,13 @@ KOPrefs::KOPrefs() : | |||
97 | addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true); | 91 | addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true); |
98 | addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,false); | 92 | addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,false); |
99 | addItemBool("ShowIconNextDays",&mShowIconNextDays,true); | 93 | addItemBool("ShowIconNextDays",&mShowIconNextDays,true); |
100 | addItemBool("ShowIconNext",&mShowIconNext,true); | 94 | addItemBool("ShowIconNext",&mShowIconNext,true); |
101 | addItemBool("ShowIconJournal",&mShowIconJournal,true); | 95 | addItemBool("ShowIconJournal",&mShowIconJournal,true); |
102 | addItemBool("ShowIconStretch",&mShowIconStretch,true); | 96 | addItemBool("ShowIconStretch",&mShowIconStretch,true); |
103 | addItemBool("LanguageChanged",&mLanguageChanged,false); | 97 | addItemInt("LastLoadedLanguage",&mOldLanguage,0); |
104 | 98 | ||
105 | addItemBool("AskForQuit",&mAskForQuit,false); | 99 | addItemBool("AskForQuit",&mAskForQuit,false); |
106 | 100 | ||
107 | #ifndef DESKTOP_VERSION | 101 | #ifndef DESKTOP_VERSION |
108 | addItemBool("ShowFullMenu",&mShowFullMenu,false); | 102 | addItemBool("ShowFullMenu",&mShowFullMenu,false); |
109 | #else | 103 | #else |
@@ -201,19 +195,13 @@ KOPrefs::KOPrefs() : | |||
201 | addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" ); | 195 | addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" ); |
202 | addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" ); | 196 | addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" ); |
203 | addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" ); | 197 | addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" ); |
204 | 198 | ||
205 | 199 | ||
206 | KPrefs::setCurrentGroup("Locale"); | 200 | KPrefs::setCurrentGroup("Locale"); |
207 | addItemInt("PreferredLanguage",&mPreferredLanguage,0); | ||
208 | addItemInt("PreferredTime",&mPreferredTime,0); | ||
209 | addItemInt("PreferredDate",&mPreferredDate,0); | ||
210 | addItemBool("WeekStartsOnSunday",&mWeekStartsOnSunday,false); | ||
211 | addItemBool("ShortDateInViewer",&mShortDateInViewer,false); | 201 | addItemBool("ShortDateInViewer",&mShortDateInViewer,false); |
212 | addItemString("UserDateFormatLong", &mUserDateFormatLong, "%A %d %b %y"); | ||
213 | addItemString("UserDateFormatShort", &mUserDateFormatShort, "%aK %d.%m.%y"); | ||
214 | 202 | ||
215 | 203 | ||
216 | KPrefs::setCurrentGroup("Colors"); | 204 | KPrefs::setCurrentGroup("Colors"); |
217 | addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); | 205 | addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); |
218 | addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); | 206 | addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); |
219 | addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); | 207 | addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); |
@@ -313,15 +301,13 @@ KOPrefs::KOPrefs() : | |||
313 | 301 | ||
314 | 302 | ||
315 | KOPrefs::~KOPrefs() | 303 | KOPrefs::~KOPrefs() |
316 | { | 304 | { |
317 | if (mInstance == this) | 305 | if (mInstance == this) |
318 | mInstance = insd.setObject(0); | 306 | mInstance = insd.setObject(0); |
319 | setLocaleDict( 0 ); | 307 | |
320 | if ( mLocaleDict ) | ||
321 | delete mLocaleDict; | ||
322 | //qDebug("KOPrefs::~KOPrefs() "); | 308 | //qDebug("KOPrefs::~KOPrefs() "); |
323 | } | 309 | } |
324 | 310 | ||
325 | 311 | ||
326 | KOPrefs *KOPrefs::instance() | 312 | KOPrefs *KOPrefs::instance() |
327 | { | 313 | { |
@@ -374,86 +360,22 @@ QStringList KOPrefs::getDefaultList() | |||
374 | retval.sort(); | 360 | retval.sort(); |
375 | return retval; | 361 | return retval; |
376 | } | 362 | } |
377 | 363 | ||
378 | void KOPrefs::usrReadConfig() | 364 | void KOPrefs::usrReadConfig() |
379 | { | 365 | { |
380 | mPreferredLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; | ||
381 | mLocaleDict = 0; | ||
382 | // pending LR fix translation | ||
383 | // qDebug("KOPrefs::usrReadConfig() fix translation "); | ||
384 | if ( mPreferredLanguage > 0 && mPreferredLanguage < 5 ) { | ||
385 | if ( mPreferredLanguage == 1 ) { | ||
386 | mLocaleDict = new QDict<QString>; | ||
387 | int i = 0; | ||
388 | QString fw ( germanwords[i] [0]); | ||
389 | while ( !fw.isEmpty() ) { | ||
390 | mLocaleDict->insert( fw, new QString (germanwords[i] [1] )); | ||
391 | ++i; | ||
392 | fw = germanwords[i] [0]; | ||
393 | } | ||
394 | |||
395 | setLocaleDict( mLocaleDict ); | ||
396 | } else { | ||
397 | QString fileName ; | ||
398 | if ( mPreferredLanguage == 4 ) | ||
399 | fileName = MainWindow::resourcePath()+"usertranslation.txt"; | ||
400 | else if ( mPreferredLanguage == 2 ) | ||
401 | fileName = MainWindow::resourcePath()+"frenchtranslation.txt"; | ||
402 | else if ( mPreferredLanguage == 3 ) | ||
403 | fileName = MainWindow::resourcePath()+"italiantranslation.txt"; | ||
404 | QFile file( fileName ); | ||
405 | if (file.open( IO_ReadOnly ) ) { | ||
406 | QTextStream ts( &file ); | ||
407 | ts.setEncoding( QTextStream::Latin1 ); | ||
408 | //ts.setCodec( QTextCodec::latin1 ); | ||
409 | QString text = ts.read(); | ||
410 | file.close(); | ||
411 | text.replace( QRegExp("\\\\n"), "\n" ); | ||
412 | QString line; | ||
413 | QString we; | ||
414 | QString wt; | ||
415 | int br = 0; | ||
416 | int nbr; | ||
417 | nbr = text.find ( "},", br ); | ||
418 | line = text.mid( br, nbr - br ); | ||
419 | br = nbr+1; | ||
420 | int se, ee, st, et; | ||
421 | mLocaleDict = new QDict<QString>; | ||
422 | QString end = "{ \"\",\"\" }"; | ||
423 | while ( (line != end) && (br > 1) ) { | ||
424 | //qDebug("%d *%s* ", br, line.latin1()); | ||
425 | se = line.find("\"")+1; | ||
426 | et = line.findRev("\"",-1); | ||
427 | ee = line.find("\",\""); | ||
428 | st = ee+3; | ||
429 | we = line.mid( se, ee-se ); | ||
430 | wt = line.mid( st, et-st ); | ||
431 | //qDebug("*%s* *%s* ", we.latin1(), wt.latin1()); | ||
432 | mLocaleDict->insert( we, new QString (wt) ); | ||
433 | nbr = text.find ( "}", br ); | ||
434 | line = text.mid( br, nbr - br ); | ||
435 | br = nbr+1; | ||
436 | } | ||
437 | //qDebug("end *%s* ", end.latin1()); | ||
438 | |||
439 | setLocaleDict( mLocaleDict ); | ||
440 | } else { | ||
441 | qDebug("KO: Cannot find translation file %s",fileName.latin1() ); | ||
442 | } | ||
443 | |||
444 | } | ||
445 | } | ||
446 | config()->setGroup("General"); | 366 | config()->setGroup("General"); |
447 | 367 | ||
448 | mCustomCategories = config()->readListEntry("Custom Categories"); | 368 | mCustomCategories = config()->readListEntry("Custom Categories"); |
449 | if ( KOPrefs::instance()->mLanguageChanged ) { | 369 | if ( KPimGlobalPrefs::instance()->mPreferredLanguage != mOldLanguage ) { |
450 | mLocationDefaults.clear(); | 370 | mLocationDefaults.clear(); |
451 | mEventSummaryUser.clear(); | 371 | mEventSummaryUser.clear(); |
452 | mTodoSummaryUser.clear(); | 372 | mTodoSummaryUser.clear(); |
453 | } | 373 | } |
374 | mOldLoadedLanguage = mOldLanguage ; | ||
375 | mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; | ||
454 | if (mLocationDefaults.isEmpty()) { | 376 | if (mLocationDefaults.isEmpty()) { |
455 | mLocationDefaults << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") | 377 | mLocationDefaults << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") |
456 | << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") | 378 | << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") |
457 | << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; | 379 | << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; |
458 | // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") | 380 | // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") |
459 | mLocationDefaults.sort(); | 381 | mLocationDefaults.sort(); |
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h index c74b0ef..0656644 100644 --- a/korganizer/koprefs.h +++ b/korganizer/koprefs.h | |||
@@ -20,15 +20,15 @@ | |||
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 | #ifndef KOPREFS_H | 23 | #ifndef KOPREFS_H |
24 | #define KOPREFS_H | 24 | #define KOPREFS_H |
25 | 25 | ||
26 | #include <qdict.h> | ||
27 | 26 | ||
28 | #include <libkdepim/kpimprefs.h> | 27 | #include <libkdepim/kpimprefs.h> |
28 | #include <qdict.h> | ||
29 | 29 | ||
30 | class KConfig; | 30 | class KConfig; |
31 | class QFont; | 31 | class QFont; |
32 | class QColor; | 32 | class QColor; |
33 | class QStringList; | 33 | class QStringList; |
34 | 34 | ||
@@ -67,13 +67,12 @@ class KOPrefs : public KPimPrefs | |||
67 | private: | 67 | private: |
68 | /** Constructor disabled for public. Use instance() to create a KOPrefs | 68 | /** Constructor disabled for public. Use instance() to create a KOPrefs |
69 | object. */ | 69 | object. */ |
70 | KOPrefs(); | 70 | KOPrefs(); |
71 | 71 | ||
72 | static KOPrefs *mInstance; | 72 | static KOPrefs *mInstance; |
73 | QDict<QString> *mLocaleDict; | ||
74 | QStringList getDefaultList(); | 73 | QStringList getDefaultList(); |
75 | public: | 74 | public: |
76 | // preferences data | 75 | // preferences data |
77 | KConfig* getConfig(); | 76 | KConfig* getConfig(); |
78 | void setFullName(const QString &); | 77 | void setFullName(const QString &); |
79 | QString fullName(); | 78 | QString fullName(); |
@@ -155,13 +154,12 @@ class KOPrefs : public KPimPrefs | |||
155 | bool mShowCompletedTodo; | 154 | bool mShowCompletedTodo; |
156 | bool mMarcusBainsEnabled; | 155 | bool mMarcusBainsEnabled; |
157 | int mNextXDays; | 156 | int mNextXDays; |
158 | int mWhatsNextDays; | 157 | int mWhatsNextDays; |
159 | int mWhatsNextPrios; | 158 | int mWhatsNextPrios; |
160 | bool mEnableQuickTodo; | 159 | bool mEnableQuickTodo; |
161 | bool mLanguageChanged; | ||
162 | 160 | ||
163 | bool mCompactDialogs; | 161 | bool mCompactDialogs; |
164 | bool mVerticalScreen; | 162 | bool mVerticalScreen; |
165 | 163 | ||
166 | bool mShowIconNewTodo; | 164 | bool mShowIconNewTodo; |
167 | bool mShowIconNewEvent; | 165 | bool mShowIconNewEvent; |
@@ -250,27 +248,19 @@ class KOPrefs : public KPimPrefs | |||
250 | 248 | ||
251 | bool mUseInternalAlarmNotification; | 249 | bool mUseInternalAlarmNotification; |
252 | int mAlarmPlayBeeps; | 250 | int mAlarmPlayBeeps; |
253 | int mAlarmSuspendTime; | 251 | int mAlarmSuspendTime; |
254 | int mAlarmSuspendCount; | 252 | int mAlarmSuspendCount; |
255 | int mAlarmBeepInterval; | 253 | int mAlarmBeepInterval; |
254 | int mOldLanguage; | ||
255 | int mOldLoadedLanguage; | ||
256 | 256 | ||
257 | 257 | ||
258 | QString mActiveSyncPort; | 258 | QString mActiveSyncPort; |
259 | QString mActiveSyncIP; | 259 | QString mActiveSyncIP; |
260 | 260 | ||
261 | |||
262 | //US I copied the following settings into KPimGlobalPrefs | ||
263 | // that allows us later to easily remove the settings from here. | ||
264 | int mPreferredDate; | ||
265 | QString mUserDateFormatLong; | ||
266 | QString mUserDateFormatShort; | ||
267 | int mPreferredLanguage; | ||
268 | int mPreferredTime; | ||
269 | bool mWeekStartsOnSunday; | ||
270 | |||
271 | private: | 261 | private: |
272 | QDict<QColor> mCategoryColors; | 262 | QDict<QColor> mCategoryColors; |
273 | QColor mDefaultCategoryColor; | 263 | QColor mDefaultCategoryColor; |
274 | 264 | ||
275 | QFont mDefaultTimeBarFont; | 265 | QFont mDefaultTimeBarFont; |
276 | QFont mDefaultViewFont; | 266 | QFont mDefaultViewFont; |
diff --git a/korganizer/ktimeedit.cpp b/korganizer/ktimeedit.cpp index cf07a1a..f5a1c50 100644 --- a/korganizer/ktimeedit.cpp +++ b/korganizer/ktimeedit.cpp | |||
@@ -28,12 +28,13 @@ | |||
28 | #include <qapplication.h> | 28 | #include <qapplication.h> |
29 | 29 | ||
30 | #include <kmessagebox.h> | 30 | #include <kmessagebox.h> |
31 | #include <kglobal.h> | 31 | #include <kglobal.h> |
32 | #include <kdebug.h> | 32 | #include <kdebug.h> |
33 | #include <klocale.h> | 33 | #include <klocale.h> |
34 | #include <kpimglobalprefs.h> | ||
34 | 35 | ||
35 | #include "ktimeedit.h" | 36 | #include "ktimeedit.h" |
36 | #include "koprefs.h" | 37 | #include "koprefs.h" |
37 | #include <qvalidator.h> | 38 | #include <qvalidator.h> |
38 | 39 | ||
39 | // Validator for a time value with only hours and minutes (no seconds) | 40 | // Validator for a time value with only hours and minutes (no seconds) |
@@ -108,13 +109,13 @@ KOTimeEdit::KOTimeEdit(QWidget *parent, QTime qt, const char *name) | |||
108 | 109 | ||
109 | connect(this, SIGNAL(activated(int)), this, SLOT(activ(int))); | 110 | connect(this, SIGNAL(activated(int)), this, SLOT(activ(int))); |
110 | connect(this, SIGNAL(highlighted(int)), this, SLOT(hilit(int))); | 111 | connect(this, SIGNAL(highlighted(int)), this, SLOT(hilit(int))); |
111 | connect(this,SIGNAL(textChanged(const QString&)),this,SLOT(changedText())); | 112 | connect(this,SIGNAL(textChanged(const QString&)),this,SLOT(changedText())); |
112 | QFontMetrics fm ( font() ); | 113 | QFontMetrics fm ( font() ); |
113 | QString timeString = "24:00"; | 114 | QString timeString = "24:00"; |
114 | if ( KOPrefs::instance()->mPreferredTime == 1 ) | 115 | if ( KPimGlobalPrefs::instance()->mPreferredTime == 1 ) |
115 | timeString = "02:00pm"; | 116 | timeString = "02:00pm"; |
116 | int addSpace = 32; | 117 | int addSpace = 32; |
117 | if ( QApplication::desktop()->width() > 320 ) | 118 | if ( QApplication::desktop()->width() > 320 ) |
118 | timeString += ":00"; | 119 | timeString += ":00"; |
119 | setFixedWidth(fm.width( timeString ) + 32 ); | 120 | setFixedWidth(fm.width( timeString ) + 32 ); |
120 | 121 | ||
@@ -235,13 +236,13 @@ void KOTimeEdit::setSelect( int from, int to ) | |||
235 | 236 | ||
236 | 237 | ||
237 | void KOTimeEdit::keyPressEvent(QKeyEvent *e) | 238 | void KOTimeEdit::keyPressEvent(QKeyEvent *e) |
238 | { | 239 | { |
239 | 240 | ||
240 | qApp->processEvents(); | 241 | qApp->processEvents(); |
241 | bool hour12Format = ( KOPrefs::instance()->mPreferredTime == 1 ); | 242 | bool hour12Format = ( KPimGlobalPrefs::instance()->mPreferredTime == 1 ); |
242 | int maxpos = hour12Format?7:5; | 243 | int maxpos = hour12Format?7:5; |
243 | if ( e->isAutoRepeat() && !mFlagKeyPressed ) { | 244 | if ( e->isAutoRepeat() && !mFlagKeyPressed ) { |
244 | e->ignore(); | 245 | e->ignore(); |
245 | // qDebug(" ignore %d",e->isAutoRepeat() ); | 246 | // qDebug(" ignore %d",e->isAutoRepeat() ); |
246 | return; | 247 | return; |
247 | } | 248 | } |
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index fbfcd20..dc2026b 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -222,16 +222,15 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : | |||
222 | 222 | ||
223 | QTime neededSaveTime = QDateTime::currentDateTime().time(); | 223 | QTime neededSaveTime = QDateTime::currentDateTime().time(); |
224 | mView->openCalendar( defaultFileName() ); | 224 | mView->openCalendar( defaultFileName() ); |
225 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); | 225 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); |
226 | qDebug("KO: Calendar loading time: %d ms",msNeeded ); | 226 | qDebug("KO: Calendar loading time: %d ms",msNeeded ); |
227 | 227 | ||
228 | if ( KOPrefs::instance()->mLanguageChanged ) { | 228 | if ( KPimGlobalPrefs::instance()->mPreferredLanguage != KOPrefs::instance()->mOldLoadedLanguage ) { |
229 | KOPrefs::instance()->setCategoryDefaults(); | 229 | KOPrefs::instance()->setCategoryDefaults(); |
230 | int count = mView->addCategories(); | 230 | int count = mView->addCategories(); |
231 | KOPrefs::instance()->mLanguageChanged = false; | ||
232 | } | 231 | } |
233 | processIncidenceSelection( 0 ); | 232 | processIncidenceSelection( 0 ); |
234 | connect( mView, SIGNAL( incidenceSelected( Incidence * ) ), | 233 | connect( mView, SIGNAL( incidenceSelected( Incidence * ) ), |
235 | SLOT( processIncidenceSelection( Incidence * ) ) ); | 234 | SLOT( processIncidenceSelection( Incidence * ) ) ); |
236 | connect( mView, SIGNAL( modifiedChanged( bool ) ), | 235 | connect( mView, SIGNAL( modifiedChanged( bool ) ), |
237 | SLOT( slotModifiedChanged( bool ) ) ); | 236 | SLOT( slotModifiedChanged( bool ) ) ); |
diff --git a/libkdepim/kpimglobalprefs.cpp b/libkdepim/kpimglobalprefs.cpp index 0a580ca..5298f0c 100644 --- a/libkdepim/kpimglobalprefs.cpp +++ b/libkdepim/kpimglobalprefs.cpp | |||
@@ -32,22 +32,25 @@ $Id$ | |||
32 | #include <kconfig.h> | 32 | #include <kconfig.h> |
33 | #include <klocale.h> | 33 | #include <klocale.h> |
34 | #include <kdebug.h> | 34 | #include <kdebug.h> |
35 | #include <kstaticdeleter.h> | 35 | #include <kstaticdeleter.h> |
36 | 36 | ||
37 | #include <qregexp.h> | 37 | #include <qregexp.h> |
38 | #include <qfile.h> | ||
39 | #include <qtextstream.h> | ||
40 | #include <qapplication.h> | ||
38 | #include "kpimglobalprefs.h" | 41 | #include "kpimglobalprefs.h" |
39 | 42 | ||
40 | KPimGlobalPrefs *KPimGlobalPrefs::sInstance = 0; | 43 | KPimGlobalPrefs *KPimGlobalPrefs::sInstance = 0; |
41 | static KStaticDeleter<KPimGlobalPrefs> staticDeleter; | 44 | static KStaticDeleter<KPimGlobalPrefs> staticDeleterGP; |
42 | 45 | ||
43 | 46 | ||
44 | KPimGlobalPrefs::KPimGlobalPrefs( const QString &name ) | 47 | KPimGlobalPrefs::KPimGlobalPrefs( const QString &name ) |
45 | : KPrefs("microkdeglobalrc") | 48 | : KPrefs("microkdeglobalrc") |
46 | { | 49 | { |
47 | 50 | mLocaleDict = 0; | |
48 | KPrefs::setCurrentGroup("Locale"); | 51 | KPrefs::setCurrentGroup("Locale"); |
49 | addItemInt("PreferredLanguage",&mPreferredLanguage,0); | 52 | addItemInt("PreferredLanguage",&mPreferredLanguage,0); |
50 | addItemInt("PreferredTime",&mPreferredTime,0); | 53 | addItemInt("PreferredTime",&mPreferredTime,0); |
51 | addItemInt("PreferredDate",&mPreferredDate,0); | 54 | addItemInt("PreferredDate",&mPreferredDate,0); |
52 | addItemBool("WeekStartsOnSunday",&mWeekStartsOnSunday,false); | 55 | addItemBool("WeekStartsOnSunday",&mWeekStartsOnSunday,false); |
53 | //addItemBool("QuickSavingWOUnicode",&mUseQuicksave,false); | 56 | //addItemBool("QuickSavingWOUnicode",&mUseQuicksave,false); |
@@ -101,15 +104,74 @@ KPimGlobalPrefs::KPimGlobalPrefs( const QString &name ) | |||
101 | addItemString("Ex2PhoneDevice",&mEx2PhoneDevice,"/dev/ircomm"); | 104 | addItemString("Ex2PhoneDevice",&mEx2PhoneDevice,"/dev/ircomm"); |
102 | addItemString("Ex2PhoneConnection",&mEx2PhoneConnection,"irda"); | 105 | addItemString("Ex2PhoneConnection",&mEx2PhoneConnection,"irda"); |
103 | addItemString("Ex2PhoneModel",&mEx2PhoneModel,"6310i"); | 106 | addItemString("Ex2PhoneModel",&mEx2PhoneModel,"6310i"); |
104 | 107 | ||
105 | } | 108 | } |
106 | 109 | ||
107 | |||
108 | void KPimGlobalPrefs::setGlobalConfig() | 110 | void KPimGlobalPrefs::setGlobalConfig() |
109 | { | 111 | { |
112 | if ( mLocaleDict == 0 ) { | ||
113 | QString fileName ; | ||
114 | QString name = KGlobal::getAppName() +"/"; | ||
115 | #ifndef DESKTOP_VERSION | ||
116 | fileName= QString(getenv("QPEDIR"))+"/pics/kdepim/"+name | ||
117 | #else | ||
118 | fileName = qApp->applicationDirPath () + "/kdepim/"+ name; | ||
119 | #endif | ||
120 | mLocaleDict = 0; | ||
121 | if ( mPreferredLanguage > 0 && mPreferredLanguage < 5 ) { | ||
122 | |||
123 | if ( mPreferredLanguage == 1 ) | ||
124 | fileName = fileName+"germantranslation.txt"; | ||
125 | else if ( mPreferredLanguage == 4 ) | ||
126 | fileName = fileName+"usertranslation.txt"; | ||
127 | else if ( mPreferredLanguage == 2 ) | ||
128 | fileName = fileName+"frenchtranslation.txt"; | ||
129 | else if ( mPreferredLanguage == 3 ) | ||
130 | fileName = fileName+"italiantranslation.txt"; | ||
131 | QFile file( fileName ); | ||
132 | if (file.open( IO_ReadOnly ) ) { | ||
133 | QTextStream ts( &file ); | ||
134 | ts.setEncoding( QTextStream::Latin1 ); | ||
135 | //ts.setCodec( QTextCodec::latin1 ); | ||
136 | QString text = ts.read(); | ||
137 | file.close(); | ||
138 | text.replace( QRegExp("\\\\n"), "\n" ); | ||
139 | QString line; | ||
140 | QString we; | ||
141 | QString wt; | ||
142 | int br = 0; | ||
143 | int nbr; | ||
144 | nbr = text.find ( "},", br ); | ||
145 | line = text.mid( br, nbr - br ); | ||
146 | br = nbr+1; | ||
147 | int se, ee, st, et; | ||
148 | mLocaleDict = new QDict<QString>; | ||
149 | QString end = "{ \"\",\"\" }"; | ||
150 | while ( (line != end) && (br > 1) ) { | ||
151 | //qDebug("%d *%s* ", br, line.latin1()); | ||
152 | se = line.find("\"")+1; | ||
153 | et = line.findRev("\"",-1); | ||
154 | ee = line.find("\",\""); | ||
155 | st = ee+3; | ||
156 | we = line.mid( se, ee-se ); | ||
157 | wt = line.mid( st, et-st ); | ||
158 | //qDebug("*%s* *%s* ", we.latin1(), wt.latin1()); | ||
159 | mLocaleDict->insert( we, new QString (wt) ); | ||
160 | nbr = text.find ( "}", br ); | ||
161 | line = text.mid( br, nbr - br ); | ||
162 | br = nbr+1; | ||
163 | } | ||
164 | //qDebug("end *%s* ", end.latin1()); | ||
165 | |||
166 | setLocaleDict( mLocaleDict ); | ||
167 | } else { | ||
168 | qDebug("KO: Cannot find translation file %s",fileName.latin1() ); | ||
169 | } | ||
170 | } | ||
171 | } | ||
110 | 172 | ||
111 | KGlobal::locale()->setHore24Format( !mPreferredTime ); | 173 | KGlobal::locale()->setHore24Format( !mPreferredTime ); |
112 | KGlobal::locale()->setWeekStartMonday( !mWeekStartsOnSunday ); | 174 | KGlobal::locale()->setWeekStartMonday( !mWeekStartsOnSunday ); |
113 | KGlobal::locale()->setIntDateFormat( (KLocale::IntDateFormat)mPreferredDate ); | 175 | KGlobal::locale()->setIntDateFormat( (KLocale::IntDateFormat)mPreferredDate ); |
114 | KGlobal::locale()->setLanguage( mPreferredLanguage ); | 176 | KGlobal::locale()->setLanguage( mPreferredLanguage ); |
115 | QString dummy = mUserDateFormatLong; | 177 | QString dummy = mUserDateFormatLong; |
@@ -121,19 +183,25 @@ void KPimGlobalPrefs::setGlobalConfig() | |||
121 | mDaylightsavingEnd ); | 183 | mDaylightsavingEnd ); |
122 | KGlobal::locale()->setTimezone( mTimeZoneId, mTimeZoneAdd30min ); | 184 | KGlobal::locale()->setTimezone( mTimeZoneId, mTimeZoneAdd30min ); |
123 | 185 | ||
124 | } | 186 | } |
125 | KPimGlobalPrefs::~KPimGlobalPrefs() | 187 | KPimGlobalPrefs::~KPimGlobalPrefs() |
126 | { | 188 | { |
189 | if (sInstance == this) | ||
190 | sInstance = staticDeleterGP.setObject(0); | ||
191 | else | ||
192 | qDebug("Whats this? Error in KPimGlobalPrefs::~KPimGlobalPrefs() ?"); | ||
127 | //qDebug("KPimGlobalPrefs::~KPimGlobalPrefs() "); | 193 | //qDebug("KPimGlobalPrefs::~KPimGlobalPrefs() "); |
128 | writeConfig(); | 194 | writeConfig(); |
195 | if ( mLocaleDict ) | ||
196 | delete mLocaleDict; | ||
129 | } | 197 | } |
130 | 198 | ||
131 | KPimGlobalPrefs *KPimGlobalPrefs::instance() | 199 | KPimGlobalPrefs *KPimGlobalPrefs::instance() |
132 | { | 200 | { |
133 | if ( !sInstance ) { | 201 | if ( !sInstance ) { |
134 | sInstance = staticDeleter.setObject( new KPimGlobalPrefs() ); | 202 | sInstance = staticDeleterGP.setObject( new KPimGlobalPrefs() ); |
135 | sInstance->readConfig(); | 203 | sInstance->readConfig(); |
136 | } | 204 | } |
137 | 205 | ||
138 | return sInstance; | 206 | return sInstance; |
139 | } | 207 | } |
diff --git a/libkdepim/kpimglobalprefs.h b/libkdepim/kpimglobalprefs.h index d09c3da..11c534a 100644 --- a/libkdepim/kpimglobalprefs.h +++ b/libkdepim/kpimglobalprefs.h | |||
@@ -29,12 +29,13 @@ $Id$ | |||
29 | */ | 29 | */ |
30 | 30 | ||
31 | #ifndef KPIMGLOBALPREFS_H | 31 | #ifndef KPIMGLOBALPREFS_H |
32 | #define KPIMGLOBALPREFS_H | 32 | #define KPIMGLOBALPREFS_H |
33 | 33 | ||
34 | #include "kprefs.h" | 34 | #include "kprefs.h" |
35 | #include <qdict.h> | ||
35 | 36 | ||
36 | class KPimGlobalPrefs : public KPrefs | 37 | class KPimGlobalPrefs : public KPrefs |
37 | { | 38 | { |
38 | public: | 39 | public: |
39 | 40 | ||
40 | void setGlobalConfig(); | 41 | void setGlobalConfig(); |
@@ -80,12 +81,13 @@ class KPimGlobalPrefs : public KPrefs | |||
80 | }; | 81 | }; |
81 | 82 | ||
82 | private: | 83 | private: |
83 | KPimGlobalPrefs( const QString &name = QString::null ); | 84 | KPimGlobalPrefs( const QString &name = QString::null ); |
84 | 85 | ||
85 | static KPimGlobalPrefs *sInstance; | 86 | static KPimGlobalPrefs *sInstance; |
87 | QDict<QString> *mLocaleDict; | ||
86 | 88 | ||
87 | 89 | ||
88 | public: | 90 | public: |
89 | //US I copied the following "locale" settings from KOPrefs | 91 | //US I copied the following "locale" settings from KOPrefs |
90 | int mPreferredDate; | 92 | int mPreferredDate; |
91 | QString mUserDateFormatLong; | 93 | QString mUserDateFormatLong; |
diff --git a/microkde/kstaticdeleter.h b/microkde/kstaticdeleter.h index dfd3929..d9c2b72 100644 --- a/microkde/kstaticdeleter.h +++ b/microkde/kstaticdeleter.h | |||
@@ -25,13 +25,14 @@ | |||
25 | 25 | ||
26 | template<class type> | 26 | template<class type> |
27 | class KStaticDeleter | 27 | class KStaticDeleter |
28 | { | 28 | { |
29 | public: | 29 | public: |
30 | KStaticDeleter() {}; | 30 | KStaticDeleter() {}; |
31 | type *setObject( type *obj, bool isArray = false) { _mobj = obj;return obj; } | 31 | type *setObject( type *obj, bool isArray = false) { _mobj = obj;_isArray = isArray;return obj; } |
32 | virtual ~KStaticDeleter() {delete _mobj;}; | 32 | virtual ~KStaticDeleter() {if (_isArray) delete[] _mobj; else delete _mobj;}; |
33 | private: | 33 | private: |
34 | type* _mobj; | 34 | type* _mobj; |
35 | bool _isArray; | ||
35 | }; | 36 | }; |
36 | 37 | ||
37 | #endif | 38 | #endif |
diff --git a/pwmanager/pwmanager/pwmprefs.cpp b/pwmanager/pwmanager/pwmprefs.cpp index fdc34e0..68d5b68 100644 --- a/pwmanager/pwmanager/pwmprefs.cpp +++ b/pwmanager/pwmanager/pwmprefs.cpp | |||
@@ -28,13 +28,13 @@ | |||
28 | #include <klocale.h> | 28 | #include <klocale.h> |
29 | #include <kstaticdeleter.h> | 29 | #include <kstaticdeleter.h> |
30 | 30 | ||
31 | #include "pwmprefs.h" | 31 | #include "pwmprefs.h" |
32 | 32 | ||
33 | PWMPrefs *PWMPrefs::sInstance = 0; | 33 | PWMPrefs *PWMPrefs::sInstance = 0; |
34 | static KStaticDeleter<PWMPrefs> staticDeleter; | 34 | static KStaticDeleter<PWMPrefs> staticDeleterPP; |
35 | 35 | ||
36 | PWMPrefs::PWMPrefs() | 36 | PWMPrefs::PWMPrefs() |
37 | : KPimPrefs("pwmanagerrc") | 37 | : KPimPrefs("pwmanagerrc") |
38 | { | 38 | { |
39 | KPrefs::setCurrentGroup( "Global" ); | 39 | KPrefs::setCurrentGroup( "Global" ); |
40 | 40 | ||
@@ -65,23 +65,27 @@ PWMPrefs::PWMPrefs() | |||
65 | addItemBool( "close", &mClose, CONF_DEFAULT_WNDCLOSE ); | 65 | addItemBool( "close", &mClose, CONF_DEFAULT_WNDCLOSE ); |
66 | addItemIntList( "commentSplitter", &mCommentSplitter ); | 66 | addItemIntList( "commentSplitter", &mCommentSplitter ); |
67 | addItemIntList( "categorySplitter", &mCategorySplitter ); | 67 | addItemIntList( "categorySplitter", &mCategorySplitter ); |
68 | } | 68 | } |
69 | 69 | ||
70 | PWMPrefs::~PWMPrefs() | 70 | PWMPrefs::~PWMPrefs() |
71 | { | 71 | { |
72 | if (sInstance == this) | ||
73 | sInstance = staticDeleterPP.setObject(0); | ||
74 | else | ||
75 | qDebug("Whats this? Error in PWMPrefs::~PWMPrefs()?"); | ||
72 | } | 76 | } |
73 | 77 | ||
74 | PWMPrefs *PWMPrefs::instance() | 78 | PWMPrefs *PWMPrefs::instance() |
75 | { | 79 | { |
76 | if ( !sInstance ) { | 80 | if ( !sInstance ) { |
77 | #ifdef PWM_EMBEDDED | 81 | #ifdef PWM_EMBEDDED |
78 | sInstance = staticDeleter.setObject( new PWMPrefs() ); | 82 | sInstance = staticDeleterPP.setObject( new PWMPrefs() ); |
79 | #else //PWM_EMBEDDED | 83 | #else //PWM_EMBEDDED |
80 | //US the following line has changed ???. Why | 84 | //US the following line has changed ???. Why |
81 | staticDeleter.setObject( sInstance, new PWMPrefs() ); | 85 | staticDeleterPP.setObject( sInstance, new PWMPrefs() ); |
82 | #endif //KAB_EMBEDDED | 86 | #endif //KAB_EMBEDDED |
83 | sInstance->readConfig(); | 87 | sInstance->readConfig(); |
84 | } | 88 | } |
85 | 89 | ||
86 | return sInstance; | 90 | return sInstance; |
87 | } | 91 | } |