51 lines
988 B
C++
Executable File
51 lines
988 B
C++
Executable File
|
|
|
|
#include "app_chooser_model.h"
|
|
|
|
#include <LtsSession/lts_session.h>
|
|
|
|
|
|
namespace LtsAppManager
|
|
{
|
|
|
|
AppChooserModel::AppChooserModel(QObject *parent)
|
|
: LtsWidgets::LtsAbstractTableModel<LtsAppDescriptor::AppDescription>({tr("Name")}, parent)
|
|
|
|
{}
|
|
|
|
|
|
bool AppChooserModel::initModel(const LtsAppDescriptor::AppDescriptionVector &availableApps)
|
|
{
|
|
for (auto i = availableApps.constBegin(); i != availableApps.constEnd(); ++i)
|
|
{
|
|
const LtsAppDescriptor::AppDescription& appDesc = *i;
|
|
|
|
if (!appDesc.visible)
|
|
continue;
|
|
|
|
insertRow(appDesc);
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
|
|
QVariant AppChooserModel::data(const QModelIndex &index, int role) const
|
|
{
|
|
if (role != Qt::DisplayRole || !indexIsValid(index))
|
|
return QVariant();
|
|
|
|
const LtsAppDescriptor::AppDescription &ad = m_vecData.at(index.row());
|
|
|
|
switch (index.column())
|
|
{
|
|
case Name:
|
|
return LtsSession::LtsSession::appToString(ad.id);
|
|
case Visible:
|
|
return ad.visible;
|
|
}
|
|
|
|
return QVariant();
|
|
}
|
|
}
|