Files
qt5-legatus-legacy/Lts/Plugins/SituationMapPlugin/Gui/SituationMap/sitmap_layer_control.h
T
2026-08-13 18:33:10 +02:00

91 lines
1.9 KiB
C++
Executable File

/**
* @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 <LtsWidgets/lts_dialog.h>
#include <LtsSession/lts_session.h>
//Map
#include <Common/situation_map_logging.h>
#include <Map/map.h>
//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