summaryrefslogtreecommitdiffabout
path: root/kaddressbook/kabprefs.cpp
Unidiff
Diffstat (limited to 'kaddressbook/kabprefs.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/kabprefs.cpp74
1 files changed, 74 insertions, 0 deletions
diff --git a/kaddressbook/kabprefs.cpp b/kaddressbook/kabprefs.cpp
index 9270a7d..4b3ee47 100644
--- a/kaddressbook/kabprefs.cpp
+++ b/kaddressbook/kabprefs.cpp
@@ -24,8 +24,12 @@
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>
29#include <qfile.h>
30#include <stdlib.h>
31#include <libkdepim/kpimglobalprefs.h>
28 32
29#include <kconfig.h> 33#include <kconfig.h>
30#include <klocale.h> 34#include <klocale.h>
31#include <kstaticdeleter.h> 35#include <kstaticdeleter.h>
@@ -38,8 +42,10 @@ static KStaticDeleter<KABPrefs> staticDeleter;
38 42
39KABPrefs::KABPrefs() 43KABPrefs::KABPrefs()
40 : KPimPrefs("kaddressbookrc") 44 : KPimPrefs("kaddressbookrc")
41{ 45{
46
47 mLocaleDict = 0;
42 mDetailsFont = QFont("helvetica",12); 48 mDetailsFont = QFont("helvetica",12);
43 KPrefs::setCurrentGroup( "Views" ); 49 KPrefs::setCurrentGroup( "Views" );
44 addItemBool( "HonorSingleClick", &mHonorSingleClick, false ); 50 addItemBool( "HonorSingleClick", &mHonorSingleClick, false );
45 51
@@ -84,8 +90,11 @@ KABPrefs::KABPrefs()
84 90
85KABPrefs::~KABPrefs() 91KABPrefs::~KABPrefs()
86{ 92{
87 //qDebug("KABPrefs::~KABPrefs() "); 93 //qDebug("KABPrefs::~KABPrefs() ");
94 setLocaleDict( 0 );
95 if ( mLocaleDict )
96 delete mLocaleDict;
88} 97}
89 98
90KABPrefs *KABPrefs::instance() 99KABPrefs *KABPrefs::instance()
91{ 100{
@@ -114,8 +123,73 @@ void KABPrefs::setCategoryDefaults()
114KConfig* KABPrefs::getConfig() 123KConfig* KABPrefs::getConfig()
115{ 124{
116 return config(); 125 return config();
117} 126}
127void KABPrefs::usrReadConfig()
128{
129 QString fileName ;
130#ifndef DESKTOP_VERSION
131 fileName= QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/";
132#else
133 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/";
134#endif
135 int mPreferredLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage;
136 mLocaleDict = 0;
137 if ( mPreferredLanguage > 0 && mPreferredLanguage < 5 ) {
138
139 if ( mPreferredLanguage == 1 )
140 fileName = fileName+"germantranslation.txt";
141 else if ( mPreferredLanguage == 4 )
142 fileName = fileName+"usertranslation.txt";
143 else if ( mPreferredLanguage == 2 )
144 fileName = fileName+"frenchtranslation.txt";
145 else if ( mPreferredLanguage == 3 )
146 fileName = fileName+"italiantranslation.txt";
147 QFile file( fileName );
148 if (file.open( IO_ReadOnly ) ) {
149 QTextStream ts( &file );
150 ts.setEncoding( QTextStream::Latin1 );
151 //ts.setCodec( QTextCodec::latin1 );
152 QString text = ts.read();
153 file.close();
154 text.replace( QRegExp("\\\\n"), "\n" );
155 QString line;
156 QString we;
157 QString wt;
158 int br = 0;
159 int nbr;
160 nbr = text.find ( "},", br );
161 line = text.mid( br, nbr - br );
162 br = nbr+1;
163 int se, ee, st, et;
164 mLocaleDict = new QDict<QString>;
165 QString end = "{ \"\",\"\" }";
166 while ( (line != end) && (br > 1) ) {
167 //qDebug("%d *%s* ", br, line.latin1());
168 se = line.find("\"")+1;
169 et = line.findRev("\"",-1);
170 ee = line.find("\",\"");
171 st = ee+3;
172 we = line.mid( se, ee-se );
173 wt = line.mid( st, et-st );
174 //qDebug("*%s* *%s* ", we.latin1(), wt.latin1());
175 mLocaleDict->insert( we, new QString (wt) );
176 nbr = text.find ( "}", br );
177 line = text.mid( br, nbr - br );
178 br = nbr+1;
179 }
180 //qDebug("end *%s* ", end.latin1());
181
182 setLocaleDict( mLocaleDict );
183 } else {
184 qDebug("KO: Cannot find translation file %s",fileName.latin1() );
185 }
186
187
188 }
189 qDebug("KABPrefs::usrReadConfig********************** ");
190 KPimPrefs::usrReadConfig();
191}
118 192
119 193
120/*US 194/*US
121void KABPrefs::usrSetDefaults() 195void KABPrefs::usrSetDefaults()