// save autoreplace entries to configuration void Autoreplace_Config::saveSettings() { // get configuration object KConfig* config=kapp->config(); // delete all patterns config->deleteGroup("Autoreplace List"); // create new empty autoreplace group config->setGroup("Autoreplace List"); // create empty list QStringList newList=currentAutoreplaceList(); // check if there are any patterns in the list view if(newList.count()) { // go through all patterns and save them into the configuration for(unsigned int index=0;index<newList.count();index++) { // write the current entry's pattern and replacement (adds a "#" to preserve blanks at the end of the line) config->writeEntry(QString("Autoreplace%1").arg(index),newList[index]+'#'); } // for } // if there were no entries at all, write a dummy entry to prevent KConfigXT from "optimizing" // the group out, which would in turn make konvi restore the default entries else config->writeEntry("Empty List",QString()); // set internal autoreplace list Preferences::setAutoreplaceList(newList); // remember autoreplace list for hasChanged() m_oldAutoreplaceList=newList; }
// save autoreplace entries to configuration void Autoreplace_Config::saveSettings() { // get configuration object KSharedConfigPtr config=KGlobal::config(); // delete all patterns config->deleteGroup("Autoreplace List"); // create new empty autoreplace group KConfigGroup grp = config->group("Autoreplace List"); // create empty list QList<QStringList> newList=currentAutoreplaceList(); // check if there are any patterns in the list view if(newList.count()) { // go through all patterns and save them into the configuration QString regexString("Regex"); QString directString("Direction"); QString patternString("Pattern"); QString replaceString("Replace"); for(int index=0;index<newList.count();index++) { // write the current entry's pattern and replacement (adds a "#" to preserve blanks at the end of the line) QString indexString(QString::number(index)); QStringList definition = newList[index]; grp.writeEntry(regexString + indexString,definition.at(0)); //regex status grp.writeEntry(directString + indexString,definition.at(1)); //direction grp.writeEntry(patternString + indexString,QString(definition.at(2)+'#')); //pattern grp.writeEntry(replaceString + indexString,QString(definition.at(3)+'#')); //replace } // for } // if there were no entries at all, write a dummy entry to prevent KConfigXT from "optimizing" // the group out, which would in turn make konvi restore the default entries else grp.writeEntry("Empty List",QString()); // set internal autoreplace list Preferences::setAutoreplaceList(newList); // remember autoreplace list for hasChanged() m_oldAutoreplaceList=newList; }
bool Autoreplace_Config::hasChanged() { return(m_oldAutoreplaceList!=currentAutoreplaceList()); }