From: APTX Date: Tue, 13 Dec 2011 13:55:49 +0000 (+0100) Subject: Add color decoration to Edge model node and color columns. X-Git-Url: https://gitweb.tyo.aptx.org/?a=commitdiff_plain;h=0010495484a4974f1a956c3d7be8b6caeed5f00a;p=graph.git Add color decoration to Edge model node and color columns. --- diff --git a/edgemodel.cpp b/edgemodel.cpp index 974a9de..6736c6a 100644 --- a/edgemodel.cpp +++ b/edgemodel.cpp @@ -51,10 +51,27 @@ int EdgeModel::columnCount(const QModelIndex &) const QVariant EdgeModel::data(const QModelIndex &index, int role) const { + Edge *e = g->m_edgeList[index.row()]; + + if (role == Qt::DecorationRole) + { + switch (index.column()) + { + case 0: + return e->startNode()->color(); + case 1: + return e->endNode()->color(); + case 3: + return e->color(); + default: + break; + } + return QVariant(); + } + if (role != Qt::DisplayRole && role != Qt::EditRole) return QVariant(); - Edge *e = g->m_edgeList[index.row()]; switch (index.column()) { case 0: diff --git a/nodemodel.cpp b/nodemodel.cpp index b2a2596..10a7d77 100644 --- a/nodemodel.cpp +++ b/nodemodel.cpp @@ -90,6 +90,7 @@ bool NodeModel::setData(const QModelIndex &index, const QVariant &value, int rol case 1: n->setColor(value.value()); n->update(); + g->labelChanged(); return true; case 2: r = value.toReal(&ok);