QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
LogEntryTableModel.cc
Go to the documentation of this file.
2
3int LogEntryTableModel::columnCount(const QModelIndex& parent) const
4{
5 return parent.isValid() ? 0 : static_cast<int>(LogEntry::ColumnCount);
6}
7
8QVariant LogEntryTableModel::data(const QModelIndex& index, int role) const
9{
10 const LogEntry* entry = entryAt(index.row());
11 if (!entry) {
12 return {};
13 }
14
15 if (role == Qt::DisplayRole) {
16 return entry->columnDisplayData(index.column());
17 }
18
19 return entry->roleData(role);
20}
21
22void LogEntryTableModel::multiData(const QModelIndex& index, QModelRoleDataSpan roleDataSpan) const
23{
24 const LogEntry* entry = entryAt(index.row());
25 if (!entry) {
26 return;
27 }
28
29 for (auto& roleData : roleDataSpan) {
30 const int role = roleData.role();
31 if (role == Qt::DisplayRole) {
32 roleData.setData(entry->columnDisplayData(index.column()));
33 } else {
34 roleData.setData(entry->roleData(role));
35 }
36 }
37}
38
39QVariant LogEntryTableModel::headerData(int section, Qt::Orientation orientation, int role) const
40{
41 if (orientation != Qt::Horizontal || role != Qt::DisplayRole) {
42 return {};
43 }
44 return LogEntry::columnHeaderData(section);
45}
46
47QHash<int, QByteArray> LogEntryTableModel::roleNames() const
48{
49 return LogEntry::roleNames();
50}
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override
QHash< int, QByteArray > roleNames() const override
virtual const LogEntry * entryAt(int row) const =0
Return entry at visible row, or nullptr if out of range.
int columnCount(const QModelIndex &parent=QModelIndex()) const override
void multiData(const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const override
static QVariant columnHeaderData(int section)
Definition LogEntry.cc:113
QVariant columnDisplayData(int column) const
Definition LogEntry.cc:91
QVariant roleData(int role) const
Definition LogEntry.cc:64
static QHash< int, QByteArray > roleNames()
Definition LogEntry.cc:46
@ ColumnCount
Definition LogEntry.h:73