summaryrefslogtreecommitdiffabout
path: root/kaddressbook
authorzautrix <zautrix>2004-10-23 11:40:59 (UTC)
committer zautrix <zautrix>2004-10-23 11:40:59 (UTC)
commit25b0233d54a6d4bea457fd843073e57183d8bea0 (patch) (unidiff)
tree4d85c3cec59e8b085738be7111c7e2bb0ee7219e /kaddressbook
parentba2583db0431059cd7368be23c9653e81af16d29 (diff)
downloadkdepimpi-25b0233d54a6d4bea457fd843073e57183d8bea0.zip
kdepimpi-25b0233d54a6d4bea457fd843073e57183d8bea0.tar.gz
kdepimpi-25b0233d54a6d4bea457fd843073e57183d8bea0.tar.bz2
global settings bugfixes
Diffstat (limited to 'kaddressbook') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/kabprefs.cpp73
-rw-r--r--kaddressbook/kabprefs.h1
2 files changed, 5 insertions, 69 deletions
diff --git a/kaddressbook/kabprefs.cpp b/kaddressbook/kabprefs.cpp
index 01c935f..3cbcc9a 100644
--- a/kaddressbook/kabprefs.cpp
+++ b/kaddressbook/kabprefs.cpp
@@ -22,192 +22,129 @@
22*/ 22*/
23 23
24//US#ifdef KAB_EMBEDDED 24//US#ifdef KAB_EMBEDDED
25//#include <qstring.h> 25//#include <qstring.h>
26//#endif //KAB_EMBEDDED 26//#endif //KAB_EMBEDDED
27 27
28#include <qtextstream.h> 28#include <qtextstream.h>
29#include <qfile.h> 29#include <qfile.h>
30#include <qregexp.h> 30#include <qregexp.h>
31#include <stdlib.h> 31#include <stdlib.h>
32#include <libkdepim/kpimglobalprefs.h> 32#include <libkdepim/kpimglobalprefs.h>
33 33
34#include <kconfig.h> 34#include <kconfig.h>
35#include <klocale.h> 35#include <klocale.h>
36#include <kstaticdeleter.h> 36#include <kstaticdeleter.h>
37//US#include <kdebug.h> // defines kdDebug() 37//US#include <kdebug.h> // defines kdDebug()
38 38
39#include "kabprefs.h" 39#include "kabprefs.h"
40 40
41#ifdef DESKTOP_VERSION 41#ifdef DESKTOP_VERSION
42#include <qapplication.h> 42#include <qapplication.h>
43#endif 43#endif
44 44
45KABPrefs *KABPrefs::sInstance = 0; 45KABPrefs *KABPrefs::sInstance = 0;
46static KStaticDeleter<KABPrefs> staticDeleter; 46static KStaticDeleter<KABPrefs> staticDeleterAB;
47 47
48KABPrefs::KABPrefs() 48KABPrefs::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 );
59 addItemInt( "CurrentIncSearchField", &mCurrentIncSearchField, 0 ); 57 addItemInt( "CurrentIncSearchField", &mCurrentIncSearchField, 0 );
60 58
61#ifdef KAB_EMBEDDED 59#ifdef KAB_EMBEDDED
62 addItemBool("AskForQuit",&mAskForQuit,true); 60 addItemBool("AskForQuit",&mAskForQuit,true);
63 addItemBool("ToolBarHor",&mToolBarHor, true ); 61 addItemBool("ToolBarHor",&mToolBarHor, true );
64 addItemBool("ToolBarUp",&mToolBarUp, false ); 62 addItemBool("ToolBarUp",&mToolBarUp, false );
65 addItemBool("SearchWithReturn",&mSearchWithReturn, true ); 63 addItemBool("SearchWithReturn",&mSearchWithReturn, true );
66 addItemFont("DetailsFont",&mDetailsFont); 64 addItemFont("DetailsFont",&mDetailsFont);
67 65
68 66
69#endif //KAB_EMBEDDED 67#endif //KAB_EMBEDDED
70 68
71 KPrefs::setCurrentGroup( "MainWindow" ); 69 KPrefs::setCurrentGroup( "MainWindow" );
72 addItemBool( "JumpButtonBarVisible", &mJumpButtonBarVisible, false ); 70 addItemBool( "JumpButtonBarVisible", &mJumpButtonBarVisible, false );
73 addItemBool( "DetailsPageVisible", &mDetailsPageVisible, true ); 71 addItemBool( "DetailsPageVisible", &mDetailsPageVisible, true );
74 addItemIntList( "ExtensionsSplitter", &mExtensionsSplitter ); 72 addItemIntList( "ExtensionsSplitter", &mExtensionsSplitter );
75 addItemIntList( "DetailsSplitter", &mDetailsSplitter ); 73 addItemIntList( "DetailsSplitter", &mDetailsSplitter );
76 addItemBool( "MultipleViewsAtOnce", &mMultipleViewsAtOnce, true ); 74 addItemBool( "MultipleViewsAtOnce", &mMultipleViewsAtOnce, true );
77 75
78 76
79 KPrefs::setCurrentGroup( "Extensions_General" ); 77 KPrefs::setCurrentGroup( "Extensions_General" );
80 QStringList defaultExtensions; 78 QStringList defaultExtensions;
81 defaultExtensions << "merge"; 79 defaultExtensions << "merge";
82 defaultExtensions << "distribution_list_editor"; 80 defaultExtensions << "distribution_list_editor";
83 addItemInt( "CurrentExtension", &mCurrentExtension, 0 ); 81 addItemInt( "CurrentExtension", &mCurrentExtension, 0 );
84 addItemStringList( "ActiveExtensions", &mActiveExtensions, defaultExtensions ); 82 addItemStringList( "ActiveExtensions", &mActiveExtensions, defaultExtensions );
85 83
86 KPrefs::setCurrentGroup( "Views" ); 84 KPrefs::setCurrentGroup( "Views" );
87 QString defaultView = i18n( "Default Table View" ); 85 QString defaultView = i18n( "Default Table View" );
88 addItemString( "CurrentView", &mCurrentView, defaultView ); 86 addItemString( "CurrentView", &mCurrentView, defaultView );
89 addItemStringList( "ViewNames", &mViewNames, defaultView ); 87 addItemStringList( "ViewNames", &mViewNames, defaultView );
90 88
91 KPrefs::setCurrentGroup( "Filters" ); 89 KPrefs::setCurrentGroup( "Filters" );
92 addItemInt( "CurrentFilter", &mCurrentFilter, 0 ); 90 addItemInt( "CurrentFilter", &mCurrentFilter, 0 );
93 91
94} 92}
95 93
96KABPrefs::~KABPrefs() 94KABPrefs::~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
104KABPrefs *KABPrefs::instance() 101KABPrefs *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}
118 115
119void KABPrefs::setCategoryDefaults() 116void KABPrefs::setCategoryDefaults()
120{ 117{
121 mCustomCategories.clear(); 118 mCustomCategories.clear();
122 119
123 mCustomCategories << i18n( "Business" ) << i18n( "Family" ) << i18n( "School" ) 120 mCustomCategories << i18n( "Business" ) << i18n( "Family" ) << i18n( "School" )
124 << i18n( "Customer" ) << i18n( "Friend" ); 121 << i18n( "Customer" ) << i18n( "Friend" );
125} 122}
126 123
127 // US introduce a nonconst way to return the config object. 124 // US introduce a nonconst way to return the config object.
128KConfig* KABPrefs::getConfig() 125KConfig* KABPrefs::getConfig()
129{ 126{
130 return config(); 127 return config();
131} 128}
132void KABPrefs::usrReadConfig() 129void 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
199void KABPrefs::usrSetDefaults() 136void KABPrefs::usrSetDefaults()
200{ 137{
201 KPimPrefs::usrSetDefaults(); 138 KPimPrefs::usrSetDefaults();
202} 139}
203 140
204void KABPrefs::usrReadConfig() 141void KABPrefs::usrReadConfig()
205{ 142{
206 KPimPrefs::usrReadConfig(); 143 KPimPrefs::usrReadConfig();
207} 144}
208 145
209void KABPrefs::usrWriteConfig() 146void KABPrefs::usrWriteConfig()
210{ 147{
211 KPimPrefs::usrWriteConfig(); 148 KPimPrefs::usrWriteConfig();
212} 149}
213*/ 150*/
diff --git a/kaddressbook/kabprefs.h b/kaddressbook/kabprefs.h
index 1098f4c..cc8413e 100644
--- a/kaddressbook/kabprefs.h
+++ b/kaddressbook/kabprefs.h
@@ -68,29 +68,28 @@ class KABPrefs : public KPimPrefs
68 bool mJumpButtonBarVisible; 68 bool mJumpButtonBarVisible;
69 bool mDetailsPageVisible; 69 bool mDetailsPageVisible;
70 bool mMultipleViewsAtOnce; 70 bool mMultipleViewsAtOnce;
71 bool mSearchWithReturn; 71 bool mSearchWithReturn;
72 QValueList<int> mExtensionsSplitter; 72 QValueList<int> mExtensionsSplitter;
73 QValueList<int> mDetailsSplitter; 73 QValueList<int> mDetailsSplitter;
74 74
75 // Extensions stuff 75 // Extensions stuff
76 int mCurrentExtension; 76 int mCurrentExtension;
77 QStringList mActiveExtensions; 77 QStringList mActiveExtensions;
78 78
79 // Views stuff 79 // Views stuff
80 QString mCurrentView; 80 QString mCurrentView;
81 QStringList mViewNames; 81 QStringList mViewNames;
82 82
83 // Filter 83 // Filter
84 int mCurrentFilter; 84 int mCurrentFilter;
85 85
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