author | tille <tille> | 2002-06-29 23:23:09 (UTC) |
---|---|---|
committer | tille <tille> | 2002-06-29 23:23:09 (UTC) |
commit | 0f179c0cc471b659b30dec4762c9c36678063f31 (patch) (unidiff) | |
tree | 5350dc3b1c05991953011d01ad19cb12414abc1a /noncore/apps/confedit/listviewitemconffile.cpp | |
parent | eb02223de534d315bfdcb0d521719c2d2e9a7235 (diff) | |
download | opie-0f179c0cc471b659b30dec4762c9c36678063f31.zip opie-0f179c0cc471b659b30dec4762c9c36678063f31.tar.gz opie-0f179c0cc471b659b30dec4762c9c36678063f31.tar.bz2 |
revert
Diffstat (limited to 'noncore/apps/confedit/listviewitemconffile.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/confedit/listviewitemconffile.cpp | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/noncore/apps/confedit/listviewitemconffile.cpp b/noncore/apps/confedit/listviewitemconffile.cpp index 858726d..b075063 100644 --- a/noncore/apps/confedit/listviewitemconffile.cpp +++ b/noncore/apps/confedit/listviewitemconffile.cpp | |||
@@ -64,27 +64,50 @@ void ListViewItemConfFile::parseFile() | |||
64 | group = s.mid(1,s.length()-2); | 64 | group = s.mid(1,s.length()-2); |
65 | groupItem = new ListViewItemConfigEntry(this, group ); | 65 | groupItem = new ListViewItemConfigEntry(this, group ); |
66 | insertItem( groupItem ); | 66 | insertItem( groupItem ); |
67 | } else | 67 | } else |
68 | if ( int pos = s.find('=') ) | 68 | if ( int pos = s.find('=') ) |
69 | { | 69 | { |
70 | // qDebug("got key"+s); | 70 | // qDebug("got key"+s); |
71 | item = new ListViewItemConfigEntry(this, group, s ); | 71 | item = new ListViewItemConfigEntry(this, group, s ); |
72 | groupItem->insertItem( item ); | 72 | groupItem->insertItem( item ); |
73 | } | 73 | } |
74 | } | 74 | } |
75 | confFile.close(); | 75 | confFile.close(); |
76 | unchanged(); | ||
76 | setExpandable( _valid ); | 77 | setExpandable( _valid ); |
77 | } | 78 | } |
78 | 79 | ||
80 | |||
81 | void ListViewItemConfFile::revert() | ||
82 | { | ||
83 | if (_changed) | ||
84 | { | ||
85 | parseFile(); | ||
86 | }else{ | ||
87 | QString backup = confFileInfo->absFilePath()+"~"; | ||
88 | QFile conf(confFileInfo->absFilePath()); | ||
89 | QFile back(backup); | ||
90 | |||
91 | if (!back.open(IO_ReadOnly)) return; | ||
92 | if (!conf.open(IO_WriteOnly)) return; | ||
93 | |||
94 | #define SIZE 124 | ||
95 | char buf[SIZE]; | ||
96 | while (int c = back.readBlock(buf, SIZE) ) conf.writeBlock(buf,c); | ||
97 | conf.close(); | ||
98 | back.close(); | ||
99 | } | ||
100 | } | ||
101 | |||
79 | void ListViewItemConfFile::save() | 102 | void ListViewItemConfFile::save() |
80 | { | 103 | { |
81 | if (!_changed) return; | 104 | if (!_changed) return; |
82 | QString backup = confFileInfo->absFilePath()+"~"; | 105 | QString backup = confFileInfo->absFilePath()+"~"; |
83 | qDebug("make backup to "+backup); | 106 | qDebug("make backup to "+backup); |
84 | QFile conf(confFileInfo->absFilePath()); | 107 | QFile conf(confFileInfo->absFilePath()); |
85 | QFile back(backup); | 108 | QFile back(backup); |
86 | 109 | ||
87 | if (!conf.open(IO_ReadOnly)) return; | 110 | if (!conf.open(IO_ReadOnly)) return; |
88 | if (!back.open(IO_WriteOnly)) return; | 111 | if (!back.open(IO_WriteOnly)) return; |
89 | 112 | ||
90 | #define SIZE 124 | 113 | #define SIZE 124 |
@@ -92,15 +115,20 @@ void ListViewItemConfFile::save() | |||
92 | while (int c = conf.readBlock(buf, SIZE) ) back.writeBlock(buf,c); | 115 | while (int c = conf.readBlock(buf, SIZE) ) back.writeBlock(buf,c); |
93 | conf.close(); | 116 | conf.close(); |
94 | back.close(); | 117 | back.close(); |
95 | 118 | ||
96 | 119 | ||
97 | if (!conf.open(IO_WriteOnly)) return; | 120 | if (!conf.open(IO_WriteOnly)) return; |
98 | QTextStream *t = new QTextStream( &conf ); | 121 | QTextStream *t = new QTextStream( &conf ); |
99 | for (QListViewItem *it = firstChild(); it!=0;it = it->nextSibling()) | 122 | for (QListViewItem *it = firstChild(); it!=0;it = it->nextSibling()) |
100 | { | 123 | { |
101 | ((ListViewItemConfigEntry*)it)->save(t); | 124 | ((ListViewItemConfigEntry*)it)->save(t); |
102 | } | 125 | } |
103 | conf.close(); | 126 | conf.close(); |
104 | qDebug("no saveing yet..."); | ||
105 | unchanged(); | 127 | unchanged(); |
106 | } | 128 | } |
129 | |||
130 | |||
131 | bool ListViewItemConfFile::revertable() | ||
132 | { | ||
133 | return _changed || QFile(confFileInfo->absFilePath()+"~").exists(); | ||
134 | } \ No newline at end of file | ||