108 lines
2.1 KiB
C++
Executable File
108 lines
2.1 KiB
C++
Executable File
|
|
|
|
|
|
#pragma once
|
|
|
|
#include <GeometryModel/geometry_model.h>
|
|
|
|
#include <QtCore/QObject>
|
|
#include <QtCore/QString>
|
|
#include <QtCore/QStringList>
|
|
|
|
#include "logging.h"
|
|
|
|
namespace SituationMap
|
|
{
|
|
class Map;
|
|
}
|
|
|
|
|
|
namespace LtsWidgets
|
|
{
|
|
class LtsBaseLayoutWidget;
|
|
class LtsDialog;
|
|
}
|
|
|
|
|
|
namespace PlanEditor
|
|
{
|
|
class PlanEditor;
|
|
class PlanEditorSession;
|
|
|
|
|
|
|
|
class AttributeDialogManager : public QObject
|
|
{
|
|
Q_OBJECT
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
explicit AttributeDialogManager(PlanEditor *planEditor
|
|
, SituationMap::Map *map
|
|
, SituationMap::GeometryModel *geoModel
|
|
, const PlanEditorSession &session);
|
|
|
|
virtual ~AttributeDialogManager();
|
|
|
|
|
|
const QString &textLines() const;
|
|
|
|
public slots:
|
|
|
|
void onOpenDialog(const SituationMap::GeometryModel::Node &node);
|
|
|
|
void onCloseDialog();
|
|
|
|
void addStyleAttributes(const SituationMap::GeometryModel::Node &node, bool prepareUndo, bool changedAttrOnly = true);
|
|
void getStyleAttributes(const SituationMap::GeometryModel::Node &node);
|
|
|
|
private:
|
|
|
|
class InternalData;
|
|
|
|
InternalData *m_internal;
|
|
|
|
void updateSelectedFeature(const QString &undoToken, SituationMap::GeometryModel::Attribute changedAttribute = SituationMap::GeometryModel::Attribute::None);
|
|
|
|
bool attributeNeedsUpdate(SituationMap::GeometryModel::Attribute attribute);
|
|
|
|
private slots:
|
|
|
|
void onResetDialog();
|
|
void onResetWidgets();
|
|
|
|
void onDrawColorEdit();
|
|
void onFillColorEdit();
|
|
void onFontColorEdit();
|
|
|
|
void onSymbolChanged();
|
|
|
|
void onUpdateParticipantColors();
|
|
|
|
void onSetLinePattern(int index);
|
|
void onSetFillPattern(int index);
|
|
void onSetFillStyle(int index);
|
|
void onSetLineWidth(int width);
|
|
void onSetLineArrowBegin(bool on);
|
|
void onSetLineArrowEnd(bool on);
|
|
void onSetFilling(bool on);
|
|
void onEditTextLines();
|
|
void onSetFontSize(double value);
|
|
void onSetFontFace(int index);
|
|
void onSetFontBold(bool on);
|
|
void onSetFontItalic(bool on);
|
|
void onSetTextAnchor(bool on);
|
|
void onRotateText(int value);
|
|
void onRotateTextSp(int value);
|
|
|
|
void onChangedParticipant();
|
|
|
|
|
|
};
|
|
|
|
|
|
}
|