Files
qt5-legatus-legacy/Lts/Plugins/GuezNasat/Gui/ConfigNasat/new_gna_dialog.cpp
T
2026-08-13 18:33:10 +02:00

70 lines
1.6 KiB
C++
Executable File

/**
* @RDE_HEADER@
* Beschreibung des Dialogs
* $Id$
* $HeadURL$
* $Author$
* Created by Mike Wille, SLSE, 2017-11-01
*/
#include "new_gna_dialog.h"
#include "ui_new_gna_dialog.h"
#include <LtsWidgets/lts_dialog.h>
namespace GuezNasat
{
NewGuezNasatDialog::NewGuezNasatDialog(QWidget *parent)
: LtsWidgets::LtsDialog(parent, LtsWidgets::ButtonCombination::OkApplyCancel)
, m_ui(new Ui::NewGuezNasatDialog)
, m_requestHelper(new LtsUtils::RequestHelper(this))
, m_logger(getLogger("Dialog"))
{
m_ui->setupUi(this);
}
NewGuezNasatDialog::~NewGuezNasatDialog()
{
delete m_ui;
}
bool NewGuezNasatDialog::init(const std::shared_ptr<GuezNasat::Interface::Ftc> &ftc,
const NasatAircraft &aircraft)
{
m_ftc = ftc;
m_id = aircraft.id();
m_ui->svNasatId->setValue(aircraft.nasatId());
m_ui->leName->setText(QString::fromStdString(aircraft.name()));
m_buttonBox->setButtonVisible(LtsWidgets::DialogButton::Apply, false);
setOnlineHelpFilename(QStringLiteral("Administrator-Airplanes"));
return true;
}
void NewGuezNasatDialog::retranslate()
{
translate(m_ui, m_id <= 0 ? tr("Add Aircraft") : tr("Edit Aircraft"));
}
bool NewGuezNasatDialog::apply()
{
int32_t id = m_id;
int32_t nasatId = m_ui->svNasatId->value();
bool simulationActive = false;
QString nameStr = m_ui->leName->text();
const NasatAircraft req(id, nasatId, simulationActive, nameStr.toStdString());
return m_requestHelper->startSingleRequest([req, this]()
{
return m_ftc->modifyNasatAircraftRequest(req, this);
});
} // end of apply
} // namespace GuezNasat