/** * @RDE_HEADER@ * SituationMap - Layer Control Dialog * $Id$ * $HeadURL$ * $Author$ * Created by Christian Ehrlicher, SLSE, 2016-02-29 */ #pragma once //Own #include "layers_model.h" //Lts #include #include //Map #include #include //Qt namespace Ui { class LayerControlDialog; } namespace SituationMap { struct SliderStruct; // -------------------------------------------------------- // LayerControlDialog // -------------------------------------------------------- class LayerControlDialog : public LtsWidgets::LtsDialog { Q_OBJECT public: explicit LayerControlDialog(QWidget *parent = nullptr); ~LayerControlDialog(); bool init(LtsSession::LtsSession *session, SituationMap::Map *map); private: void retranslate() override; private Q_SLOTS: void onMapReady(); void onMapDestroyed(); void onLayerParamterChanged(); void onRotationSliderValueChanged(); void onRotationOfMapChanged(double rotation); void onZoomSliderInit(); void onZoomSliderValueChanged(); void onMapExtentChanged(); void onNavigateBelowGroundValueChanged(int state); void onNavigateBelowGroundOfMapChanged(NavigationConstraint newNavigationConstraint); void onBaseSurfaceOpacitySliderValueChanged(); void onBaseSurfaceOpacityOfMapChanged(float opacity); void layerOnOff(const QString &layerName, bool isVisible); void onPushButtonUpClicked(); void onPushButtonDownClicked(); void onLayerDataChanged(const QString &layerName, int newValue, int column); void onLoadButtonClicked(); private: friend class SpinBoxDelegate; LayersModel *layersModel() { return m_layersModel; } LtsSession::LtsSession *m_session; Map *m_situationMap; bool m_ignoreLayerParameterChanged = false; LayersModel *m_layersModel; Ui::LayerControlDialog *m_ui; LOGGER_T m_logger; }; } // namespace SituationMap