91 lines
1.9 KiB
C++
Executable File
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
|