Files
qt5-legatus-legacy/Lts/Plugins/ParticipantManagement/Gui/ParticipantInfo/participant_set_sanitation_dialog.h
T
2026-08-13 18:33:10 +02:00

78 lines
2.0 KiB
C++
Executable File

/**
* @RDE_HEADER@
* SetSanitationDialog - Send a Sanitation telegram in TAB
* $Id$
* $HeadURL$
* $Author$
* Created by Patric Karwat - 2020-06-20
*/
#pragma once
//Lts
#include <LtsWidgets/lts_dialog.h>
#include <LtsSession/lts_session.h>
//ParticipantManagement
#include <ParticipantManagement/logger.h>
#include <ParticipantManagement/ppm_dtc.h>
#include <ParticipantManagement/ppm_ftc.h>
#include <LtsUtilsGuiDds/request_helper.h>
//ProjectDataManagement
#include <ProjectDataManagement/pdm_dtc.h>
#include <QList>
class QGroupBox;
class QCheckBox;
namespace Ui
{
class ParticipantSetSanitationDialog;
}
namespace ParticipantManagement
{
class ParticipantSetSanitationDialog : public LtsWidgets::LtsDialog
, protected ParticipantManagement::Interface::Ftc::SetSanitationReplyHandler
{
Q_OBJECT
public:
explicit ParticipantSetSanitationDialog(int participantId, QWidget *parent = nullptr);
~ParticipantSetSanitationDialog();
bool init(LtsSession::LtsSession *session,
const std::shared_ptr<Interface::Dtc> &dtc,
const std::shared_ptr<Interface::Ftc> &ftc,
const std::shared_ptr<ProjectDataManagement::Interface::Dtc> &dtcPdm);
private slots:
void onQualificationChanged();
private:
void fillCb();
void setCbxName();
qint64 getProcedures();
void retranslate() override;
QGroupBox *getGroupBox(std::string boxName);
bool apply() override final;
void onSetSanitationReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); }
private:
LtsUtils::RequestHelper *m_requestHelper;
int m_participantId;
int m_eqId{-1};
LtsSession::LtsSession *m_session;
std::shared_ptr<ParticipantManagement::Interface::Dtc> m_dtc;
std::shared_ptr<ParticipantManagement::Interface::Ftc> m_ftc;
std::shared_ptr<ProjectDataManagement::Interface::Dtc> m_dtcPdm;
QList<QCheckBox *> m_procedures;
Ui::ParticipantSetSanitationDialog *m_ui;
LOGGER_T m_logger;
};
} //namespace ParticipantManagement