summaryrefslogtreecommitdiffabout
path: root/microkde/kconfig.cpp
Unidiff
Diffstat (limited to 'microkde/kconfig.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--microkde/kconfig.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/microkde/kconfig.cpp b/microkde/kconfig.cpp
index b882adb..f8e362e 100644
--- a/microkde/kconfig.cpp
+++ b/microkde/kconfig.cpp
@@ -276,130 +276,131 @@ void KConfig::sync()
276 276
277//US I took the following code from a newer version of KDE 277//US I took the following code from a newer version of KDE
278 // Create the containing dir if needed 278 // Create the containing dir if needed
279 KURL path; 279 KURL path;
280 path.setPath(mFileName); 280 path.setPath(mFileName);
281 QString dir=path.directory(); 281 QString dir=path.directory();
282 KStandardDirs::makeDir(dir); 282 KStandardDirs::makeDir(dir);
283 283
284 QFile f( mFileName ); 284 QFile f( mFileName );
285 if ( !f.open( IO_WriteOnly ) ) { 285 if ( !f.open( IO_WriteOnly ) ) {
286 286
287 qDebug("KConfig::sync() Can't open file %s ",mFileName.latin1() ); 287 qDebug("KConfig::sync() Can't open file %s ",mFileName.latin1() );
288 288
289 return; 289 return;
290 } 290 }
291 291
292 QTextStream t( &f ); 292 QTextStream t( &f );
293 293
294 QMap<QString,bool>::ConstIterator itBool; 294 QMap<QString,bool>::ConstIterator itBool;
295 for( itBool = mBoolMap.begin(); itBool != mBoolMap.end(); ++itBool ) { 295 for( itBool = mBoolMap.begin(); itBool != mBoolMap.end(); ++itBool ) {
296 t << "bool," << itBool.key() << "," << ( *itBool ? "1" : "0" ) << endl; 296 t << "bool," << itBool.key() << "," << ( *itBool ? "1" : "0" ) << endl;
297 } 297 }
298 298
299 QMap<QString,QString>::ConstIterator itString; 299 QMap<QString,QString>::ConstIterator itString;
300 for( itString = mStringMap.begin(); itString != mStringMap.end(); ++itString ) { 300 for( itString = mStringMap.begin(); itString != mStringMap.end(); ++itString ) {
301 t << "QString," << itString.key() << "," << (*itString ) << endl; 301 t << "QString," << itString.key() << "," << (*itString ) << endl;
302 } 302 }
303 303
304 QMap<QString,QDateTime>::ConstIterator itDateTime; 304 QMap<QString,QDateTime>::ConstIterator itDateTime;
305 for( itDateTime = mDateTimeMap.begin(); itDateTime != mDateTimeMap.end(); ++itDateTime ) { 305 for( itDateTime = mDateTimeMap.begin(); itDateTime != mDateTimeMap.end(); ++itDateTime ) {
306 QDateTime dt = *itDateTime; 306 QDateTime dt = *itDateTime;
307 t << "QDateTime," << itDateTime.key() << "," 307 t << "QDateTime," << itDateTime.key() << ","
308 << dt.date().year() << "," 308 << dt.date().year() << ","
309 << dt.date().month() << "," 309 << dt.date().month() << ","
310 << dt.date().day() << "," 310 << dt.date().day() << ","
311 << dt.time().hour() << "," 311 << dt.time().hour() << ","
312 << dt.time().minute() << "," 312 << dt.time().minute() << ","
313 << dt.time().second() << endl; 313 << dt.time().second() << endl;
314 } 314 }
315 315
316 f.close(); 316 f.close();
317 317
318 mDirty = false; 318 mDirty = false;
319} 319}
320 320
321 321
322//US I took the following deleteGroup method from a newer version from KDE. 322//US I took the following deleteGroup method from a newer version from KDE.
323/** 323/**
324 * Deletes a configuration entry group 324 * Deletes a configuration entry group
325 * 325 *
326 * If the group is not empty and bDeep is false, nothing gets 326 * If the group is not empty and bDeep is false, nothing gets
327 * deleted and false is returned. 327 * deleted and false is returned.
328 * If this group is the current group and it is deleted, the 328 * If this group is the current group and it is deleted, the
329 * current group is undefined and should be set with setGroup() 329 * current group is undefined and should be set with setGroup()
330 * before the next operation on the configuration object. 330 * before the next operation on the configuration object.
331 * 331 *
332 * @param group The name of the group 332 * @param group The name of the group
333 * returns true if we deleted at least one entry. 333 * returns true if we deleted at least one entry.
334 */ 334 */
335bool KConfig::deleteGroup( const QString& group) 335bool KConfig::deleteGroup( const QString& group)
336{ 336{
337 bool dirty = false; 337 bool dirty = false;
338 int pos; 338 int pos;
339 339
340 QMap<QString,bool>::Iterator itBool; 340 QMap<QString,bool>::Iterator itBool = mBoolMap.begin();
341 QMap<QString,bool>::Iterator delBool; 341 QMap<QString,bool>::Iterator delBool;
342
342 while ( itBool != mBoolMap.end() ) { 343 while ( itBool != mBoolMap.end() ) {
343 pos = itBool.key().find( group ); 344 pos = itBool.key().find( group );
344 if (pos == 0) { 345 if (pos == 0) {
345 delBool = itBool; 346 delBool = itBool;
346 ++itBool; 347 ++itBool;
347 mBoolMap.remove(delBool); 348 mBoolMap.remove(delBool);
348 dirty = true; 349 dirty = true;
349 } 350 }
350 351
351 } 352 }
352 /* 353 /*
353 for( itBool = mBoolMap.begin(); itBool != mBoolMap.end(); ++itBool ) 354 for( itBool = mBoolMap.begin(); itBool != mBoolMap.end(); ++itBool )
354 { 355 {
355 pos = itBool.key().find( group ); 356 pos = itBool.key().find( group );
356 if (pos == 0) { 357 if (pos == 0) {
357 mBoolMap.remove(itBool); 358 mBoolMap.remove(itBool);
358 dirty = true; 359 dirty = true;
359 } 360 }
360 } 361 }
361 */ 362 */
362 QMap<QString,QString>::Iterator itString = mStringMap.begin(); 363 QMap<QString,QString>::Iterator itString = mStringMap.begin();
363 QMap<QString,QString>::Iterator delString ; 364 QMap<QString,QString>::Iterator delString ;
364 while( itString != mStringMap.end() ) { 365 while( itString != mStringMap.end() ) {
365 pos = itString.key().find( group ); 366 pos = itString.key().find( group );
366 if (pos == 0) { 367 if (pos == 0) {
367 delString = itString; 368 delString = itString;
368 ++itString; 369 ++itString;
369 mStringMap.remove(delString); 370 mStringMap.remove(delString);
370 //qDebug("delte++++++++++++++++++ "); 371 //qDebug("delte++++++++++++++++++ ");
371 dirty = true; 372 dirty = true;
372 } 373 }
373 374
374 } 375 }
375 /* this leads to a memory access violation 376 /* this leads to a memory access violation
376 for( itString = mStringMap.begin(); itString != mStringMap.end(); ++itString ) 377 for( itString = mStringMap.begin(); itString != mStringMap.end(); ++itString )
377 { 378 {
378 pos = itString.key().find( group ); 379 pos = itString.key().find( group );
379 if (pos == 0) { 380 if (pos == 0) {
380 mStringMap.remove(itString); 381 mStringMap.remove(itString);
381 dirty = true; 382 dirty = true;
382 } 383 }
383 } 384 }
384 */ 385 */
385 QMap<QString,QDateTime>::Iterator itDateTime= mDateTimeMap.begin(); 386 QMap<QString,QDateTime>::Iterator itDateTime= mDateTimeMap.begin();
386 QMap<QString,QDateTime>::Iterator delDateTime; 387 QMap<QString,QDateTime>::Iterator delDateTime;
387 while ( itDateTime != mDateTimeMap.end() ) { 388 while ( itDateTime != mDateTimeMap.end() ) {
388 pos = itDateTime.key().find( group ); 389 pos = itDateTime.key().find( group );
389 if (pos == 0) { 390 if (pos == 0) {
390 delDateTime = itDateTime; 391 delDateTime = itDateTime;
391 ++itDateTime; 392 ++itDateTime;
392 mDateTimeMap.remove(delDateTime); 393 mDateTimeMap.remove(delDateTime);
393 dirty = true; 394 dirty = true;
394 } 395 }
395 396
396 } 397 }
397 /* 398 /*
398 for( itDateTime = mDateTimeMap.begin(); itDateTime != mDateTimeMap.end(); ++itDateTime ) 399 for( itDateTime = mDateTimeMap.begin(); itDateTime != mDateTimeMap.end(); ++itDateTime )
399 { 400 {
400 pos = itDateTime.key().find( group ); 401 pos = itDateTime.key().find( group );
401 if (pos == 0) { 402 if (pos == 0) {
402 mDateTimeMap.remove(itDateTime); 403 mDateTimeMap.remove(itDateTime);
403 dirty = true; 404 dirty = true;
404 } 405 }
405 } 406 }