75 lines
1.7 KiB
C++
Executable File
75 lines
1.7 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* HMI Plugin for AlarmManagement - AlarmManagement Model
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
* Created by Patric Karwat, SLSE, 2016-10.05
|
|
*/
|
|
|
|
#include "gna_nasat_aircraft_model.h"
|
|
#include <GuezNasat/gna_translation.h>
|
|
#include <LtsSession/lts_session_data.h>
|
|
|
|
|
|
namespace GuezNasat
|
|
{
|
|
//---------------------------------
|
|
// NasatAircraftModel
|
|
//---------------------------------
|
|
NasatAircraftModel::NasatAircraftModel(QObject *parent)
|
|
: LtsWidgets::LtsAbstractTableModel<GuezNasat::NasatAircraft>(
|
|
{
|
|
tr("Id"),
|
|
tr("NASAT Identifier"),
|
|
tr("Name"),
|
|
tr("Simulation Activated")
|
|
},
|
|
parent)
|
|
, m_dtc(nullptr)
|
|
, m_logger(getLogger("NasatAircraftModel"))
|
|
{}
|
|
|
|
|
|
bool NasatAircraftModel::initModel(const std::shared_ptr<GuezNasat::Interface::Dtc> &dtc)
|
|
{
|
|
m_dtc = dtc;
|
|
|
|
// insert Model
|
|
connect(m_dtc.get(), &Interface::Dtc::nasatAircraftChanged,
|
|
this, &NasatAircraftModel::onDataChanged);
|
|
auto cb = [this](const NasatAircraft &data)
|
|
{
|
|
onDataChanged(data, DataModification::eAdded);
|
|
};
|
|
m_dtc->nasatAircrafts(cb);
|
|
|
|
return true;
|
|
}
|
|
|
|
QVariant NasatAircraftModel::data(const QModelIndex &index, int role) const
|
|
{
|
|
INFO_LOG(m_logger) << "NasatAircraftModel::data";
|
|
|
|
if (role != Qt::DisplayRole || !indexIsValid(index))
|
|
return QVariant();
|
|
|
|
const GuezNasat::NasatAircraft &nasatAircraft = m_vecData.at(index.row());
|
|
|
|
switch (index.column())
|
|
{
|
|
case Id:
|
|
return nasatAircraft.id();
|
|
case NasatId:
|
|
return nasatAircraft.nasatId();
|
|
case SimulationActive:
|
|
return nasatAircraft.simulationActive() ? tr("Yes") : tr("No");
|
|
case Name:
|
|
return QString::fromStdString(nasatAircraft.name());
|
|
}
|
|
|
|
return QVariant();
|
|
}
|
|
|
|
} // namespace GuezNasat
|