/** * @RDE_HEADER@ * The EditVideoTeamDialog allows to set data for a VideoTeam * $Id$ * $HeadURL$ * $Author$ * Created by Hannes Baeuerle, SLSE, 2017-07-25 */ #pragma once #include #include #include #include class QCheckBox; namespace Ui { class EditVideoTeamDialog; } namespace AudioVideoManagement { class EditVideoTeamDialog : public LtsWidgets::LtsDialog { Q_OBJECT public: explicit EditVideoTeamDialog(const std::shared_ptr &avmDtc, int32_t exerciseId, QWidget *parent = nullptr); explicit EditVideoTeamDialog(int32_t id, const std::shared_ptr &avmDtc, int32_t exerciseId, const VideoTeam &team, QWidget *parent); ~EditVideoTeamDialog(); void retranslate() override; Q_SIGNALS: void modifyRequest(const AudioVideoManagement::VideoTeamModifyRequest &request); protected: bool apply() override; private: // methods EditVideoTeamDialog(int32_t id, const std::shared_ptr &avmDtc, int32_t exerciseId, QWidget *parent); void init(); private Q_SLOTS: void onCheckTakenTeams(); void onCurrentTeamChanged(); private: // attributes Ui::EditVideoTeamDialog *m_ui; int32_t m_exerciseId; int32_t m_id; VideoTeam m_videoTeam; std::shared_ptr m_avmDtc; QMap m_takenTeams; QMap m_teamsToIndex; LOGGER_T m_logger; }; // class EditVideoTeamDialog } // namespace AudioVideoManagement