/** * @RDE_HEADER@ * Evaluations - Script Overview Dialog * $Id$ * $HeadURL$ * $Author$ * * Created by Mike Wille, SLSE, 2017-03-15 */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Ui { class ElementDialog; } namespace LtsSession { class LtsSession; } namespace Evaluations { class ElementDialogModel; class ElementDialogProxyModel; class ElementDialog : public LtsWidgets::LtsDialog , protected Interface::Ftc::EvlElementModifyReplyHandler , protected Interface::Ftc::EvlElementRemoveReplyHandler { Q_OBJECT public: explicit ElementDialog(QWidget *parent = nullptr); ~ElementDialog(); bool init(int criteriumId, int exerciseId, const QString &menuGroup, 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); static QString dialogIdentifier(); 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); } private: void retranslate() override; void addElementEditDialog(int elementId = 0 /* new */); void tableColumnOrganiserSetting() override; ElementDialogModel *m_model{nullptr}; ElementDialogProxyModel *m_proxyModel{nullptr}; Ui::ElementDialog *m_ui{nullptr}; int m_criteriumId{-1}; int m_exerciseId{-1}; 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; LtsSession::LtsSession *m_session{nullptr}; LtsUtils::RequestHelper *m_requestHelper{nullptr}; QString m_menuGroup; LOGGER_T m_logger; private slots: void slotAdd(); void slotEdit(); void slotRemove(); void enaDisa(); }; } // namespace Evaluations