1
0
Fork 0

add a table column for status

This commit is contained in:
Kevin Matz 2022-12-02 15:28:06 -05:00
parent 2cb021b184
commit f500d6d376
3 changed files with 20 additions and 2 deletions

View File

@ -4,6 +4,7 @@
#include <QFont>
#include <QMetaEnum>
#include <QMetaType>
#include <QObject>
/**
@ -170,6 +171,19 @@ QVariant MultiverseItem::data(int column, int role) const
{
case MultiverseModel::Universe:
return universe_->number();
case MultiverseModel::Status:
switch (universe_->status()) {
case sACN::Universe::DMX_NULL:
return QObject::tr("Pending");
case sACN::Universe::DMX_ACTIVE:
return QObject::tr("Active");
case sACN::Universe::DMX_LOST:
return QObject::tr("Lost");
case sACN::Universe::sACN_TERMINATED:
return QObject::tr("Terminated");
default:
return QVariant();
}
case MultiverseModel::Priority:
{
auto v = universe_->priority();
@ -180,7 +194,7 @@ QVariant MultiverseItem::data(int column, int role) const
case MultiverseModel::Channels:
{
auto active = universe_->activeSlots();
return active ? active - 1 : active;
return active ? active - 1 : QVariant();
}
case MultiverseModel::SourceName:
return universe_->sourceName();
@ -224,7 +238,7 @@ QVariant MultiverseItem::data(int column, int role) const
return font;
case sACN::Universe::sACN_TERMINATED:
font.setWeight(QFont::Light);
font.setStrikeOut(true);
font.setItalic(true);
return font;
default:
return QVariant();
@ -305,6 +319,7 @@ Qt::ItemFlags MultiverseItem::flags(int column, Qt::ItemFlags base) const
switch (static_cast<MultiverseModel::Column>(column))
{
case MultiverseModel::Universe:
case MultiverseModel::Status:
case MultiverseModel::Channels:
case MultiverseModel::SourceName:
return base;

View File

@ -87,6 +87,8 @@ QVariant MultiverseModel::headerData(int section, Qt::Orientation orientation,
switch (static_cast<Column>(section)) {
case Universe:
return tr("Universe");
case Status:
return tr("Status");
case Priority:
return tr("Priority");
case Channels:

View File

@ -26,6 +26,7 @@ public:
/// @brief The Column enum
enum Column {
Universe,
Status,
Priority,
Channels,
SourceName