/** * @RDE_HEADER@ * ExerciseManangement - Exercise Phase Edit Dialog * $Id$ * $HeadURL$ * $Author$ * Created by Philipp Dassow, SLS1, 2017-04-12 */ #pragma once #include #include #include #include #include #include #include #include namespace Ui { class ExerciseManagementPhaseEditDialog; } namespace ExerciseManagement { class ExerciseManagementPhaseEditDialog : public LtsWidgets::LtsDialog , protected ExerciseManagement::Interface::Ftc::ExercisePhaseCreateReplyHandler , protected ExerciseManagement::Interface::Ftc::ExercisePhaseModifyReplyHandler , protected FileManagement::Interface::Ftc::FolderModifyReplyHandler { Q_OBJECT public: explicit ExerciseManagementPhaseEditDialog(QWidget *parent = nullptr); bool init(LtsSession::LtsSessionDataDds *session, const int exerciseId, const int phaseId); ~ExerciseManagementPhaseEditDialog(); void onExercisePhaseCreateReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); } void onExercisePhaseModifyReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); } void onFolderModifyReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); } signals: void sendData(const ExerciseManagement::ExercisePhase &data); private: void retranslate() override; bool apply() override final; Ui::ExerciseManagementPhaseEditDialog *m_ui{nullptr}; LtsSession::LtsSessionDataDds *m_session{nullptr}; int m_exercisePhaseId{-1}; int m_exerciseId{-1}; std::shared_ptr m_dtc; std::shared_ptr m_ftc; std::shared_ptr m_flmDtc; std::shared_ptr m_flmFtc; LtsUtils::RequestHelper *m_requestHelper{nullptr}; LOGGER_T m_logger; }; }