Code Documentation 3.5
Social Network Visualizer
Loading...
Searching...
No Matches
EdgeTableModel Class Reference

Table model that caches edge data for the current relation from Graph and writes back via the Graph API. More...

#include <widgets/edgetablemodel.h>

Inheritance diagram for EdgeTableModel:
Collaboration diagram for EdgeTableModel:

Classes

struct  EdgeRow
 

Public Member Functions

 EdgeTableModel (QObject *parent=nullptr)
 
void populate (Graph *graph)
 Rebuilds the internal cache from graph (current relation only).
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
int columnCount (const QModelIndex &parent=QModelIndex()) const override
 
QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const override
 
QVariant headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 
bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
 

Private Attributes

Graphm_graph = nullptr
 
QList< EdgeRowm_rows
 
QStringList m_attrKeys
 

Static Private Attributes

static constexpr int FIXED_COLS = 6
 
static constexpr int COL_SOURCE = 0
 
static constexpr int COL_TARGET = 1
 
static constexpr int COL_RELATION = 2
 
static constexpr int COL_WEIGHT = 3
 
static constexpr int COL_LABEL = 4
 
static constexpr int COL_COLOR = 5
 

Detailed Description

Table model that caches edge data for the current relation from Graph and writes back via the Graph API.

Fixed columns: Source, Target, Relation, Weight, Label, Color. Dynamic columns: one per custom attribute key reported by the graph.

Constructor & Destructor Documentation

◆ EdgeTableModel()

EdgeTableModel::EdgeTableModel ( QObject *  parent = nullptr)
explicit

Member Function Documentation

◆ columnCount()

int EdgeTableModel::columnCount ( const QModelIndex &  parent = QModelIndex()) const
override

◆ data()

QVariant EdgeTableModel::data ( const QModelIndex &  index,
int  role = Qt::DisplayRole 
) const
override

◆ flags()

Qt::ItemFlags EdgeTableModel::flags ( const QModelIndex &  index) const
override

◆ headerData()

QVariant EdgeTableModel::headerData ( int  section,
Qt::Orientation  orientation,
int  role = Qt::DisplayRole 
) const
override

◆ populate()

void EdgeTableModel::populate ( Graph graph)

Rebuilds the internal cache from graph (current relation only).

Rebuilds the internal row cache from the current relation of graph.

Calls beginResetModel() / endResetModel() so connected views repaint.

Only enabled edges belonging to the current relation are included. Custom attribute keys are taken from Graph::graphHasEdgeCustomAttributes().

◆ rowCount()

int EdgeTableModel::rowCount ( const QModelIndex &  parent = QModelIndex()) const
override

◆ setData()

bool EdgeTableModel::setData ( const QModelIndex &  index,
const QVariant &  value,
int  role = Qt::EditRole 
)
override

Member Data Documentation

◆ COL_COLOR

constexpr int EdgeTableModel::COL_COLOR = 5
staticconstexprprivate

◆ COL_LABEL

constexpr int EdgeTableModel::COL_LABEL = 4
staticconstexprprivate

◆ COL_RELATION

constexpr int EdgeTableModel::COL_RELATION = 2
staticconstexprprivate

◆ COL_SOURCE

constexpr int EdgeTableModel::COL_SOURCE = 0
staticconstexprprivate

◆ COL_TARGET

constexpr int EdgeTableModel::COL_TARGET = 1
staticconstexprprivate

◆ COL_WEIGHT

constexpr int EdgeTableModel::COL_WEIGHT = 3
staticconstexprprivate

◆ FIXED_COLS

constexpr int EdgeTableModel::FIXED_COLS = 6
staticconstexprprivate

◆ m_attrKeys

QStringList EdgeTableModel::m_attrKeys
private

◆ m_graph

Graph* EdgeTableModel::m_graph = nullptr
private

◆ m_rows

QList<EdgeRow> EdgeTableModel::m_rows
private

The documentation for this class was generated from the following files: