Files
qt5-legatus-legacy/Lts/Plugins/SAAs/Gui/SAAChooser/saa_chooser.h
T
2026-08-13 18:33:10 +02:00

86 lines
1.5 KiB
C++
Executable File

/**
* @RDE_HEADER@
* SAAChooser
* $Id$
* $HeadURL$
* $Author$
*
* Created by Steve Kemayou, ESZS, 2025-10-16
*/
#pragma once
#include <LtsWidgets/lts_dialog.h>
#include <LtsSession/lts_session.h>
#include <SAAs/Common/logger.h>
#include <Services/ParticipantManagement/ppm_dtc.h>
#include <SAAs/Common/saa_utils.h>
#include <QDialog>
#include <QJsonDocument>
#include <QJsonObject>
namespace Ui {
class SaaChooser;
}
namespace ParticipantManagement {
class Party;
}
namespace SAAInterfaceAdapterAdler
{
class SaaDialogModel;
class SaaChooser final : public LtsWidgets::LtsDialog
{
Q_OBJECT
public:
explicit SaaChooser(QWidget *parent = nullptr);
~SaaChooser();
void retranslate() override;
bool init(LtsSession::LtsSession *session);
enum class RdesktopCodes
{
Normal,
FailedToConnect,
ConnectionRefused,
UnableToConnect,
DnsError,
ConnectionTimeOut,
NetworkError,
AuthenticationError,
Unknown
};
QString rdesktopCodeToString(RdesktopCodes code);
RdesktopCodes getRdesktopInterpretation(int code) const;
bool normalExit(int code) const;
private slots:
void startPingSaa();
void slotSelectSaa();
void enaDisa();
private:
void tableColumnOrganiserSetting() override;
Ui::SaaChooser *m_ui;
SaaDialogModel *m_model{nullptr};
LtsSession::LtsSession *m_session{nullptr};
bool m_close;
bool m_selected;
QTimer *m_pingTimer;
LOGGER_T m_logger;
};
}//namespace SAAInterfaceAdapterAdler