Diffstat (limited to 'noncore/apps/confedit/listviewitemconffile.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/confedit/listviewitemconffile.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/noncore/apps/confedit/listviewitemconffile.cpp b/noncore/apps/confedit/listviewitemconffile.cpp index 1f85095..ce6504c 100644 --- a/noncore/apps/confedit/listviewitemconffile.cpp +++ b/noncore/apps/confedit/listviewitemconffile.cpp @@ -89,12 +89,11 @@ void ListViewItemConfFile::remove() } void ListViewItemConfFile::revert() { - if (_changed) + if (!_changed) { - parseFile(); - }else{ + // read the backup file QFile conf(confFileInfo->absFilePath()); QFile back(backupFileName()); if (!back.open(IO_ReadOnly)) return; @@ -105,8 +104,10 @@ void ListViewItemConfFile::revert() while (int c = back.readBlock(buf, SIZE) ) conf.writeBlock(buf,c); conf.close(); back.close(); } + parseFile(); + expand(); } void ListViewItemConfFile::save() { @@ -146,6 +147,14 @@ QString ListViewItemConfFile::backupFileName() void ListViewItemConfFile::expand() { + QListViewItem *subItem = firstChild(); + QListViewItem *toDel; + while(subItem) + { + toDel = subItem; + subItem = subItem->nextSibling(); + delete toDel; + } parseFile(); } |