refactor: improve code readability

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
This commit is contained in:
Sefa Eyeoglu 2022-10-01 22:16:07 +02:00
parent 61f938546d
commit 24060291c8
No known key found for this signature in database
GPG Key ID: C10411294912A422

View File

@ -153,45 +153,53 @@ QVariant InstanceList::data(const QModelIndex& index, int role) const {
}
const InstancePtr inst = m_instances[index.row()];
switch (static_cast<Column>(index.column())) {
case IconColumn:
if (role == Qt::DecorationRole) {
switch (role) {
case Qt::DecorationRole: {
if (index.column() == IconColumn)
return inst->iconKey();
}
break;
}
case Qt::DisplayRole: {
switch (index.column()) {
case NameColumn:
if (role == Qt::DisplayRole || role == Qt::EditRole)
return inst->name();
if (role == Qt::AccessibleTextRole)
return tr("%1 Instance").arg(inst->name());
if (role == Qt::ToolTipRole)
return inst->instanceRoot();
break;
case GameVersionColumn: {
if (role == Qt::DisplayRole)
case GameVersionColumn:
return inst->getMainVersion();
case PlayTimeColumn:
return Time::prettifyDuration(inst->totalTimePlayed());
case LastPlayedColumn:
return QDateTime::fromMSecsSinceEpoch(inst->lastLaunch());
}
break;
}
case PlayTimeColumn: {
QString foo = Time::prettifyDuration(inst->totalTimePlayed());
if (role == Qt::DisplayRole)
return foo;
if (role == Qt::ToolTipRole)
return tr("Total played for %1").arg(foo);
case Qt::ToolTipRole: {
switch (index.column()) {
case NameColumn:
return inst->instanceRoot();
case GameVersionColumn:
return inst->getMainVersion();
case PlayTimeColumn:
return tr("Total played for %1").arg(Time::prettifyDuration(inst->totalTimePlayed()));
case LastPlayedColumn:
return tr("Last played for %1").arg(Time::prettifyDuration(inst->lastTimePlayed()));
}
break;
}
case LastPlayedColumn: {
QString foo = Time::prettifyDuration(inst->lastTimePlayed());
QDateTime bar = QDateTime::fromMSecsSinceEpoch(inst->lastLaunch());
if (role == Qt::DisplayRole)
return bar;
if (role == Qt::ToolTipRole)
return tr("Last played for %1").arg(foo);
case Qt::EditRole: {
if (index.column() == NameColumn)
return data(index, Qt::DisplayRole);
break;
}
default:
case Qt::AccessibleTextRole: {
if (index.column() == NameColumn)
return tr("%1 Instance").arg(inst->name());
break;
}
}
return QVariant();
}