Chris@74: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ Chris@74: Chris@74: /* Chris@74: EasyMercurial Chris@74: Chris@74: Based on HgExplorer by Jari Korhonen Chris@74: Copyright (c) 2010 Jari Korhonen Chris@74: Copyright (c) 2010 Chris Cannam Chris@74: Copyright (c) 2010 Queen Mary, University of London Chris@74: Chris@74: This program is free software; you can redistribute it and/or Chris@74: modify it under the terms of the GNU General Public License as Chris@74: published by the Free Software Foundation; either version 2 of the Chris@74: License, or (at your option) any later version. See the file Chris@74: COPYING included with this distribution for more information. Chris@74: */ Chris@74: Chris@92: #ifndef FILESTATES_H Chris@92: #define FILESTATES_H Chris@74: Chris@74: #include Chris@94: #include Chris@94: #include Chris@74: Chris@92: class FileStates Chris@74: { Chris@74: public: Chris@94: FileStates(); Chris@92: Chris@92: enum State { Chris@92: Chris@94: Clean, Chris@92: Modified, Chris@92: Added, Chris@92: Unknown, Chris@92: Removed, Chris@92: Missing, Chris@159: InConflict Chris@92: Chris@94: FirstState = Clean, Chris@159: LastState = InConflict Chris@92: }; Chris@74: Chris@94: void parseStates(QString text); Chris@92: Chris@94: void clearBuckets(); Chris@94: Chris@94: QStringList getFilesInState(State) const; Chris@94: Chris@94: QStringList modified() const { return m_modified; } Chris@94: QStringList added() const { return m_added; } Chris@94: QStringList unknown() const { return m_unknown; } Chris@94: QStringList removed() const { return m_removed; } Chris@94: QStringList missing() const { return m_missing; } Chris@159: QStringList inConflict() const { return m_inConflict; } Chris@94: Chris@94: State getStateOfFile(QString file) const; Chris@94: Chris@94: private: Chris@94: QStringList m_modified; Chris@94: QStringList m_added; Chris@94: QStringList m_unknown; Chris@94: QStringList m_removed; Chris@94: QStringList m_missing; Chris@159: QStringList m_inConflict; Chris@94: QMap m_stateMap; Chris@94: Chris@94: State charToState(QChar, bool * = 0); Chris@94: QStringList *stateToBucket(State); Chris@74: }; Chris@74: Chris@92: #endif // FILESTATES_H