diff --git a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.cpp b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.cpp index 2def0519e..810e59917 100644 --- a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.cpp +++ b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.cpp @@ -229,6 +229,15 @@ void VToolFlippingByAxis::SaveOptions(QDomElement &tag, QSharedPointer SaveSourceDestination(tag); } +//--------------------------------------------------------------------------------------------------------------------- +QString VToolFlippingByAxis::MakeToolTip() const +{ + const QString toolTip = QString(" %1: %2 ") + .arg(tr("Origin point")) + .arg(OriginPointName()); + return toolTip; +} + //--------------------------------------------------------------------------------------------------------------------- VToolFlippingByAxis::VToolFlippingByAxis(VAbstractPattern *doc, VContainer *data, quint32 id, quint32 originPointId, AxisType axisType, const QString &suffix, diff --git a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.h b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.h index 85cf1a92d..7ef398d5e 100644 --- a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.h +++ b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyaxis.h @@ -61,10 +61,11 @@ public: protected slots: virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) Q_DECL_OVERRIDE; protected: - virtual void SetVisualization() Q_DECL_OVERRIDE; - virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual void SetVisualization() Q_DECL_OVERRIDE; + virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual QString MakeToolTip() const Q_DECL_OVERRIDE; private: Q_DISABLE_COPY(VToolFlippingByAxis) diff --git a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.cpp b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.cpp index 6ff449632..5fc6a5986 100644 --- a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.cpp +++ b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.cpp @@ -215,6 +215,18 @@ void VToolFlippingByLine::SaveOptions(QDomElement &tag, QSharedPointer SaveSourceDestination(tag); } +//--------------------------------------------------------------------------------------------------------------------- +QString VToolFlippingByLine::MakeToolTip() const +{ + const QString toolTip = QString(" %1: %2 " + " %3: %4 ") + .arg(tr("First line point")) + .arg(FirstLinePointName()) + .arg(tr("Second line point")) + .arg(SecondLinePointName()); + return toolTip; +} + //--------------------------------------------------------------------------------------------------------------------- VToolFlippingByLine::VToolFlippingByLine(VAbstractPattern *doc, VContainer *data, quint32 id, quint32 firstLinePointId, quint32 secondLinePointId, const QString &suffix, diff --git a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.h b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.h index 3efd5a593..249395dfd 100644 --- a/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.h +++ b/src/libs/vtools/tools/drawTools/operation/flipping/vtoolflippingbyline.h @@ -59,10 +59,11 @@ public: protected slots: virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) Q_DECL_OVERRIDE; protected: - virtual void SetVisualization() Q_DECL_OVERRIDE; - virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual void SetVisualization() Q_DECL_OVERRIDE; + virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual QString MakeToolTip() const Q_DECL_OVERRIDE; private: Q_DISABLE_COPY(VToolFlippingByLine) diff --git a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp index e541fa396..e0021f661 100644 --- a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp +++ b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp @@ -138,12 +138,14 @@ void VAbstractOperation::FullUpdateFromFile() { VSimplePoint *item = qobject_cast(i.value()); SCASSERT(item != nullptr) + item->setToolTip(ComplexPointToolTip(i.key())); item->RefreshPointGeometry(*VAbstractTool::data.GeometricObject(i.key())); } else { VSimpleCurve *item = qobject_cast(i.value()); SCASSERT(item != nullptr) + item->setToolTip(ComplexCurveToolTip(i.key())); item->RefreshGeometry(VAbstractTool::data.GeometricObject(i.key())); } } @@ -473,6 +475,7 @@ void VAbstractOperation::InitCurve(quint32 id, VContainer *data, GOType curveTyp VSimpleCurve *curve = new VSimpleCurve(id, initCurve); curve->setParentItem(this); curve->SetType(curveType); + curve->setToolTip(ComplexCurveToolTip(id)); connect(curve, &VSimpleCurve::Selected, this, &VAbstractOperation::ObjectSelected); connect(curve, &VSimpleCurve::ShowContextMenu, this, [this](QGraphicsSceneContextMenuEvent * event, quint32 id) { @@ -570,6 +573,7 @@ QT_WARNING_DISABLE_GCC("-Wswitch-default") VSimplePoint *point = new VSimplePoint(object.id, QColor(Qt::black)); point->setParentItem(this); point->SetType(GOType::Point); + point->setToolTip(ComplexPointToolTip(object.id)); connect(point, &VSimplePoint::Choosed, this, [this](quint32 id) { emit ChoosedTool(id, SceneObject::Point); @@ -606,3 +610,35 @@ QT_WARNING_DISABLE_GCC("-Wswitch-default") QT_WARNING_POP } } + +//--------------------------------------------------------------------------------------------------------------------- +QString VAbstractOperation::ComplexPointToolTip(quint32 itemId) const +{ + const QSharedPointer point = VAbstractTool::data.GeometricObject(itemId); + + const QString toolTip = QString("" + "" + "%3" + "
%1: %2
") + .arg(tr("Label"), point->name(), MakeToolTip()); + return toolTip; +} + +//--------------------------------------------------------------------------------------------------------------------- +QString VAbstractOperation::ComplexCurveToolTip(quint32 itemId) const +{ + const QSharedPointer curve = VAbstractTool::data.GeometricObject(itemId); + + const QString toolTip = QString("" + "" + "" + "%6" + "
%1: %2
%3: %4 %5
") + .arg(tr("Label")) + .arg(curve->name()) + .arg(tr("Length")) + .arg(qApp->fromPixel(curve->GetLength())) + .arg(UnitsToStr(qApp->patternUnit(), true)) + .arg(MakeToolTip()); + return toolTip; +} diff --git a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h index ce0111ee7..bc70bf867 100644 --- a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h +++ b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h @@ -131,6 +131,9 @@ protected: static void InitOperationToolConnections(VMainGraphicsScene *scene, T *tool); void InitOperatedObjects(); + + QString ComplexPointToolTip(quint32 itemId) const; + QString ComplexCurveToolTip(quint32 itemId) const; protected slots: void DoChangePosition(quint32 id, qreal mx, qreal my); private: diff --git a/src/libs/vtools/tools/drawTools/operation/vtoolmove.cpp b/src/libs/vtools/tools/drawTools/operation/vtoolmove.cpp index 2e49e96ac..27127f122 100644 --- a/src/libs/vtools/tools/drawTools/operation/vtoolmove.cpp +++ b/src/libs/vtools/tools/drawTools/operation/vtoolmove.cpp @@ -347,6 +347,19 @@ void VToolMove::SaveOptions(QDomElement &tag, QSharedPointer &obj) SaveSourceDestination(tag); } +//--------------------------------------------------------------------------------------------------------------------- +QString VToolMove::MakeToolTip() const +{ + const QString toolTip = QString(" %1: %2° " + " %3: %4 %5 ") + .arg(tr("Rotation angle")) + .arg(GetFormulaAngle().getDoubleValue()) + .arg(tr("Length")) + .arg(GetFormulaLength().getDoubleValue()) + .arg(UnitsToStr(qApp->patternUnit(), true)); + return toolTip; +} + //--------------------------------------------------------------------------------------------------------------------- VToolMove::VToolMove(VAbstractPattern *doc, VContainer *data, quint32 id, const QString &formulaAngle, const QString &formulaLength, const QString &suffix, diff --git a/src/libs/vtools/tools/drawTools/operation/vtoolmove.h b/src/libs/vtools/tools/drawTools/operation/vtoolmove.h index 1426936e1..6c30bbff9 100644 --- a/src/libs/vtools/tools/drawTools/operation/vtoolmove.h +++ b/src/libs/vtools/tools/drawTools/operation/vtoolmove.h @@ -73,11 +73,11 @@ public: protected slots: virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) Q_DECL_OVERRIDE; protected: - virtual void SetVisualization() Q_DECL_OVERRIDE; - virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; - + virtual void SetVisualization() Q_DECL_OVERRIDE; + virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual QString MakeToolTip() const Q_DECL_OVERRIDE; private: Q_DISABLE_COPY(VToolMove) QString formulaAngle; diff --git a/src/libs/vtools/tools/drawTools/operation/vtoolrotation.cpp b/src/libs/vtools/tools/drawTools/operation/vtoolrotation.cpp index 85c451025..1342f4f40 100644 --- a/src/libs/vtools/tools/drawTools/operation/vtoolrotation.cpp +++ b/src/libs/vtools/tools/drawTools/operation/vtoolrotation.cpp @@ -347,6 +347,18 @@ void VToolRotation::SaveOptions(QDomElement &tag, QSharedPointer &obj) SaveSourceDestination(tag); } +//--------------------------------------------------------------------------------------------------------------------- +QString VToolRotation::MakeToolTip() const +{ + const QString toolTip = QString(" %1: %2 " + " %3: %4° ") + .arg(tr("Origin point")) + .arg(OriginPointName()) + .arg(tr("Rotation angle")) + .arg(GetFormulaAngle().getDoubleValue()); + return toolTip; +} + //--------------------------------------------------------------------------------------------------------------------- DestinationItem VToolRotation::CreatePoint(quint32 idTool, quint32 idItem, const QPointF &origin, qreal angle, const QString &suffix, VContainer *data) diff --git a/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h b/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h index 2292eab98..bbdc81adb 100644 --- a/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h +++ b/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h @@ -72,10 +72,11 @@ public: protected slots: virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) Q_DECL_OVERRIDE; protected: - virtual void SetVisualization() Q_DECL_OVERRIDE; - virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual void SetVisualization() Q_DECL_OVERRIDE; + virtual void SaveDialog(QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void ReadToolAttributes(const QDomElement &domElement) Q_DECL_OVERRIDE; + virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; + virtual QString MakeToolTip() const Q_DECL_OVERRIDE; private: Q_DISABLE_COPY(VToolRotation) diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h b/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h index dc9e4bc83..0782bdbf2 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h @@ -83,7 +83,6 @@ public slots: virtual void DetailsMode(bool mode) Q_DECL_OVERRIDE; virtual void AllowHover(bool enabled) Q_DECL_OVERRIDE; virtual void AllowSelecting(bool enabled) Q_DECL_OVERRIDE; - virtual QString MakeToolTip() const Q_DECL_OVERRIDE; signals: /** * @brief setEnabledPoint disable control points. @@ -113,6 +112,7 @@ protected: virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; virtual void RefreshCtrlPoints(); virtual void contextMenuEvent ( QGraphicsSceneContextMenuEvent * event ) Q_DECL_OVERRIDE; + virtual QString MakeToolTip() const Q_DECL_OVERRIDE; VSpline CorrectedSpline(const VSpline &spline, const SplinePointPosition &position, const QPointF &pos) const; diff --git a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.cpp b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.cpp index 78e25637a..a8ff6331c 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.cpp +++ b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.cpp @@ -65,6 +65,7 @@ VToolDoublePoint::VToolDoublePoint(VAbstractPattern *doc, VContainer *data, quin { firstPoint = new VSimplePoint(p1id, QColor(Qt::black)); firstPoint->setParentItem(this); + firstPoint->setToolTip(ComplexToolTip(p1id)); connect(firstPoint, &VSimplePoint::Choosed, this, &VToolDoublePoint::Point1Choosed); connect(firstPoint, &VSimplePoint::Selected, this, &VToolDoublePoint::Point1Selected); connect(firstPoint, &VSimplePoint::ShowContextMenu, this, &VToolDoublePoint::ShowContextMenu); @@ -74,6 +75,7 @@ VToolDoublePoint::VToolDoublePoint(VAbstractPattern *doc, VContainer *data, quin secondPoint = new VSimplePoint(p2id, QColor(Qt::black)); secondPoint->setParentItem(this); + secondPoint->setToolTip(ComplexToolTip(p2id)); connect(secondPoint, &VSimplePoint::Choosed, this, &VToolDoublePoint::Point2Choosed); connect(secondPoint, &VSimplePoint::Selected, this, &VToolDoublePoint::Point2Selected); connect(secondPoint, &VSimplePoint::ShowContextMenu, this, &VToolDoublePoint::ShowContextMenu); @@ -175,7 +177,9 @@ void VToolDoublePoint::Point2Selected(bool selected) void VToolDoublePoint::FullUpdateFromFile() { ReadAttributes(); + firstPoint->setToolTip(ComplexToolTip(p1id)); firstPoint->RefreshPointGeometry(*VAbstractTool::data.GeometricObject(p1id)); + secondPoint->setToolTip(ComplexToolTip(p2id)); secondPoint->RefreshPointGeometry(*VAbstractTool::data.GeometricObject(p2id)); SetVisualization(); } @@ -363,3 +367,16 @@ void VToolDoublePoint::AddToFile() SaveOptions(domElement, obj); AddToCalculation(domElement); } + +//--------------------------------------------------------------------------------------------------------------------- +QString VToolDoublePoint::ComplexToolTip(quint32 itemId) const +{ + const QSharedPointer point = VAbstractTool::data.GeometricObject(itemId); + + const QString toolTip = QString("" + "" + "%3" + "
%1: %2
") + .arg(tr("Label"), point->name(), MakeToolTip()); + return toolTip; +} diff --git a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h index b069959fd..c4e2453d0 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h @@ -94,6 +94,8 @@ protected: virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) Q_DECL_OVERRIDE; virtual void AddToFile() Q_DECL_OVERRIDE; + QString ComplexToolTip(quint32 itemId) const; + private: Q_DISABLE_COPY(VToolDoublePoint) };