Chris@74: #include "statparser.h" Chris@74: Chris@86: #include "debug.h" Chris@86: Chris@74: #include Chris@74: Chris@74: StatParser::StatParser(QString text) Chris@74: { Chris@74: text.replace("\r\n", "\n"); Chris@74: Chris@74: QMap buckets; Chris@74: buckets['M'] = &modified; Chris@74: buckets['A'] = &added; Chris@74: buckets['R'] = &removed; Chris@74: buckets['!'] = &missing; Chris@74: buckets['?'] = &unknown; Chris@74: Chris@74: QStringList lines = text.split("\n", QString::SkipEmptyParts); Chris@74: foreach (QString line, lines) { Chris@86: if (line.length() < 3 || line[1] != ' ') { Chris@86: continue; Chris@86: } Chris@74: QChar tag = line[0]; Chris@74: QString file = line.right(line.length() - 2); Chris@74: if (buckets.contains(tag)) { Chris@74: buckets[tag]->push_back(file); Chris@74: } Chris@74: } Chris@86: Chris@86: DEBUG << "StatParser: " << modified.size() << " modified, " << added.size() Chris@86: << " added, " << removed.size() << " removed, " << missing.size() Chris@86: << " missing, " << unknown.size() << " unknown" << endl; Chris@74: }