# # # patch "src/model/Certs.cpp" # from [e4a81c6408c64be1a305aa5eb70842e589e34311] # to [c2f31fd9fd521deeeca8dfef1bcd12c21c17ab94] # # patch "src/model/Certs.h" # from [17c33f34b4be6c0830c784574705dd74e42312ca] # to [7d62fd08840135a997bd029e0f9e0bfe1d0c6128] # ============================================================ --- src/model/Certs.cpp e4a81c6408c64be1a305aa5eb70842e589e34311 +++ src/model/Certs.cpp c2f31fd9fd521deeeca8dfef1bcd12c21c17ab94 @@ -22,38 +22,34 @@ #include "Monotone.h" #include "BasicIOParser.h" -Certs::Certs(QObject *parent) : QAbstractItemModel(parent) +Certs::Certs(QObject * parent, const QString & db) + : QAbstractItemModel(parent), AutomateCommand(db) { certs = new CertList(); - mtnDelegate = new MonotoneDelegate(this); } Certs::~Certs() { certs->clear(); delete certs; - delete mtnDelegate; } -bool Certs::readCerts(const QString & rev) +void Certs::readCerts(const QString & rev) { // clear current attributes list certs->clear(); // reset the view reset(); - if (rev.size() == 0) return true; - - QStringList cmd; - cmd.append("certs"); - cmd.append(rev); - - return mtnDelegate->triggerCommand(cmd); + if (rev.size() == 0) return; + + MonotoneTask task(QStringList() << "certs" << rev); + AutomateCommand::enqueueTask(task); } -void Certs::parseOutput() +void Certs::processTaskResult(const MonotoneTask & task) { - BasicIOParser parser(AutomateCommand::data); + BasicIOParser parser(task.getOutputUtf8()); I(parser.parse()); StanzaList list = parser.getStanzas(); @@ -137,12 +133,13 @@ void Certs::parseOutput() emit certsRead(); } -int Certs::columnCount(const QModelIndex &parent) const +int Certs::columnCount(const QModelIndex & parent) const { + Q_UNUSED(parent); return 6; } -QVariant Certs::data(const QModelIndex &index, int role) const +QVariant Certs::data(const QModelIndex & index, int role) const { if (!index.isValid()) { @@ -188,8 +185,9 @@ QVariant Certs::data(const QModelIndex & return QVariant(); } -Qt::ItemFlags Certs::flags(const QModelIndex &index) const -{ +Qt::ItemFlags Certs::flags(const QModelIndex & index) const +{ + Q_UNUSED(index); // rows shouldn't be selectable or anything else return Qt::ItemIsEnabled; } @@ -210,12 +208,13 @@ QVariant Certs::headerData(int section, return QVariant(); } -int Certs::rowCount(const QModelIndex& parent) const +int Certs::rowCount(const QModelIndex & parent) const { + Q_UNUSED(parent); return certs->size(); } -QModelIndex Certs::index(int row, int column, const QModelIndex& parent) const +QModelIndex Certs::index(int row, int column, const QModelIndex & parent) const { if (!hasIndex(row, column, parent)) { @@ -224,8 +223,9 @@ QModelIndex Certs::index(int row, int co return createIndex(row, column, 0); } -QModelIndex Certs::parent(const QModelIndex& index) const +QModelIndex Certs::parent(const QModelIndex & index) const { + Q_UNUSED(index); return QModelIndex(); } ============================================================ --- src/model/Certs.h 17c33f34b4be6c0830c784574705dd74e42312ca +++ src/model/Certs.h 7d62fd08840135a997bd029e0f9e0bfe1d0c6128 @@ -18,30 +18,19 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ -// TODO: enable editing of items as well as dropping/adding them - #ifndef CERTS_H #define CERTS_H #include "AutomateCommand.h" -#include "MonotoneDelegate.h" +#include "vocab.h" #include -typedef struct { - enum Trust { Trusted, Untrusted } trust; - enum Signature { Ok, Bad, Unknown } signature; - QString key; - QString name; - QString value; -} Cert; -typedef QList CertList; - class Certs : public QAbstractItemModel, public AutomateCommand { Q_OBJECT public: - Certs(QObject*); + Certs(QObject *, const QString &); virtual ~Certs(); void clearData(); @@ -55,15 +44,14 @@ public slots: int columnCount(const QModelIndex&) const; public slots: - bool readCerts(const QString &); + void readCerts(const QString &); signals: void certsRead(); private: - void parseOutput(); - CertList *certs; - MonotoneDelegate * mtnDelegate; + void processTaskResult(const MonotoneTask &); + CertList * certs; }; #endif