/** * @RDE_HEADER@ * HMI Plugin for ParticipantManagement - TlnInfoTableDialog * $Id$ * $HeadURL$ * $Author$ * Created by Astrid Mueller, SGAS, 2017-07-10 */ #pragma once //Lts #include #include //ParticipantManagement #include #include //DDS #include #include //Qt class QSortFilterProxyModel; class QItemSelection; namespace Ui { class ParticipantInfoTableDialog; } namespace ParticipantManagement { class InfoTableConfigureDialog; // -------------------------------------------------------- // ParticipantInfoTableDialog // -------------------------------------------------------- class ParticipantInfoTableDialog : public LtsWidgets::LtsDialog { Q_OBJECT public: explicit ParticipantInfoTableDialog(const QString &menuGroup, QWidget *parent = nullptr); ~ParticipantInfoTableDialog(); bool init(LtsSession::LtsSession *session, const std::shared_ptr &dtc); private slots: void onColumnContextMenu(const QPoint &position); void onAddClicked(); void onRemoveClicked(); void onSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected); void onShowTlnInfo(const QModelIndex &idx); void onAddParticipants(const QSet &participantIds); private: void retranslate() override; QString m_menuGroup; LtsSession::LtsSession *m_session; std::shared_ptr m_dtc; std::shared_ptr m_ppmGuiIfc; Ui::ParticipantInfoTableDialog *m_ui; LOGGER_T m_logger; ParticipantInfoTableModel *m_infoTableModel; QSortFilterProxyModel *m_sortFilterProxyModel; QVector m_visibleColumns; }; } // namespace ParticipantManagement