/** *@RDE_HEADER@ * GUI Plugin for Building- Info * $Id$ * $HeadURL$ * $Author$ * Created by hjl, SLSE, 2017-04-05 */ #pragma once //Buildings #include "info_dialog_base.h" // DDS #include #include #include #include #include //#include #include #include class QUrl; class QVBoxLayout; namespace InfrastructureManagement { class ForeignGuiComboboxInterface; class ForeignDataInterface; } namespace Ui { class BridgeInfoDialog; } namespace AssetManagement { namespace Interface { class Dtc; } } namespace LtsSession { class LtsSession; } namespace Buildings { // -------------------------------------------------------- // BridgeInfoDialog // -------------------------------------------------------- class BridgeInfoDialog : public InfoDialogBase { Q_OBJECT public: explicit BridgeInfoDialog(int assetId, const QString &menuGroup, QWidget *parent = nullptr); ~BridgeInfoDialog(); bool init(LtsSession::LtsSession *session) override; QString buildingDisplayName() const override; private: void retranslate() override; void showBuildingInfos() override; //void startRequest(const QUrl &requestedUrl); void showBridgeInfos(); void initUI(); private slots: void onMainStructureElementChanged(const InfrastructureManagement::MainStructureElement &data, DataModification modType); void bridgeStatusChanged(); void onOpenHistory(); private: Ui::BridgeInfoDialog *m_ui {nullptr}; std::shared_ptr m_ftc; std::shared_ptr m_bldDtc; InfrastructureManagement::MainStructureElement m_mse; std::shared_ptr m_ismCbxIfc {nullptr}; std::shared_ptr m_ismFtc {nullptr}; QMap m_icon_pixmaps; }; } // namespace Buildings