/** * @RDE_HEADER@ * Evaluations - Script Create / Edit Dialog * $Id$ * $HeadURL$ * $Author$ * * Created by Mike Wille, SLSE, 2017-03-20 */ #pragma once #include #include #include #include #include #include #include #include #include #include #include namespace LtsWidgets { class UiRequirementList; } namespace Ui { class ElementEditDialog; } namespace LtsSession { class LtsSession; } namespace Evaluations { class ElementEditDialog : public LtsWidgets::LtsDialog , protected Interface::Ftc::EvlElementModifyReplyHandler , protected Interface::Ftc::EvlElementRemoveReplyHandler { Q_OBJECT public: explicit ElementEditDialog(QWidget *parent = nullptr); ~ElementEditDialog(); bool init(int elementId, int criteriumId, int exerciseId, const std::shared_ptr &dtc, const std::shared_ptr &ftc, const std::shared_ptr &exmDtc, const std::shared_ptr &avmDataIfc, const std::shared_ptr &fltParticipantIfc, const std::shared_ptr &fltAesIfc, const std::shared_ptr &fltBuildingComponentIfc, LtsSession::LtsSession *session); protected: void onEvlElementModifyReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); } void onEvlElementRemoveReply(const Core::FunctionReplyObject &replyObject) override final { m_requestHelper->requestReply(replyObject); } QJsonObject getFilterSettings(); private slots: void onReturnPressed(); void onCheckBoxClicked(); void onAudioClicked(); void onVideoClicked(); private: void retranslate() override; bool apply() override; void fillPhasesComboBox(); std::shared_ptr m_dtc; std::shared_ptr m_ftc; std::shared_ptr m_exmDtc; std::shared_ptr m_avmDataIfc; std::shared_ptr m_fltParticipantIfc; std::shared_ptr m_fltAesIfc; std::shared_ptr m_fltBuildingComponentIfc; std::shared_ptr m_fltDtc; LtsSession::LtsSession *m_session{nullptr}; int m_elementId{0}; int m_criteriumId{-1}; int m_exerciseId{-1}; qint64 m_startTime { 0 }; LtsUtils::RequestHelper *m_requestHelper{nullptr}; Ui::ElementEditDialog *m_ui{nullptr}; LOGGER_T m_logger; QStringList m_audioStreams; QStringList m_videoStreams; }; }