author | tille <tille> | 2002-06-29 20:53:42 (UTC) |
---|---|---|
committer | tille <tille> | 2002-06-29 20:53:42 (UTC) |
commit | cbb1662a1c3bca476294100ce5e0d0eeb3655639 (patch) (side-by-side diff) | |
tree | e7deb5afdba0d5fa843675669ae3e089c168d022 /noncore/apps/confedit/listviewitemconffile.cpp | |
parent | 5960b3a2823037c63afba09ca83dbcc0943cd082 (diff) | |
download | opie-cbb1662a1c3bca476294100ce5e0d0eeb3655639.zip opie-cbb1662a1c3bca476294100ce5e0d0eeb3655639.tar.gz opie-cbb1662a1c3bca476294100ce5e0d0eeb3655639.tar.bz2 |
makes backups, but does not save the file yet
Diffstat (limited to 'noncore/apps/confedit/listviewitemconffile.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/confedit/listviewitemconffile.cpp | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/noncore/apps/confedit/listviewitemconffile.cpp b/noncore/apps/confedit/listviewitemconffile.cpp index 5457384..a8fd770 100644 --- a/noncore/apps/confedit/listviewitemconffile.cpp +++ b/noncore/apps/confedit/listviewitemconffile.cpp @@ -18,37 +18,33 @@ ListViewItemConfFile::ListViewItemConfFile(QFileInfo *file, QListView *parent) : ListViewItemConf(parent), _valid(false) { confFileInfo = file; parseFile(); - _changed = false; displayText(); } ListViewItemConfFile::~ListViewItemConfFile() { } void ListViewItemConfFile::displayText() { - setText(0,(_changed?"*":"*")+confFileInfo->fileName()); + setText(0,(_changed?"*":"")+confFileInfo->fileName()); } QString ListViewItemConfFile::fileName() { return confFileInfo->fileName(); } void ListViewItemConfFile::parseFile() { - qDebug( confFileInfo->absFilePath() ); QFile confFile(confFileInfo->absFilePath()); - qDebug( confFileInfo->absFilePath() ); - // QString fileName = confFileInfo->fileName(); if(! confFile.open(IO_ReadOnly)) QMessageBox::critical(0,tr("Could not open"),tr("The file ")+confFileInfo->fileName()+tr(" could not be opened."),1,0); QTextStream t( &confFile ); QString s; QString group; ListViewItemConfigEntry *groupItem; @@ -61,13 +57,13 @@ void ListViewItemConfFile::parseFile() { _valid = false; break; }else if ( s[0] == '[' && s[s.length()-1] == ']' ) { - qDebug("got group"+s); + // qDebug("got group"+s); group = s.mid(1,s.length()-2); groupItem = new ListViewItemConfigEntry(this, group ); insertItem( groupItem ); } else if ( int pos = s.find('=') ) { @@ -79,10 +75,25 @@ void ListViewItemConfFile::parseFile() confFile.close(); setExpandable( _valid ); } void ListViewItemConfFile::save() { - qDebug("ListViewItemConfFile::save()"); + if (!_changed) return; + QString backup = confFileInfo->absFilePath()+"~"; + qDebug("make backup to "+backup); + QFile conf(confFileInfo->absFilePath()); + QFile back(backup); + + if (!conf.open(IO_ReadOnly)) return; + if (!back.open(IO_WriteOnly)) return; + + #define SIZE 124 + char buf[SIZE]; + while (int c = conf.readBlock(buf, SIZE) ) back.writeBlock(buf,c); + conf.close(); + back.close(); + + qDebug("no saveing yet..."); unchanged(); } |