-rw-r--r-- | pwmanager/pwmanager/csv.cpp | 36 |
1 files changed, 19 insertions, 17 deletions
diff --git a/pwmanager/pwmanager/csv.cpp b/pwmanager/pwmanager/csv.cpp index 194edf2..226cc08 100644 --- a/pwmanager/pwmanager/csv.cpp +++ b/pwmanager/pwmanager/csv.cpp | |||
@@ -20,12 +20,14 @@ | |||
20 | #include "csv.h" | 20 | #include "csv.h" |
21 | #include "pwmdoc.h" | 21 | #include "pwmdoc.h" |
22 | #include "pwmexception.h" | 22 | #include "pwmexception.h" |
23 | 23 | ||
24 | #include <kmessagebox.h> | 24 | #include <kmessagebox.h> |
25 | #include <klocale.h> | 25 | #include <klocale.h> |
26 | //Added by qt3to4: | ||
27 | #include <Q3CString> | ||
26 | 28 | ||
27 | #define MAX_CSV_FILE_SIZE(50 * 1024 * 1024) // bytes | 29 | #define MAX_CSV_FILE_SIZE(50 * 1024 * 1024) // bytes |
28 | 30 | ||
29 | 31 | ||
30 | Csv::Csv(QWidget *_parent) | 32 | Csv::Csv(QWidget *_parent) |
31 | : parent (_parent) | 33 | : parent (_parent) |
@@ -39,13 +41,13 @@ Csv::~Csv() | |||
39 | bool Csv::importData(const QString &filepath, | 41 | bool Csv::importData(const QString &filepath, |
40 | PwMDoc *doc) | 42 | PwMDoc *doc) |
41 | { | 43 | { |
42 | bool ret = true; | 44 | bool ret = true; |
43 | QByteArray d; | 45 | QByteArray d; |
44 | QFile f(filepath); | 46 | QFile f(filepath); |
45 | if (!f.open(IO_ReadOnly)) { | 47 | if (!f.open(QIODevice::ReadOnly)) { |
46 | KMessageBox::error(parent, | 48 | KMessageBox::error(parent, |
47 | i18n("Could not open file.\n" | 49 | i18n("Could not open file.\n" |
48 | "Does the file exist?"), | 50 | "Does the file exist?"), |
49 | i18n("Open error.")); | 51 | i18n("Open error.")); |
50 | ret = false; | 52 | ret = false; |
51 | goto out; | 53 | goto out; |
@@ -86,13 +88,13 @@ bool Csv::doImport(const QByteArray &d, | |||
86 | PwMDataItem di; | 88 | PwMDataItem di; |
87 | //US ENH: initialize all members: | 89 | //US ENH: initialize all members: |
88 | di.clear(); | 90 | di.clear(); |
89 | 91 | ||
90 | int refIndex = 0; | 92 | int refIndex = 0; |
91 | int ret; | 93 | int ret; |
92 | QCString s, curCat; | 94 | Q3CString s, curCat; |
93 | int fieldIndex = 0; | 95 | int fieldIndex = 0; |
94 | bool inRecord = false; | 96 | bool inRecord = false; |
95 | /* fieldIndex is a reference count to see which | 97 | /* fieldIndex is a reference count to see which |
96 | * value we are attaching to di. | 98 | * value we are attaching to di. |
97 | * Valid counts are: | 99 | * Valid counts are: |
98 | * 0 -> category | 100 | * 0 -> category |
@@ -118,46 +120,46 @@ bool Csv::doImport(const QByteArray &d, | |||
118 | */ | 120 | */ |
119 | ++fieldIndex; | 121 | ++fieldIndex; |
120 | } else | 122 | } else |
121 | curCat = s; | 123 | curCat = s; |
122 | break; | 124 | break; |
123 | case 1:// desc | 125 | case 1:// desc |
124 | di.desc = s; | 126 | di.desc = std::string(s); |
125 | ++fieldIndex; | 127 | ++fieldIndex; |
126 | break; | 128 | break; |
127 | case 2: // name | 129 | case 2: // name |
128 | di.name = s; | 130 | di.name = std::string(s); |
129 | ++fieldIndex; | 131 | ++fieldIndex; |
130 | break; | 132 | break; |
131 | case 3: // pw | 133 | case 3: // pw |
132 | di.pw = s; | 134 | di.pw = std::string(s); |
133 | ++fieldIndex; | 135 | ++fieldIndex; |
134 | break; | 136 | break; |
135 | case 4: // url | 137 | case 4: // url |
136 | di.url = s; | 138 | di.url = std::string(s); |
137 | ++fieldIndex; | 139 | ++fieldIndex; |
138 | break; | 140 | break; |
139 | case 5: // launcher | 141 | case 5: // launcher |
140 | di.launcher = s; | 142 | di.launcher = std::string(s); |
141 | ++fieldIndex; | 143 | ++fieldIndex; |
142 | break; | 144 | break; |
143 | case 6: // comment | 145 | case 6: // comment |
144 | di.comment = s; | 146 | di.comment = std::string(s); |
145 | ++fieldIndex; | 147 | ++fieldIndex; |
146 | break; | 148 | break; |
147 | default: | 149 | default: |
148 | /* Too many fields in a record. | 150 | /* Too many fields in a record. |
149 | * We simply throw it away. | 151 | * We simply throw it away. |
150 | */ | 152 | */ |
151 | break; | 153 | break; |
152 | } | 154 | } |
153 | break; | 155 | break; |
154 | case 1: | 156 | case 1: |
155 | // record complete. | 157 | // record complete. |
156 | if (fieldIndex == 6) | 158 | if (fieldIndex == 6) |
157 | di.comment = s; | 159 | di.comment = std::string(s); |
158 | inRecord = false; | 160 | inRecord = false; |
159 | fieldIndex = 0; | 161 | fieldIndex = 0; |
160 | doc->addEntry(curCat, &di, true); | 162 | doc->addEntry(curCat, &di, true); |
161 | //US ENH: clear di for the next row | 163 | //US ENH: clear di for the next row |
162 | di.clear(); | 164 | di.clear(); |
163 | break; | 165 | break; |
@@ -172,13 +174,13 @@ bool Csv::doImport(const QByteArray &d, | |||
172 | } | 174 | } |
173 | } | 175 | } |
174 | BUG(); | 176 | BUG(); |
175 | return false; | 177 | return false; |
176 | } | 178 | } |
177 | 179 | ||
178 | int Csv::nextField(QCString *ret, | 180 | int Csv::nextField(Q3CString *ret, |
179 | const QByteArray &in, | 181 | const QByteArray &in, |
180 | bool inRecord, | 182 | bool inRecord, |
181 | int *_refIndex) | 183 | int *_refIndex) |
182 | { | 184 | { |
183 | int rv = -2; | 185 | int rv = -2; |
184 | char c; | 186 | char c; |
@@ -350,13 +352,13 @@ bool Csv::exportData(const QString &filepath, | |||
350 | i18n("Could not delete the old file."), | 352 | i18n("Could not delete the old file."), |
351 | i18n("Delete error.")); | 353 | i18n("Delete error.")); |
352 | return false; | 354 | return false; |
353 | } | 355 | } |
354 | } | 356 | } |
355 | QFile f(filepath); | 357 | QFile f(filepath); |
356 | if (!f.open(IO_ReadWrite)) { | 358 | if (!f.open(QIODevice::ReadWrite)) { |
357 | KMessageBox::error(parent, | 359 | KMessageBox::error(parent, |
358 | i18n("Could not open file for writing."), | 360 | i18n("Could not open file for writing."), |
359 | i18n("Open error.")); | 361 | i18n("Open error.")); |
360 | ret = false; | 362 | ret = false; |
361 | goto out; | 363 | goto out; |
362 | } | 364 | } |
@@ -373,13 +375,13 @@ bool Csv::doExport(QFile &f, | |||
373 | PwMDoc *doc) | 375 | PwMDoc *doc) |
374 | { | 376 | { |
375 | unsigned int numCat = doc->numCategories(); | 377 | unsigned int numCat = doc->numCategories(); |
376 | unsigned int numEntr; | 378 | unsigned int numEntr; |
377 | unsigned int i, j; | 379 | unsigned int i, j; |
378 | PwMDataItem d; | 380 | PwMDataItem d; |
379 | QCString s, catName; | 381 | Q3CString s, catName; |
380 | QByteArray b; | 382 | QByteArray b; |
381 | 383 | ||
382 | for (i = 0; i < numCat; ++i) { | 384 | for (i = 0; i < numCat; ++i) { |
383 | numEntr = doc->numEntries(i); | 385 | numEntr = doc->numEntries(i); |
384 | catName = newField(doc->getCategory(i)->c_str()); | 386 | catName = newField(doc->getCategory(i)->c_str()); |
385 | for (j = 0; j < numEntr; ++j) { | 387 | for (j = 0; j < numEntr; ++j) { |
@@ -398,31 +400,31 @@ bool Csv::doExport(QFile &f, | |||
398 | s += ","; | 400 | s += ","; |
399 | s += newField(d.comment.c_str()); | 401 | s += newField(d.comment.c_str()); |
400 | s += "\r\n"; | 402 | s += "\r\n"; |
401 | b = s; | 403 | b = s; |
402 | // remove \0 termination | 404 | // remove \0 termination |
403 | #ifndef PWM_EMBEDDED | 405 | #ifndef PWM_EMBEDDED |
404 | b.resize(b.size() - 1, QGArray::SpeedOptim); | 406 | b.resize(b.size() - 1, Q3GArray::SpeedOptim); |
405 | #else | 407 | #else |
406 | b.resize(b.size() - 1); | 408 | b.resize(b.size() - 1); |
407 | #endif | 409 | #endif |
408 | if (!f.writeBlock(b)) | 410 | if (!f.writeBlock(b)) |
409 | return false; | 411 | return false; |
410 | } | 412 | } |
411 | } | 413 | } |
412 | return true; | 414 | return true; |
413 | } | 415 | } |
414 | 416 | ||
415 | QCString Csv::newField(QCString s) | 417 | Q3CString Csv::newField(Q3CString s) |
416 | { | 418 | { |
417 | if (s.isEmpty()) | 419 | if (s.isEmpty()) |
418 | return QCString(); | 420 | return Q3CString(); |
419 | QCString ret("\""); | 421 | Q3CString ret("\""); |
420 | #ifndef PWM_EMBEDDED | 422 | #ifndef PWM_EMBEDDED |
421 | s.replace('\"', "\"\""); | 423 | s.replace('\"', "\"\""); |
422 | #else | 424 | #else |
423 | s.replace(QRegExp("\""), "\"\""); | 425 | s.replace("\"", "\"\""); |
424 | #endif | 426 | #endif |
425 | ret += s; | 427 | ret += s; |
426 | ret += "\""; | 428 | ret += "\""; |
427 | return ret; | 429 | return ret; |
428 | } | 430 | } |