Files
qt5-legatus-legacy/Lts/Plugins/ExerciseManagement/Gui/ExerciseEdit/exm_operator_edit.h
T
2026-08-13 18:33:10 +02:00

66 lines
2.2 KiB
C++
Executable File

/**
* @RDE_HEADER@
* ExerciseManangement - Operator Edit Dialog
* $Id: exm_edit_dialog.h 41137 2018-04-20 08:50:55Z schroeder_m $
* $HeadURL: svn://slssvn/TDS/branches/product/devel/trunk/Lts/Plugins/ExerciseManagement/Gui/ExerciseEdit/exm_edit_dialog.h $
* $Author: schroeder_m $
* Created by Malte Schröder, SLSE, 2018-04-25
*/
#pragma once
#include <ExerciseManagement/exm_ftc.h>
#include <ExerciseManagement/logger.h>
#include <LtsWidgets/lts_dialog.h>
#include <LtsUtilsGuiDds/request_helper.h>
#include <LtsSession/lts_session_data_dds.h>
#include "exm_operator_model.h"
namespace Ui
{
class ExerciseManagementOperatorEdit;
}
namespace ExerciseManagement
{
class ExerciseManagementOperatorEdit : public LtsWidgets::LtsDialog
, protected ExerciseManagement::Interface::Ftc::ExerciseModifyReplyHandler
, protected OperatorManagement::Interface::Ftc::OperatorCreateModifyReplyHandler
{
Q_OBJECT
public:
explicit ExerciseManagementOperatorEdit(const QString &menuGroup, QWidget *parent = nullptr);
~ExerciseManagementOperatorEdit();
bool init(LtsSession::LtsSessionDataDds *session);
protected:
void onExerciseModifyReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); }
void onOperatorCreateModifyReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); }
private slots:
void onSelectAllUsers();
void onUnselectAllUsers();
void onContextMenuRequested(const QPoint &position);
private:
void retranslate() override;
bool apply() override final;
void sendModifiedOperators(int thisExerciseId);
Ui::ExerciseManagementOperatorEdit *m_ui;
std::shared_ptr<OperatorManagement::Interface::Dtc> m_opmDtc;
LtsSession::LtsSessionDataDds *m_session;
ExerciseOperatorModel *m_operatorModel;
QString m_menuGroup;
ExerciseManagement::Exercise m_exercise;
LtsUtils::RequestHelper *m_requestHelper;
LOGGER_T m_logger;
template<class T>
bool removeElement(std::vector<T> &vec, T elem);
};
}