schematic ui modification (#2241)
This commit is contained in:
parent
1d5937a1fe
commit
045b61c7fa
13 changed files with 48 additions and 12 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -455,16 +455,17 @@
|
||||||
@schematic-FxColumn-color: @xsheet-FxColumn-color;
|
@schematic-FxColumn-color: @xsheet-FxColumn-color;
|
||||||
@schematic-PaletteColumn-color: @xsheet-PaletteColumn-color;
|
@schematic-PaletteColumn-color: @xsheet-PaletteColumn-color;
|
||||||
@schematic-MeshColumn-color: @xsheet-MeshColumn-color;
|
@schematic-MeshColumn-color: @xsheet-MeshColumn-color;
|
||||||
|
@schematic-ReferenceColumn-color: @xsheet-ReferenceColumn-color;
|
||||||
|
|
||||||
@schematic-PreviewButtonBgOn-color: @xsheet-PreviewButtonBgOn-color;
|
@schematic-PreviewButtonBgOn-color: @xsheet-PreviewButtonBgOn-color;
|
||||||
@schematic-PreviewButtonOnImage: @xsheet-PreviewButtonOnImage;
|
@schematic-PreviewButtonOnImage: @xsheet-PreviewButtonOnImage;
|
||||||
@schematic-PreviewButtonBgOff-color: fade(@xsheet-PreviewButtonBgOn-color, 50%);
|
@schematic-PreviewButtonBgOff-color: @xsheet-ReferenceColumn-color;
|
||||||
@schematic-PreviewButtonOffImage: @xsheet-PreviewButtonOffImage;
|
@schematic-PreviewButtonOffImage: @xsheet-PreviewButtonOffImage;
|
||||||
|
|
||||||
@schematic-CamstandButtonBgOn-color: @xsheet-CamstandButtonBgOn-color;
|
@schematic-CamstandButtonBgOn-color: @xsheet-CamstandButtonBgOn-color;
|
||||||
@schematic-CamstandButtonOnImage: @xsheet-CamstandButtonOnImage;
|
@schematic-CamstandButtonOnImage: @xsheet-CamstandButtonOnImage;
|
||||||
@schematic-CamstandButtonTranspImage: @xsheet-CamstandButtonTranspImage;
|
@schematic-CamstandButtonTranspImage: @xsheet-CamstandButtonTranspImage;
|
||||||
@schematic-CamstandButtonBgOff-color: fade(@xsheet-CamstandButtonBgOn-color, 50%);
|
@schematic-CamstandButtonBgOff-color: @xsheet-ReferenceColumn-color;
|
||||||
@schematic-CamstandButtonOffImage: @xsheet-CamstandButtonOffImage;
|
@schematic-CamstandButtonOffImage: @xsheet-CamstandButtonOffImage;
|
||||||
|
|
||||||
// -----------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------
|
||||||
|
|
|
@ -13,6 +13,7 @@ SchematicViewer {
|
||||||
qproperty-FxColumnColor: @schematic-FxColumn-color;
|
qproperty-FxColumnColor: @schematic-FxColumn-color;
|
||||||
qproperty-PaletteColumnColor: @schematic-PaletteColumn-color;
|
qproperty-PaletteColumnColor: @schematic-PaletteColumn-color;
|
||||||
qproperty-MeshColumnColor: @schematic-MeshColumn-color;
|
qproperty-MeshColumnColor: @schematic-MeshColumn-color;
|
||||||
|
qproperty-ReferenceColumnColor: @schematic-ReferenceColumn-color;
|
||||||
|
|
||||||
qproperty-TableColor: @schematic-TableColor;
|
qproperty-TableColor: @schematic-TableColor;
|
||||||
qproperty-ActiveCameraColor: @schematic-ActiveCameraColor;
|
qproperty-ActiveCameraColor: @schematic-ActiveCameraColor;
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -45,6 +45,7 @@ class FxColumnPainter final : public QObject, public QGraphicsItem {
|
||||||
double m_width, m_height;
|
double m_width, m_height;
|
||||||
QString m_name;
|
QString m_name;
|
||||||
int m_type;
|
int m_type;
|
||||||
|
bool m_isReference = false;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
FxColumnPainter(FxSchematicColumnNode *parent, double width, double height,
|
FxColumnPainter(FxSchematicColumnNode *parent, double width, double height,
|
||||||
|
@ -55,6 +56,7 @@ public:
|
||||||
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
|
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
|
||||||
QWidget *widget = 0) override;
|
QWidget *widget = 0) override;
|
||||||
void setName(const QString &name) { m_name = name; }
|
void setName(const QString &name) { m_name = name; }
|
||||||
|
void setIsReference(bool ref = true) { m_isReference = ref; }
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|
||||||
|
|
|
@ -185,6 +185,10 @@ class DVAPI SchematicViewer final : public QWidget {
|
||||||
Q_PROPERTY(
|
Q_PROPERTY(
|
||||||
QColor MeshColumnColor READ getMeshColumnColor WRITE setMeshColumnColor)
|
QColor MeshColumnColor READ getMeshColumnColor WRITE setMeshColumnColor)
|
||||||
|
|
||||||
|
// Reference column
|
||||||
|
QColor m_referenceColumnColor;
|
||||||
|
Q_PROPERTY(QColor ReferenceColumnColor MEMBER m_referenceColumnColor)
|
||||||
|
|
||||||
// Table node
|
// Table node
|
||||||
QColor m_tableColor;
|
QColor m_tableColor;
|
||||||
Q_PROPERTY(QColor TableColor READ getTableColor WRITE setTableColor)
|
Q_PROPERTY(QColor TableColor READ getTableColor WRITE setTableColor)
|
||||||
|
@ -328,6 +332,9 @@ public:
|
||||||
void setMeshColumnColor(const QColor &color) { m_meshColumnColor = color; }
|
void setMeshColumnColor(const QColor &color) { m_meshColumnColor = color; }
|
||||||
QColor getMeshColumnColor() const { return m_meshColumnColor; }
|
QColor getMeshColumnColor() const { return m_meshColumnColor; }
|
||||||
|
|
||||||
|
// Reference column
|
||||||
|
QColor getReferenceColumnColor() const { return m_referenceColumnColor; }
|
||||||
|
|
||||||
// Table node
|
// Table node
|
||||||
void setTableColor(const QColor &color) { m_tableColor = color; }
|
void setTableColor(const QColor &color) { m_tableColor = color; }
|
||||||
QColor getTableColor() const { return m_tableColor; }
|
QColor getTableColor() const { return m_tableColor; }
|
||||||
|
|
|
@ -47,6 +47,7 @@ class ColumnPainter final : public QObject, public QGraphicsItem {
|
||||||
double m_width, m_height;
|
double m_width, m_height;
|
||||||
QString m_name;
|
QString m_name;
|
||||||
int m_type;
|
int m_type;
|
||||||
|
bool m_isReference = false;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ColumnPainter(StageSchematicColumnNode *parent, double width, double height,
|
ColumnPainter(StageSchematicColumnNode *parent, double width, double height,
|
||||||
|
@ -56,6 +57,7 @@ public:
|
||||||
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
|
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
|
||||||
QWidget *widget = 0) override;
|
QWidget *widget = 0) override;
|
||||||
void setName(const QString &name) { m_name = name; }
|
void setName(const QString &name) { m_name = name; }
|
||||||
|
void setIsReference(bool ref = true) { m_isReference = ref; }
|
||||||
|
|
||||||
QLinearGradient getGradientByLevelType(int type);
|
QLinearGradient getGradientByLevelType(int type);
|
||||||
|
|
||||||
|
|
|
@ -714,7 +714,7 @@ Preferences::Preferences()
|
||||||
|
|
||||||
getValue(*m_settings, "cursorOutlineEnabled", m_cursorOutlineEnabled);
|
getValue(*m_settings, "cursorOutlineEnabled", m_cursorOutlineEnabled);
|
||||||
|
|
||||||
r = 255, g = 0, b = 0;
|
r = 255, g = 255, b = 0;
|
||||||
getValue(*m_settings, "currentColumnColor.r", r);
|
getValue(*m_settings, "currentColumnColor.r", r);
|
||||||
getValue(*m_settings, "currentColumnColor.g", g);
|
getValue(*m_settings, "currentColumnColor.g", g);
|
||||||
getValue(*m_settings, "currentColumnColor.b", b);
|
getValue(*m_settings, "currentColumnColor.b", b);
|
||||||
|
|
|
@ -176,8 +176,13 @@ void FxColumnPainter::paint(QPainter *painter,
|
||||||
SchematicViewer *viewer = sceneFx->getSchematicViewer();
|
SchematicViewer *viewer = sceneFx->getSchematicViewer();
|
||||||
viewer->getNodeColor(levelType, nodeColor);
|
viewer->getNodeColor(levelType, nodeColor);
|
||||||
|
|
||||||
|
if (m_isReference) {
|
||||||
|
painter->setBrush(viewer->getReferenceColumnColor());
|
||||||
|
painter->setPen(nodeColor);
|
||||||
|
} else {
|
||||||
painter->setBrush(nodeColor);
|
painter->setBrush(nodeColor);
|
||||||
painter->setPen(Qt::NoPen);
|
painter->setPen(Qt::NoPen);
|
||||||
|
}
|
||||||
painter->drawRect(0, 0, m_width, m_height);
|
painter->drawRect(0, 0, m_width, m_height);
|
||||||
|
|
||||||
if (m_parent->isOpened() && m_parent->isNormalIconView()) {
|
if (m_parent->isOpened() && m_parent->isNormalIconView()) {
|
||||||
|
@ -2947,6 +2952,9 @@ FxSchematicColumnNode::FxSchematicColumnNode(FxSchematicScene *scene,
|
||||||
m_renderToggle->setIsActive(column->isPreviewVisible());
|
m_renderToggle->setIsActive(column->isPreviewVisible());
|
||||||
m_cameraStandToggle->setState(
|
m_cameraStandToggle->setState(
|
||||||
column->isCamstandVisible() ? (column->getOpacity() < 255 ? 2 : 1) : 0);
|
column->isCamstandVisible() ? (column->getOpacity() < 255 ? 2 : 1) : 0);
|
||||||
|
if (!column->isControl() && !column->isRendered() &&
|
||||||
|
!column->getMeshColumn())
|
||||||
|
m_columnPainter->setIsReference();
|
||||||
}
|
}
|
||||||
|
|
||||||
// set geometry
|
// set geometry
|
||||||
|
|
|
@ -260,7 +260,12 @@ void SchematicToggle::paint(QPainter *painter,
|
||||||
sourceRect.height() * getDevPixRatio());
|
sourceRect.height() * getDevPixRatio());
|
||||||
painter->drawPixmap(rect, redPm, newRect);
|
painter->drawPixmap(rect, redPm, newRect);
|
||||||
} else if (!m_imageOff.isNull()) {
|
} else if (!m_imageOff.isNull()) {
|
||||||
painter->fillRect(boundingRect().toRect(), m_colorOff);
|
QPen pen(m_colorOn);
|
||||||
|
pen.setWidthF(0.5);
|
||||||
|
painter->setPen(pen);
|
||||||
|
painter->setBrush(m_colorOff);
|
||||||
|
double d = pen.widthF() / 2.0;
|
||||||
|
painter->drawRect(boundingRect().adjusted(d, d, -d, -d));
|
||||||
QRect sourceRect =
|
QRect sourceRect =
|
||||||
scene()->views()[0]->matrix().mapRect(QRect(0, 0, 18, 17));
|
scene()->views()[0]->matrix().mapRect(QRect(0, 0, 18, 17));
|
||||||
QPixmap redPm = m_imageOff.pixmap(sourceRect.size());
|
QPixmap redPm = m_imageOff.pixmap(sourceRect.size());
|
||||||
|
|
|
@ -139,8 +139,14 @@ void ColumnPainter::paint(QPainter *painter,
|
||||||
SchematicViewer *viewer = stageScene->getSchematicViewer();
|
SchematicViewer *viewer = stageScene->getSchematicViewer();
|
||||||
viewer->getNodeColor(levelType, nodeColor);
|
viewer->getNodeColor(levelType, nodeColor);
|
||||||
|
|
||||||
|
if (m_isReference && levelType != PLT_XSHLEVEL) {
|
||||||
|
painter->setBrush(viewer->getReferenceColumnColor());
|
||||||
|
painter->setPen(nodeColor);
|
||||||
|
} else {
|
||||||
painter->setBrush(nodeColor);
|
painter->setBrush(nodeColor);
|
||||||
painter->setPen(Qt::NoPen);
|
painter->setPen(Qt::NoPen);
|
||||||
|
}
|
||||||
|
|
||||||
if (levelType == PLT_XSHLEVEL)
|
if (levelType == PLT_XSHLEVEL)
|
||||||
painter->drawRoundRect(0, 0, m_width, m_height, 32, 99);
|
painter->drawRoundRect(0, 0, m_width, m_height, 32, 99);
|
||||||
else
|
else
|
||||||
|
@ -1744,6 +1750,10 @@ StageSchematicColumnNode::StageSchematicColumnNode(StageSchematicScene *scene,
|
||||||
m_columnPainter = new ColumnPainter(this, m_width, m_height, m_name);
|
m_columnPainter = new ColumnPainter(this, m_width, m_height, m_name);
|
||||||
m_columnPainter->setZValue(1);
|
m_columnPainter->setZValue(1);
|
||||||
|
|
||||||
|
if (column && !column->isControl() && !column->isRendered() &&
|
||||||
|
!column->getMeshColumn())
|
||||||
|
m_columnPainter->setIsReference();
|
||||||
|
|
||||||
int levelType;
|
int levelType;
|
||||||
QString levelName;
|
QString levelName;
|
||||||
getLevelTypeAndName(levelType, levelName);
|
getLevelTypeAndName(levelType, levelName);
|
||||||
|
|
Loading…
Reference in a new issue