From 161918203a3459be976faaea976708fc73499f91 Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Thu, 13 Jul 2023 17:49:20 +0300 Subject: [PATCH] Refactoring. Code style. --- src/libs/ifc/exception/vexception.h | 21 +- src/libs/ifc/exception/vexceptionbadid.h | 13 +- .../ifc/exception/vexceptionconversionerror.h | 2 +- .../ifc/exception/vexceptionemptyparameter.h | 2 +- .../ifc/exception/vexceptionobjecterror.h | 2 +- src/libs/ifc/exception/vexceptionundo.h | 2 +- src/libs/ifc/exception/vexceptionwrongid.h | 2 +- src/libs/ifc/xml/vabstractconverter.h | 12 +- src/libs/ifc/xml/vabstractmconverter.h | 3 +- src/libs/ifc/xml/vabstractpattern.h | 126 ++-- src/libs/ifc/xml/vdomdocument.cpp | 1 - src/libs/ifc/xml/vpatternconverter.h | 2 +- src/libs/ifc/xml/vvitconverter.h | 2 +- src/libs/ifc/xml/vvstconverter.h | 2 +- src/libs/qmuparser/qmuformulabase.h | 8 +- src/libs/qmuparser/qmuparser.h | 133 ++-- src/libs/qmuparser/qmuparserbase.h | 186 +++--- src/libs/qmuparser/qmuparsercallback.cpp | 626 ++++++++++++------ src/libs/qmuparser/qmuparsercallback.h | 57 +- src/libs/qmuparser/qmuparsercallback_p.h | 58 +- src/libs/qmuparser/qmuparsererror.h | 116 ++-- src/libs/qmuparser/qmuparsertokenreader.h | 89 +-- src/libs/qmuparser/qmutokenparser.h | 1 - src/libs/vdxf/vdxfengine.h | 1 - src/libs/vdxf/vdxfpaintdevice.h | 1 - src/libs/vformat/vmeasurements.h | 2 +- src/libs/vgeometry/vabstractarc.cpp | 64 +- src/libs/vgeometry/vabstractarc.h | 31 +- src/libs/vgeometry/vabstractarc_p.h | 118 ++-- src/libs/vgeometry/vabstractbezier.h | 4 +- src/libs/vgeometry/vabstractcubicbezier.h | 25 +- src/libs/vgeometry/vabstractcubicbezierpath.h | 23 +- src/libs/vgeometry/vabstractcurve.cpp | 4 +- src/libs/vgeometry/vabstractcurve.h | 34 +- src/libs/vgeometry/vabstractcurve_p.h | 31 +- src/libs/vgeometry/varc.cpp | 4 +- src/libs/vgeometry/varc.h | 13 +- src/libs/vgeometry/varc_p.h | 45 +- src/libs/vgeometry/vcubicbezier.cpp | 4 +- src/libs/vgeometry/vcubicbezier.h | 14 +- src/libs/vgeometry/vcubicbezier_p.h | 50 +- src/libs/vgeometry/vcubicbezierpath.cpp | 44 +- src/libs/vgeometry/vcubicbezierpath.h | 11 +- src/libs/vgeometry/vcubicbezierpath_p.h | 19 +- src/libs/vgeometry/vellipticalarc.cpp | 4 +- src/libs/vgeometry/vellipticalarc.h | 20 +- src/libs/vgeometry/vellipticalarc_p.h | 93 +-- src/libs/vgeometry/vgobject.h | 4 +- src/libs/vgeometry/vgobject_p.h | 25 +- src/libs/vgeometry/vplacelabelitem.cpp | 4 +- src/libs/vgeometry/vplacelabelitem.h | 4 +- src/libs/vgeometry/vplacelabelitem_p.h | 49 +- src/libs/vgeometry/vpointf.cpp | 4 +- src/libs/vgeometry/vpointf.h | 6 +- src/libs/vgeometry/vpointf_p.h | 66 +- src/libs/vgeometry/vspline.cpp | 4 +- src/libs/vgeometry/vspline.h | 20 +- src/libs/vgeometry/vspline_p.h | 153 ++--- src/libs/vgeometry/vsplinepath.cpp | 5 +- src/libs/vgeometry/vsplinepath.h | 46 +- src/libs/vgeometry/vsplinepath_p.h | 17 +- src/libs/vgeometry/vsplinepoint.cpp | 12 +- src/libs/vgeometry/vsplinepoint.h | 8 +- src/libs/vgeometry/vsplinepoint_p.h | 180 +++-- src/libs/vlayout/vabstractpiece.cpp | 4 +- src/libs/vlayout/vabstractpiece.h | 4 +- src/libs/vlayout/vabstractpiece_p.h | 49 +- src/libs/vlayout/vbestsquare.cpp | 4 +- src/libs/vlayout/vbestsquare.h | 4 +- src/libs/vlayout/vbestsquare_p.h | 54 +- src/libs/vlayout/vcontour.cpp | 5 +- src/libs/vlayout/vcontour.h | 4 +- src/libs/vlayout/vcontour_p.h | 52 +- src/libs/vlayout/vlayoutgenerator.h | 2 +- src/libs/vlayout/vlayoutpaper.cpp | 64 +- src/libs/vlayout/vlayoutpaper.h | 6 +- src/libs/vlayout/vlayoutpaper_p.h | 64 +- src/libs/vlayout/vlayoutpiece.cpp | 4 +- src/libs/vlayout/vlayoutpiece.h | 4 +- src/libs/vlayout/vlayoutpiece_p.h | 58 +- src/libs/vlayout/vlayoutpiecepath.cpp | 4 +- src/libs/vlayout/vlayoutpiecepath_p.h | 52 +- src/libs/vlayout/vposition.h | 2 +- src/libs/vmisc/backport/qoverload.h | 12 +- src/libs/vmisc/customevents.h | 58 +- src/libs/vmisc/def.h | 1 - src/libs/vmisc/defglobal.h | 2 +- src/libs/vmisc/diagnostic.h | 82 +-- src/libs/vmisc/projectversion.cpp | 19 +- src/libs/vmisc/qxtcsvmodel.h | 33 +- src/libs/vmisc/svgfont/vsvgfont_p.h | 2 +- src/libs/vmisc/svgfont/vsvgfontengine_p.h | 2 +- src/libs/vmisc/svgfont/vsvgglyph_p.h | 2 +- src/libs/vmisc/vabstractapplication.h | 1 - src/libs/vobj/vobjengine.h | 2 +- src/libs/vobj/vobjpaintdevice.h | 2 +- src/libs/vpatterndb/calculator.cpp | 18 +- src/libs/vpatterndb/calculator.h | 7 +- .../floatItemData/vabstractfloatitemdata.cpp | 4 +- .../floatItemData/vabstractfloatitemdata.h | 4 +- .../floatItemData/vabstractfloatitemdata_p.h | 18 +- .../floatItemData/vgrainlinedata.cpp | 4 +- .../vpatterndb/floatItemData/vgrainlinedata.h | 4 +- .../floatItemData/vgrainlinedata_p.h | 16 +- .../floatItemData/vpatternlabeldata.cpp | 4 +- .../floatItemData/vpatternlabeldata.h | 4 +- .../floatItemData/vpiecelabeldata.cpp | 4 +- .../floatItemData/vpiecelabeldata.h | 4 +- .../floatItemData/vpiecelabeldata_p.h | 19 +- src/libs/vpatterndb/variables/varcradius.cpp | 18 +- src/libs/vpatterndb/variables/varcradius.h | 14 +- src/libs/vpatterndb/variables/varcradius_p.h | 29 +- src/libs/vpatterndb/variables/vcurveangle.h | 8 +- src/libs/vpatterndb/variables/vcurveclength.h | 11 +- src/libs/vpatterndb/variables/vcurvelength.h | 4 +- .../vpatterndb/variables/vcurvevariable.cpp | 30 +- .../vpatterndb/variables/vcurvevariable.h | 15 +- .../vpatterndb/variables/vcurvevariable_p.h | 34 +- src/libs/vpatterndb/variables/vincrement.cpp | 4 +- src/libs/vpatterndb/variables/vincrement.h | 11 +- src/libs/vpatterndb/variables/vincrement_p.h | 68 +- .../variables/vinternalvariable.cpp | 24 +- .../vpatterndb/variables/vinternalvariable.h | 10 +- .../variables/vinternalvariable_p.h | 28 +- src/libs/vpatterndb/variables/vlineangle.cpp | 4 +- src/libs/vpatterndb/variables/vlineangle.h | 14 +- src/libs/vpatterndb/variables/vlineangle_p.h | 32 +- src/libs/vpatterndb/variables/vlinelength.cpp | 4 +- src/libs/vpatterndb/variables/vlinelength.h | 15 +- src/libs/vpatterndb/variables/vlinelength_p.h | 36 +- .../vpatterndb/variables/vmeasurement.cpp | 4 +- src/libs/vpatterndb/variables/vmeasurement.h | 34 +- .../vpatterndb/variables/vmeasurement_p.h | 128 ++-- src/libs/vpatterndb/variables/vpiecearea.cpp | 4 +- src/libs/vpatterndb/variables/vpiecearea.h | 4 +- src/libs/vpatterndb/variables/vpiecearea_p.h | 12 +- src/libs/vpatterndb/variables/vvariable.cpp | 33 +- src/libs/vpatterndb/variables/vvariable.h | 13 +- src/libs/vpatterndb/variables/vvariable_p.h | 30 +- src/libs/vpatterndb/vcontainer.cpp | 13 +- src/libs/vpatterndb/vcontainer.h | 58 +- src/libs/vpatterndb/vformula_p.h | 66 +- src/libs/vpatterndb/vnodedetail.cpp | 4 +- src/libs/vpatterndb/vnodedetail.h | 4 +- src/libs/vpatterndb/vnodedetail_p.h | 82 +-- src/libs/vpatterndb/vpiece.cpp | 4 +- src/libs/vpatterndb/vpiece.h | 4 +- src/libs/vpatterndb/vpiece_p.h | 27 +- src/libs/vpatterndb/vpiecenode.cpp | 4 +- src/libs/vpatterndb/vpiecenode.h | 4 +- src/libs/vpatterndb/vpiecenode_p.h | 70 +- src/libs/vpatterndb/vpiecepath.cpp | 4 +- src/libs/vpatterndb/vpiecepath.h | 4 +- src/libs/vpatterndb/vpiecepath_p.h | 50 +- src/libs/vpatterndb/vtranslatevars.h | 13 +- .../vpropertyexplorer/checkablemessagebox.h | 16 +- .../plugins/Vector3d/vvector3dproperty.h | 2 +- .../vpropertyexplorer/plugins/vboolproperty.h | 20 +- .../plugins/vcolorproperty.h | 6 +- .../plugins/vcolorpropertyeditor.h | 14 +- .../plugins/vemptyproperty.h | 10 +- .../vpropertyexplorer/plugins/venumproperty.h | 13 +- .../vpropertyexplorer/plugins/vfileproperty.h | 2 +- .../plugins/vfilepropertyeditor.h | 2 +- .../plugins/vlabelproperty.h | 2 +- .../plugins/vlinecolorproperty.h | 2 +- .../plugins/vlinetypeproperty.h | 2 +- .../plugins/vobjectproperty.h | 2 +- .../plugins/vpointfproperty.h | 2 +- .../plugins/vshortcutproperty.h | 2 +- .../plugins/vshortcutpropertyeditor.h | 2 +- .../plugins/vstringproperty.h | 2 +- .../vpropertyexplorer/plugins/vtextproperty.h | 2 +- .../plugins/vwidgetproperty.h | 2 +- src/libs/vpropertyexplorer/vproperty.h | 2 +- .../vpropertyexplorer/vpropertydelegate.h | 2 +- .../vpropertyfactorymanager.h | 2 +- .../vpropertyexplorer/vpropertyformview.h | 2 +- src/libs/vpropertyexplorer/vpropertymodel.h | 2 +- src/libs/vpropertyexplorer/vpropertyset.h | 2 +- .../vpropertyexplorer/vpropertytreeview.h | 2 +- .../vstandardpropertyfactory.h | 2 +- .../dialogs/support/dialogeditwrongformula.h | 24 +- src/libs/vtools/dialogs/support/dialogundo.h | 20 +- .../vtools/dialogs/tools/dialogalongline.h | 9 +- src/libs/vtools/dialogs/tools/dialogarc.h | 6 +- .../dialogs/tools/dialogarcwithlength.h | 4 +- .../vtools/dialogs/tools/dialogbisector.h | 8 +- .../vtools/dialogs/tools/dialogcubicbezier.h | 22 +- .../dialogs/tools/dialogcubicbezierpath.h | 30 +- .../dialogs/tools/dialogcurveintersectaxis.h | 49 +- src/libs/vtools/dialogs/tools/dialogcutarc.h | 11 +- .../vtools/dialogs/tools/dialogcutspline.h | 8 +- .../dialogs/tools/dialogcutsplinepath.h | 8 +- .../dialogs/tools/dialogellipticalarc.h | 4 +- src/libs/vtools/dialogs/tools/dialogendline.h | 48 +- .../dialogs/tools/dialogflippingbyaxis.h | 35 +- .../dialogs/tools/dialogflippingbyline.h | 35 +- src/libs/vtools/dialogs/tools/dialoggroup.h | 17 +- src/libs/vtools/dialogs/tools/dialogheight.h | 7 +- src/libs/vtools/dialogs/tools/dialogline.h | 30 +- .../dialogs/tools/dialoglineintersect.h | 32 +- .../dialogs/tools/dialoglineintersectaxis.h | 45 +- src/libs/vtools/dialogs/tools/dialogmove.h | 53 +- src/libs/vtools/dialogs/tools/dialognormal.h | 7 +- .../tools/dialogpointfromarcandtangent.h | 25 +- .../tools/dialogpointfromcircleandtangent.h | 18 +- .../dialogs/tools/dialogpointofcontact.h | 7 +- .../dialogs/tools/dialogpointofintersection.h | 28 +- .../tools/dialogpointofintersectionarcs.h | 27 +- .../tools/dialogpointofintersectioncircles.h | 3 +- .../tools/dialogpointofintersectioncurves.h | 34 +- .../vtools/dialogs/tools/dialogrotation.h | 42 +- .../dialogs/tools/dialogshoulderpoint.h | 7 +- .../vtools/dialogs/tools/dialogsinglepoint.h | 17 +- .../vtools/dialogs/tools/dialogspline.cpp | 142 ++-- src/libs/vtools/dialogs/tools/dialogspline.h | 49 +- .../vtools/dialogs/tools/dialogsplinepath.h | 38 +- src/libs/vtools/dialogs/tools/dialogtool.h | 151 +++-- .../vtools/dialogs/tools/dialogtriangle.h | 32 +- .../vtools/dialogs/tools/dialogtruedarts.h | 39 +- .../vtools/dialogs/tools/dialoguniondetails.h | 27 +- .../drawTools/operation/vabstractoperation.h | 73 +- .../tools/drawTools/operation/vtoolmove.h | 2 +- .../tools/drawTools/operation/vtoolrotation.h | 2 +- .../drawTools/toolcurve/vabstractspline.cpp | 125 ++-- .../drawTools/toolcurve/vabstractspline.h | 187 +++--- .../tools/drawTools/toolcurve/vtoolarc.cpp | 58 +- .../tools/drawTools/toolcurve/vtoolarc.h | 60 +- .../toolcurve/vtoolarcwithlength.cpp | 48 +- .../drawTools/toolcurve/vtoolarcwithlength.h | 59 +- .../drawTools/toolcurve/vtoolcubicbezier.cpp | 42 +- .../drawTools/toolcurve/vtoolcubicbezier.h | 44 +- .../toolcurve/vtoolcubicbezierpath.cpp | 29 +- .../toolcurve/vtoolcubicbezierpath.h | 50 +- .../toolcurve/vtoolellipticalarc.cpp | 69 +- .../drawTools/toolcurve/vtoolellipticalarc.h | 68 +- .../tools/drawTools/toolcurve/vtoolspline.cpp | 285 ++++---- .../tools/drawTools/toolcurve/vtoolspline.h | 103 +-- .../drawTools/toolcurve/vtoolsplinepath.cpp | 186 +++--- .../drawTools/toolcurve/vtoolsplinepath.h | 112 ++-- .../tooldoublepoint/vtooldoublepoint.h | 2 +- .../tooldoublepoint/vtooltruedarts.cpp | 53 +- .../tooldoublepoint/vtooltruedarts.h | 83 +-- .../toolsinglepoint/toolcut/vtoolcut.cpp | 2 +- .../toolsinglepoint/toolcut/vtoolcut.h | 56 +- .../toolsinglepoint/toolcut/vtoolcutarc.h | 2 +- .../toolsinglepoint/toolcut/vtoolcutspline.h | 2 +- .../toolcut/vtoolcutsplinepath.cpp | 8 +- .../toolcut/vtoolcutsplinepath.h | 2 +- .../toollinepoint/vtoolalongline.h | 2 +- .../toollinepoint/vtoolbisector.h | 2 +- .../toollinepoint/vtoolcurveintersectaxis.h | 2 +- .../toollinepoint/vtoolendline.h | 2 +- .../toollinepoint/vtoolheight.h | 2 +- .../toollinepoint/vtoollineintersectaxis.h | 2 +- .../toollinepoint/vtoollinepoint.h | 2 +- .../toollinepoint/vtoolnormal.h | 2 +- .../toollinepoint/vtoolshoulderpoint.h | 2 +- .../toolsinglepoint/vtoolbasepoint.h | 2 +- .../toolsinglepoint/vtoollineintersect.h | 2 +- .../vtoolpointfromarcandtangent.h | 2 +- .../vtoolpointfromcircleandtangent.h | 2 +- .../toolsinglepoint/vtoolpointofcontact.h | 2 +- .../vtoolpointofintersection.h | 2 +- .../vtoolpointofintersectionarcs.h | 2 +- .../vtoolpointofintersectioncircles.h | 2 +- .../vtoolpointofintersectioncurves.h | 2 +- .../toolsinglepoint/vtoolsinglepoint.h | 2 +- .../toolsinglepoint/vtooltriangle.cpp | 64 +- .../toolpoint/toolsinglepoint/vtooltriangle.h | 64 +- .../drawTools/toolpoint/vabstractpoint.h | 29 +- src/libs/vtools/tools/drawTools/vdrawtool.cpp | 2 +- src/libs/vtools/tools/drawTools/vdrawtool.h | 145 ++-- src/libs/vtools/tools/drawTools/vtoolline.h | 2 +- .../vtools/tools/nodeDetails/vabstractnode.h | 51 +- src/libs/vtools/tools/nodeDetails/vnodearc.h | 2 +- .../tools/nodeDetails/vnodeellipticalarc.h | 2 +- .../vtools/tools/nodeDetails/vnodepoint.h | 2 +- .../vtools/tools/nodeDetails/vnodespline.h | 2 +- .../tools/nodeDetails/vnodesplinepath.h | 2 +- src/libs/vtools/tools/vabstracttool.h | 86 ++- src/libs/vtools/tools/vdatatool.h | 20 +- src/libs/vtools/tools/vtoolseamallowance.h | 2 +- src/libs/vtools/tools/vtooluniondetails.cpp | 485 +++++++------- src/libs/vtools/tools/vtooluniondetails.h | 61 +- .../vtools/undocommands/addpatternpiece.cpp | 9 +- .../vtools/undocommands/addpatternpiece.h | 11 +- src/libs/vtools/undocommands/addpiece.cpp | 17 +- src/libs/vtools/undocommands/addpiece.h | 21 +- src/libs/vtools/undocommands/addtocalc.cpp | 17 +- src/libs/vtools/undocommands/addtocalc.h | 16 +- .../undocommands/deletepatternpiece.cpp | 18 +- .../vtools/undocommands/deletepatternpiece.h | 16 +- src/libs/vtools/undocommands/deltool.cpp | 22 +- src/libs/vtools/undocommands/deltool.h | 13 +- .../undocommands/label/moveabstractlabel.h | 11 +- .../undocommands/label/movedoublelabel.h | 25 +- .../vtools/undocommands/label/movelabel.h | 13 +- .../undocommands/label/operationmovelabel.h | 15 +- src/libs/vtools/undocommands/movepiece.h | 22 +- src/libs/vtools/undocommands/movespline.cpp | 1 - src/libs/vtools/undocommands/movespline.h | 21 +- src/libs/vtools/undocommands/movesplinepath.h | 17 +- src/libs/vtools/undocommands/movespoint.h | 27 +- src/libs/vtools/undocommands/renamepp.h | 22 +- .../vtools/undocommands/savetooloptions.h | 18 +- .../vtools/undocommands/togglepiecestate.h | 35 +- src/libs/vtools/undocommands/undogroup.h | 44 +- src/libs/vtools/undocommands/vundocommand.cpp | 21 +- src/libs/vtools/undocommands/vundocommand.h | 30 +- .../line/operation/vistoolmove.h | 2 +- .../line/operation/vistoolrotation.h | 2 +- src/libs/vtools/visualization/line/visline.h | 2 +- .../visualization/line/vistoolalongline.h | 2 +- .../visualization/line/vistoolbisector.h | 2 +- .../line/vistoolcurveintersectaxis.h | 2 +- .../visualization/line/vistoolendline.h | 2 +- .../vtools/visualization/line/vistoolheight.h | 2 +- .../vtools/visualization/line/vistoolline.h | 2 +- .../visualization/line/vistoollineintersect.h | 2 +- .../line/vistoollineintersectaxis.h | 2 +- .../vtools/visualization/line/vistoolnormal.h | 2 +- .../line/vistoolpointfromarcandtangent.h | 2 +- .../line/vistoolpointfromcircleandtangent.h | 2 +- .../line/vistoolpointofcontact.h | 2 +- .../line/vistoolpointofintersection.h | 2 +- .../line/vistoolpointofintersectionarcs.h | 2 +- .../line/vistoolpointofintersectioncircles.h | 2 +- .../visualization/line/vistoolshoulderpoint.h | 2 +- .../visualization/line/vistooltriangle.h | 2 +- .../visualization/line/vistooltruedarts.h | 2 +- src/libs/vtools/visualization/path/vispath.h | 2 +- .../vtools/visualization/path/vistoolarc.h | 2 +- .../visualization/path/vistoolarcwithlength.h | 2 +- .../visualization/path/vistoolcubicbezier.h | 2 +- .../path/vistoolcubicbezierpath.h | 2 +- .../vtools/visualization/path/vistoolcutarc.h | 2 +- .../visualization/path/vistoolcutspline.h | 2 +- .../path/vistoolcutsplinepath.cpp | 9 +- .../visualization/path/vistoolcutsplinepath.h | 2 +- .../visualization/path/vistoolellipticalarc.h | 2 +- .../path/vistoolpointofintersectioncurves.h | 2 +- .../vtools/visualization/path/vistoolspline.h | 2 +- .../visualization/path/vistoolsplinepath.h | 2 +- src/libs/vtools/visualization/visualization.h | 2 +- src/libs/vwidgets/vabstractmainwindow.h | 10 +- src/libs/vwidgets/vcontrolpointspline.h | 49 +- src/libs/vwidgets/vgraphicssimpletextitem.h | 2 +- src/libs/vwidgets/vmaingraphicsscene.h | 2 +- src/libs/vwidgets/vmaingraphicsview.h | 2 +- src/libs/vwidgets/vnobrushscalepathitem.h | 2 +- src/libs/vwidgets/vpiecegrainline.cpp | 4 +- src/libs/vwidgets/vpiecegrainline.h | 4 +- src/libs/vwidgets/vpiecegrainline_p.h | 37 +- src/libs/vwidgets/vsimplecurve.h | 2 +- src/libs/vwidgets/vsimplepoint.h | 2 +- src/test/ValentinaTest/tst_misc.cpp | 2 +- 358 files changed, 4714 insertions(+), 4739 deletions(-) diff --git a/src/libs/ifc/exception/vexception.h b/src/libs/ifc/exception/vexception.h index 9b43ee8ab..dcedf8655 100644 --- a/src/libs/ifc/exception/vexception.h +++ b/src/libs/ifc/exception/vexception.h @@ -29,7 +29,6 @@ #ifndef VEXCEPTION_H #define VEXCEPTION_H -#include #include #include #include @@ -46,11 +45,12 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") class VException : public QException { Q_DECLARE_TR_FUNCTIONS(VException) // NOLINT + public: - explicit VException(const QString &error) V_NOEXCEPT_EXPR (true); - VException(const VException &e) V_NOEXCEPT_EXPR (true); + explicit VException(const QString &error) V_NOEXCEPT_EXPR(true); + VException(const VException &e) V_NOEXCEPT_EXPR(true); auto operator=(const VException &e) V_NOEXCEPT_EXPR(true) -> VException &; - virtual ~VException() V_NOEXCEPT_EXPR (true) = default; + virtual ~VException() V_NOEXCEPT_EXPR(true) = default; Q_NORETURN virtual void raise() const override; @@ -60,15 +60,15 @@ public: virtual auto ErrorMessage() const -> QString; virtual auto DetailedInformation() const -> QString; auto WhatUtf8() const V_NOEXCEPT_EXPR(true) -> QString; - void AddMoreInformation(const QString &info); + void AddMoreInformation(const QString &info); auto MoreInformation() const -> QString; protected: /** @brief error string with error */ - QString error; + QString error; /** @brief moreInfo more information about error */ - QString moreInfo {}; + QString moreInfo{}; auto MoreInfo(const QString &detInfo) const -> QString; }; @@ -99,11 +99,12 @@ inline auto VException::MoreInformation() const -> QString class VExceptionToolWasDeleted : public VException { Q_DECLARE_TR_FUNCTIONS(VExceptionToolDeleted) // NOLINT + public: - explicit VExceptionToolWasDeleted(const QString &error) V_NOEXCEPT_EXPR (true); - VExceptionToolWasDeleted(const VExceptionToolWasDeleted &e) V_NOEXCEPT_EXPR (true); + explicit VExceptionToolWasDeleted(const QString &error) V_NOEXCEPT_EXPR(true); + VExceptionToolWasDeleted(const VExceptionToolWasDeleted &e) V_NOEXCEPT_EXPR(true); auto operator=(const VExceptionToolWasDeleted &e) V_NOEXCEPT_EXPR(true) -> VExceptionToolWasDeleted &; - virtual ~VExceptionToolWasDeleted() V_NOEXCEPT_EXPR (true) = default; + virtual ~VExceptionToolWasDeleted() V_NOEXCEPT_EXPR(true) = default; Q_NORETURN virtual void raise() const override; // cppcheck-suppress unusedFunction diff --git a/src/libs/ifc/exception/vexceptionbadid.h b/src/libs/ifc/exception/vexceptionbadid.h index 8dc0eed84..9b51d487f 100644 --- a/src/libs/ifc/exception/vexceptionbadid.h +++ b/src/libs/ifc/exception/vexceptionbadid.h @@ -29,7 +29,6 @@ #ifndef VEXCEPTIONBADID_H #define VEXCEPTIONBADID_H -#include #include #include @@ -42,11 +41,11 @@ class VExceptionBadId final : public VException { public: - VExceptionBadId(const QString &error, const quint32 &id) V_NOEXCEPT_EXPR (true); - VExceptionBadId(const QString &error, const QString &key) V_NOEXCEPT_EXPR (true); - VExceptionBadId(const VExceptionBadId &e) V_NOEXCEPT_EXPR (true); + VExceptionBadId(const QString &error, const quint32 &id) V_NOEXCEPT_EXPR(true); + VExceptionBadId(const QString &error, const QString &key) V_NOEXCEPT_EXPR(true); + VExceptionBadId(const VExceptionBadId &e) V_NOEXCEPT_EXPR(true); auto operator=(const VExceptionBadId &e) V_NOEXCEPT_EXPR(true) -> VExceptionBadId &; - virtual ~VExceptionBadId() V_NOEXCEPT_EXPR (true) = default; + virtual ~VExceptionBadId() V_NOEXCEPT_EXPR(true) = default; Q_NORETURN virtual void raise() const override { throw *this; } @@ -58,10 +57,10 @@ public: protected: /** @brief id id */ - quint32 id; + quint32 id; /** @brief key key */ - QString key; + QString key; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/ifc/exception/vexceptionconversionerror.h b/src/libs/ifc/exception/vexceptionconversionerror.h index d9f09c384..cb99c6d13 100644 --- a/src/libs/ifc/exception/vexceptionconversionerror.h +++ b/src/libs/ifc/exception/vexceptionconversionerror.h @@ -29,7 +29,7 @@ #ifndef VEXCEPTIONCONVERSIONERROR_H #define VEXCEPTIONCONVERSIONERROR_H -#include + #include #include "../ifcdef.h" diff --git a/src/libs/ifc/exception/vexceptionemptyparameter.h b/src/libs/ifc/exception/vexceptionemptyparameter.h index 4649eb59d..88a8be52c 100644 --- a/src/libs/ifc/exception/vexceptionemptyparameter.h +++ b/src/libs/ifc/exception/vexceptionemptyparameter.h @@ -29,7 +29,7 @@ #ifndef VEXCEPTIONEMPTYPARAMETER_H #define VEXCEPTIONEMPTYPARAMETER_H -#include + #include #include diff --git a/src/libs/ifc/exception/vexceptionobjecterror.h b/src/libs/ifc/exception/vexceptionobjecterror.h index c2c2a37e8..18314297b 100644 --- a/src/libs/ifc/exception/vexceptionobjecterror.h +++ b/src/libs/ifc/exception/vexceptionobjecterror.h @@ -29,7 +29,7 @@ #ifndef VEXCEPTIONOBJECTERROR_H #define VEXCEPTIONOBJECTERROR_H -#include + #include #include diff --git a/src/libs/ifc/exception/vexceptionundo.h b/src/libs/ifc/exception/vexceptionundo.h index 3984b27ca..955e6940c 100644 --- a/src/libs/ifc/exception/vexceptionundo.h +++ b/src/libs/ifc/exception/vexceptionundo.h @@ -29,7 +29,7 @@ #ifndef VEXCEPTIONUNDO_H #define VEXCEPTIONUNDO_H -#include + #include #include "../ifcdef.h" diff --git a/src/libs/ifc/exception/vexceptionwrongid.h b/src/libs/ifc/exception/vexceptionwrongid.h index d2e16f904..2b3ec870e 100644 --- a/src/libs/ifc/exception/vexceptionwrongid.h +++ b/src/libs/ifc/exception/vexceptionwrongid.h @@ -29,7 +29,7 @@ #ifndef VEXCEPTIONWRONGID_H #define VEXCEPTIONWRONGID_H -#include + #include #include diff --git a/src/libs/ifc/xml/vabstractconverter.h b/src/libs/ifc/xml/vabstractconverter.h index 8ccc88ccc..a457f260a 100644 --- a/src/libs/ifc/xml/vabstractconverter.h +++ b/src/libs/ifc/xml/vabstractconverter.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTCONVERTER_H #define VABSTRACTCONVERTER_H -#include #include #include #include @@ -41,12 +40,13 @@ QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") -class VAbstractConverter :public VDomDocument +class VAbstractConverter : public VDomDocument { Q_OBJECT // NOLINT + public: explicit VAbstractConverter(const QString &fileName); - virtual ~VAbstractConverter() = default; + ~VAbstractConverter() override = default; auto Convert() -> QString; @@ -69,12 +69,12 @@ protected: virtual auto MaxVerStr() const -> QString = 0; virtual auto XSDSchema(unsigned ver) const -> QString; - virtual void ApplyPatches() =0; - virtual void DowngradeToCurrentMaxVersion() =0; + virtual void ApplyPatches() = 0; + virtual void DowngradeToCurrentMaxVersion() = 0; virtual auto IsReadOnly() const -> bool = 0; - virtual auto Schemas() const -> QHash =0; + virtual auto Schemas() const -> QHash = 0; void Replace(QString &formula, const QString &newName, vsizetype position, const QString &token, vsizetype &bias) const; diff --git a/src/libs/ifc/xml/vabstractmconverter.h b/src/libs/ifc/xml/vabstractmconverter.h index cd004a561..4baad77a5 100644 --- a/src/libs/ifc/xml/vabstractmconverter.h +++ b/src/libs/ifc/xml/vabstractmconverter.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTMCONVERTER_H #define VABSTRACTMCONVERTER_H -#include #include #include #include @@ -41,7 +40,7 @@ class VAbstractMConverter : public VAbstractConverter { public: explicit VAbstractMConverter(const QString &fileName); - virtual ~VAbstractMConverter() = default; + ~VAbstractMConverter() override = default; auto Units() const -> Unit; diff --git a/src/libs/ifc/xml/vabstractpattern.h b/src/libs/ifc/xml/vabstractpattern.h index eea5a29ad..388465717 100644 --- a/src/libs/ifc/xml/vabstractpattern.h +++ b/src/libs/ifc/xml/vabstractpattern.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTPATTERN_H #define VABSTRACTPATTERN_H -#include #include #include #include @@ -37,9 +36,9 @@ #include #include #include +#include #include #include -#include #include "../vmisc/def.h" #include "vdomdocument.h" @@ -51,14 +50,40 @@ class VPieceNode; class VPatternImage; class VBackgroundPatternImage; -enum class Document : qint8 { FullLiteParse, LiteParse, LitePPParse, FullParse }; -enum class LabelType : qint8 {NewPatternPiece, NewLabel}; +enum class Document : qint8 +{ + FullLiteParse, + LiteParse, + LitePPParse, + FullParse +}; +enum class LabelType : qint8 +{ + NewPatternPiece, + NewLabel +}; // Don't touch values!!!. Same values stored in xml. -enum class CrossCirclesPoint : qint8 {FirstPoint = 1, SecondPoint = 2}; -enum class VCrossCurvesPoint : qint8 {HighestPoint = 1, LowestPoint = 2}; -enum class HCrossCurvesPoint : qint8 {LeftmostPoint = 1, RightmostPoint = 2}; -enum class AxisType : qint8 {VerticalAxis = 1, HorizontalAxis = 2}; +enum class CrossCirclesPoint : qint8 +{ + FirstPoint = 1, + SecondPoint = 2 +}; +enum class VCrossCurvesPoint : qint8 +{ + HighestPoint = 1, + LowestPoint = 2 +}; +enum class HCrossCurvesPoint : qint8 +{ + LeftmostPoint = 1, + RightmostPoint = 2 +}; +enum class AxisType : qint8 +{ + VerticalAxis = 1, + HorizontalAxis = 2 +}; class VContainer; class VDataTool; @@ -68,9 +93,9 @@ QT_WARNING_DISABLE_GCC("-Weffc++") struct VFormulaField { - QString expression; + QString expression; QDomElement element; - QString attribute; + QString attribute; }; struct VFinalMeasurement @@ -97,6 +122,7 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") class VAbstractPattern : public VDomDocument { Q_OBJECT // NOLINT + public: explicit VAbstractPattern(QObject *parent = nullptr); virtual ~VAbstractPattern(); @@ -374,48 +400,48 @@ signals: * @brief ChangedActivPP change active pattern peace. * @param newName new pattern peace name. */ - void ChangedActivPP(const QString &newName); + void ChangedActivPP(const QString &newName); /** * @brief ChangedCursor change cursor position. * @param id tool id. */ - void ChangedCursor(quint32 id); + void ChangedCursor(quint32 id); /** * @brief ChangedNameDraw save new name pattern peace. * @param oldName old name. * @param newName new name. */ - void ChangedNameDraw(const QString &oldName, const QString &newName); + void ChangedNameDraw(const QString &oldName, const QString &newName); /** * @brief FullUpdateFromFile update tool data form file. */ - void FullUpdateFromFile(); + void FullUpdateFromFile(); /** * @brief patternChanged emit if we have unsaved change. */ - void patternChanged(bool saved); - void UpdatePatternLabel(); + void patternChanged(bool saved); + void UpdatePatternLabel(); /** * @brief ShowTool highlight tool. * @param id tool id. * @param enable enable or disable highlight. */ - void ShowTool(quint32 id, bool enable); - void ClearMainWindow(); - void UndoCommand(); - void SetEnabledGUI(bool enabled); - void CheckLayout(); - void UpdateInLayoutList(); - void ShowDetail(quint32 id); - void SetCurrentPP(const QString &patterPiece); - void MadeProgress(); + void ShowTool(quint32 id, bool enable); + void ClearMainWindow(); + void UndoCommand(); + void SetEnabledGUI(bool enabled); + void CheckLayout(); + void UpdateInLayoutList(); + void ShowDetail(quint32 id); + void SetCurrentPP(const QString &patterPiece); + void MadeProgress(); /** * @brief UpdateGroups emit if the groups have been updated */ - void UpdateGroups(); - void UpdateToolTip(); + void UpdateGroups(); + void UpdateToolTip(); void BackgroundImageTransformationChanged(QUuid id); void BackgroundImagesHoldChanged(); @@ -428,31 +454,31 @@ signals: void BackgroundImageOpacityChanged(const QUuid &id); public slots: - virtual void LiteParseTree(const Document &parse)=0; - void haveLiteChange(); - void NeedFullParsing(); - void ClearScene(); - void CheckInLayoutList(); - void SelectedDetail(quint32 id); - void UpdateVisiblityGroups(); + virtual void LiteParseTree(const Document &parse) = 0; + void haveLiteChange(); + void NeedFullParsing(); + void ClearScene(); + void CheckInLayoutList(); + void SelectedDetail(quint32 id); + void UpdateVisiblityGroups(); protected: /** @brief nameActivDraw name current pattern peace. */ - QString nameActivPP; + QString nameActivPP; /** @brief cursor cursor keep id tool after which we will add new tool in file. */ - quint32 cursor; + quint32 cursor; - QVector toolsOnRemove; + QVector toolsOnRemove; /** @brief history history records. */ QVector history; /** @brief patternPieces list of patern pieces names for combobox*/ - QStringList patternPieces; + QStringList patternPieces; /** @brief modified keep state of the document for cases that do not cover QUndoStack*/ - mutable bool modified; + mutable bool modified; Unit m_units{Unit::LAST_UNIT_DO_NOT_USE}; QString m_patternNumber{}; @@ -463,23 +489,23 @@ protected: QString m_companyName{}; /** @brief tools list with pointer on tools. */ - static QHash tools; + static QHash tools; /** @brief patternLabelLines list to speed up reading a template by many pieces. */ static QVector patternLabelLines; /** @brief patternMaterials list to speed up reading materials by many pieces. */ static QMap patternMaterials; static bool patternLabelWasChanged; - static void ToolExists(const quint32 &id); + static void ToolExists(const quint32 &id); static auto ParsePathNodes(const QDomElement &domElement) -> VPiecePath; static auto ParseSANode(const QDomElement &domElement) -> VPieceNode; - void SetActivPP(const QString& name); + void SetActivPP(const QString &name); auto CheckTagExists(const QString &tag) -> QDomElement; - void InsertTag(const QStringList &tags, const QDomElement &element); + void InsertTag(const QStringList &tags, const QDomElement &element); - void SetChildTag(const QString& qsParent, const QString& qsChild, const QString& qsValue); + void SetChildTag(const QString &qsParent, const QString &qsChild, const QString &qsValue); auto GetIndexActivPP() const -> int; auto GetActivDrawElement(QDomElement &element) const -> bool; @@ -489,10 +515,10 @@ protected: auto GroupHasItem(const QDomElement &groupDomElement, quint32 toolId, quint32 objectId) -> bool; auto ReadUnits() const -> Unit; - auto ReadPatternNumber() const ->QString; - auto ReadLabelDateFormat() const ->QString; - auto ReadPatternName() const ->QString; - auto ReadMPath() const ->QString; + auto ReadPatternNumber() const -> QString; + auto ReadLabelDateFormat() const -> QString; + auto ReadPatternName() const -> QString; + auto ReadMPath() const -> QString; auto ReadWatermarkPath() const -> QString; auto ReadCompanyName() const -> QString; @@ -518,10 +544,10 @@ private: auto ParseItemElement(const QDomElement &domElement) -> QPair>; auto GetMaterials(const QDomElement &element) const -> QMap; - void SetMaterials(QDomElement &element, const QMap &materials); + void SetMaterials(QDomElement &element, const QMap &materials); auto GetFMeasurements(const QDomElement &element) const -> QVector; - void SetFMeasurements(QDomElement &element, const QVector &measurements); + void SetFMeasurements(QDomElement &element, const QVector &measurements); auto GetBackgroundPatternImage(const QDomElement &element) const -> VBackgroundPatternImage; auto GetBackgroundImageElement(const QUuid &id) const -> QDomElement; diff --git a/src/libs/ifc/xml/vdomdocument.cpp b/src/libs/ifc/xml/vdomdocument.cpp index 320149965..9d66d7d03 100644 --- a/src/libs/ifc/xml/vdomdocument.cpp +++ b/src/libs/ifc/xml/vdomdocument.cpp @@ -29,7 +29,6 @@ #include "vdomdocument.h" #include -#include #include #include "../exception/vexception.h" diff --git a/src/libs/ifc/xml/vpatternconverter.h b/src/libs/ifc/xml/vpatternconverter.h index 2ca75b828..fef969d29 100644 --- a/src/libs/ifc/xml/vpatternconverter.h +++ b/src/libs/ifc/xml/vpatternconverter.h @@ -29,7 +29,7 @@ #ifndef VPATTERNCONVERTER_H #define VPATTERNCONVERTER_H -#include + #include #include #include diff --git a/src/libs/ifc/xml/vvitconverter.h b/src/libs/ifc/xml/vvitconverter.h index babf9e847..6e3aae22e 100644 --- a/src/libs/ifc/xml/vvitconverter.h +++ b/src/libs/ifc/xml/vvitconverter.h @@ -29,7 +29,7 @@ #ifndef VVITCONVERTER_H #define VVITCONVERTER_H -#include + #include #include #include diff --git a/src/libs/ifc/xml/vvstconverter.h b/src/libs/ifc/xml/vvstconverter.h index 49ec7f0f8..571aacd39 100644 --- a/src/libs/ifc/xml/vvstconverter.h +++ b/src/libs/ifc/xml/vvstconverter.h @@ -29,7 +29,7 @@ #ifndef VMEASUREMENTCONVERTER_H #define VMEASUREMENTCONVERTER_H -#include + #include #include #include diff --git a/src/libs/qmuparser/qmuformulabase.h b/src/libs/qmuparser/qmuformulabase.h index 474a6f074..6d7025993 100644 --- a/src/libs/qmuparser/qmuformulabase.h +++ b/src/libs/qmuparser/qmuformulabase.h @@ -22,7 +22,6 @@ #ifndef QMUFORMULABASE_H #define QMUFORMULABASE_H -#include #include #include @@ -38,9 +37,9 @@ class QMUPARSERSHARED_EXPORT QmuFormulaBase : public QmuParser { public: QmuFormulaBase(); - virtual ~QmuFormulaBase() override; + ~QmuFormulaBase() override; - virtual void InitCharSets() override; + void InitCharSets() override; void SetSepForTr(bool osSeparator, bool fromUser); @@ -48,7 +47,8 @@ public: protected: static auto AddVariable(const QString &a_szName, void *a_pUserData) -> qreal *; - void SetSepForEval(); + void SetSepForEval(); + private: Q_DISABLE_COPY_MOVE(QmuFormulaBase) // NOLINT }; diff --git a/src/libs/qmuparser/qmuparser.h b/src/libs/qmuparser/qmuparser.h index d0bf6bf19..8e54493cf 100644 --- a/src/libs/qmuparser/qmuparser.h +++ b/src/libs/qmuparser/qmuparser.h @@ -22,7 +22,6 @@ #ifndef QMUPARSER_H #define QMUPARSER_H -#include #include #include #include @@ -37,73 +36,73 @@ namespace qmu { - QT_WARNING_PUSH - QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") +QT_WARNING_PUSH +QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") - /** @brief Mathematical expressions parser. - * - * Standard implementation of the mathematical expressions parser. - * Can be used as a reference implementation for subclassing the parser. - * - * - * (C) 2011 Ingo Berg
- * muparser(at)gmx.de - *
- */ - /* final */ class QMUPARSERSHARED_EXPORT QmuParser : public QmuParserBase - { - public: - QmuParser(); - virtual void InitCharSets() override; - virtual void InitFun() override; - virtual void InitConst() override; - virtual void InitOprt() override; - virtual void OnDetectVar(const QString &pExpr, qmusizetype &nStart, qmusizetype &nEnd) override; - auto Diff(qreal *a_Var, qreal a_fPos, qreal a_fEpsilon = 0) const -> qreal; +/** @brief Mathematical expressions parser. + * + * Standard implementation of the mathematical expressions parser. + * Can be used as a reference implementation for subclassing the parser. + * + * + * (C) 2011 Ingo Berg
+ * muparser(at)gmx.de + *
+ */ +/* final */ class QMUPARSERSHARED_EXPORT QmuParser : public QmuParserBase +{ +public: + QmuParser(); + void InitCharSets() override; + void InitFun() override; + void InitConst() override; + void InitOprt() override; + void OnDetectVar(const QString &pExpr, qmusizetype &nStart, qmusizetype &nEnd) override; + auto Diff(qreal *a_Var, qreal a_fPos, qreal a_fEpsilon = 0) const -> qreal; - protected: - static auto IsVal(const QString &a_szExpr, qmusizetype *a_iPos, qreal *a_fVal, const QLocale &locale, - bool cNumbers, const QChar &decimal, const QChar &thousand) -> int; - // hyperbolic functions - static auto Sinh(qreal) -> qreal; - static auto Cosh(qreal) -> qreal; - static auto Tanh(qreal) -> qreal; - // arcus hyperbolic functions - static auto ASinh(qreal) -> qreal; - static auto ACosh(qreal) -> qreal; - static auto ATanh(qreal) -> qreal; - // functions working with degrees - static auto DegreeToRadian(qreal) -> qreal; - static auto RadianToDegree(qreal) -> qreal; - static auto SinD(qreal) -> qreal; - static auto CosD(qreal) -> qreal; - static auto TanD(qreal) -> qreal; - static auto ASinD(qreal) -> qreal; - static auto ACosD(qreal) -> qreal; - static auto ATanD(qreal) -> qreal; +protected: + static auto IsVal(const QString &a_szExpr, qmusizetype *a_iPos, qreal *a_fVal, const QLocale &locale, bool cNumbers, + const QChar &decimal, const QChar &thousand) -> int; + // hyperbolic functions + static auto Sinh(qreal) -> qreal; + static auto Cosh(qreal) -> qreal; + static auto Tanh(qreal) -> qreal; + // arcus hyperbolic functions + static auto ASinh(qreal) -> qreal; + static auto ACosh(qreal) -> qreal; + static auto ATanh(qreal) -> qreal; + // functions working with degrees + static auto DegreeToRadian(qreal) -> qreal; + static auto RadianToDegree(qreal) -> qreal; + static auto SinD(qreal) -> qreal; + static auto CosD(qreal) -> qreal; + static auto TanD(qreal) -> qreal; + static auto ASinD(qreal) -> qreal; + static auto ACosD(qreal) -> qreal; + static auto ATanD(qreal) -> qreal; - // Logarithm functions - static auto Log2(qreal) -> qreal; // Logarithm Base 2 - static auto Log10(qreal) -> qreal; // Logarithm Base 10 - // misc - static auto Abs(qreal) -> qreal; - static auto Rint(qreal) -> qreal; - static auto R2CM(qreal) -> qreal; - static auto CSRCm(qreal length, qreal split, qreal arcLength) -> qreal; - static auto CSRInch(qreal length, qreal split, qreal arcLength) -> qreal; - static auto Sign(qreal) -> qreal; - static auto FMod(qreal, qreal) -> qreal; - // Prefix operators - // !!! Unary Minus is a MUST if you want to use negative signs !!! - static auto UnaryMinus(qreal v) -> qreal; - // Functions with variable number of arguments - static auto Sum(const qreal *, qmusizetype) -> qreal; // sum - static auto Avg(const qreal *, qmusizetype) -> qreal; // mean value - static auto Min(const qreal *, qmusizetype) -> qreal; // minimum - static auto Max(const qreal *, qmusizetype) -> qreal; // maximum - }; + // Logarithm functions + static auto Log2(qreal) -> qreal; // Logarithm Base 2 + static auto Log10(qreal) -> qreal; // Logarithm Base 10 + // misc + static auto Abs(qreal) -> qreal; + static auto Rint(qreal) -> qreal; + static auto R2CM(qreal) -> qreal; + static auto CSRCm(qreal length, qreal split, qreal arcLength) -> qreal; + static auto CSRInch(qreal length, qreal split, qreal arcLength) -> qreal; + static auto Sign(qreal) -> qreal; + static auto FMod(qreal, qreal) -> qreal; + // Prefix operators + // !!! Unary Minus is a MUST if you want to use negative signs !!! + static auto UnaryMinus(qreal v) -> qreal; + // Functions with variable number of arguments + static auto Sum(const qreal *, qmusizetype) -> qreal; // sum + static auto Avg(const qreal *, qmusizetype) -> qreal; // mean value + static auto Min(const qreal *, qmusizetype) -> qreal; // minimum + static auto Max(const qreal *, qmusizetype) -> qreal; // maximum +}; - QT_WARNING_POP +QT_WARNING_POP //--------------------------------------------------------------------------------------------------------------------- /** @@ -111,9 +110,9 @@ namespace qmu * @param v The value to negate * @return -v */ - inline auto QmuParser::UnaryMinus(qreal v) -> qreal - { - return -v; +inline auto QmuParser::UnaryMinus(qreal v) -> qreal +{ + return -v; } } // namespace qmu diff --git a/src/libs/qmuparser/qmuparserbase.h b/src/libs/qmuparser/qmuparserbase.h index 95c6d0c9c..65d3ee32d 100644 --- a/src/libs/qmuparser/qmuparserbase.h +++ b/src/libs/qmuparser/qmuparserbase.h @@ -22,19 +22,18 @@ #ifndef QMUQPARSERBASE_H #define QMUQPARSERBASE_H -#include -#include #include +#include #include #include #include #include #include +#include #include +#include #include #include -#include -#include #include "qmuparser_global.h" #include "qmuparserbytecode.h" @@ -69,40 +68,40 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") class QMUPARSERSHARED_EXPORT QmuParserBase { friend class QmuParserTokenReader; + public: QmuParserBase(); explicit QmuParserBase(const QmuParserBase &a_Parser); auto operator=(const QmuParserBase &a_Parser) -> QmuParserBase &; virtual ~QmuParserBase(); - static void EnableDebugDump(bool bDumpCmd, bool bDumpStack); + static void EnableDebugDump(bool bDumpCmd, bool bDumpStack); auto Eval() const -> qreal; auto Eval(int &nStackSize) const -> qreal *; - void Eval(qreal *results, int nBulkSize) const; + void Eval(qreal *results, int nBulkSize) const; auto GetNumResults() const -> int; - void SetExpr(const QString &a_sExpr); - void SetVarFactory(facfun_type a_pFactory, void *pUserData = nullptr); - void ResetLocale(); - void EnableOptimizer(bool a_bIsOn=true); - void EnableBuiltInOprt(bool a_bIsOn=true); + void SetExpr(const QString &a_sExpr); + void SetVarFactory(facfun_type a_pFactory, void *pUserData = nullptr); + void ResetLocale(); + void EnableOptimizer(bool a_bIsOn = true); + void EnableBuiltInOprt(bool a_bIsOn = true); auto HasBuiltInOprt() const -> bool; - void AddValIdent(identfun_type a_pCallback); - void DefineOprt(const QString &a_sName, fun_type2 a_pFun, unsigned a_iPrec=0, - EOprtAssociativity a_eAssociativity = oaLEFT, bool a_bAllowOpt = false); - void DefineConst(const QString &a_sName, qreal a_fVal); - void DefineStrConst(const QString &a_strName, const QString &a_strVal); - void DefineVar(const QString &a_sName, qreal *a_pVar); - void DefinePostfixOprt(const QString &a_sFun, fun_type1 a_pFun, bool a_bAllowOpt=true); - void DefineInfixOprt(const QString &a_sName, fun_type1 a_pFun, int a_iPrec=prINFIX, - bool a_bAllowOpt=true); + void AddValIdent(identfun_type a_pCallback); + void DefineOprt(const QString &a_sName, fun_type2 a_pFun, unsigned a_iPrec = 0, + EOprtAssociativity a_eAssociativity = oaLEFT, bool a_bAllowOpt = false); + void DefineConst(const QString &a_sName, qreal a_fVal); + void DefineStrConst(const QString &a_strName, const QString &a_strVal); + void DefineVar(const QString &a_sName, qreal *a_pVar); + void DefinePostfixOprt(const QString &a_sFun, fun_type1 a_pFun, bool a_bAllowOpt = true); + void DefineInfixOprt(const QString &a_sName, fun_type1 a_pFun, int a_iPrec = prINFIX, bool a_bAllowOpt = true); // Clear user defined variables, constants or functions - void ClearVar(); - void ClearFun(); - void ClearConst(); - void ClearInfixOprt(); - void ClearPostfixOprt(); - void ClearOprt(); - void RemoveVar(const QString &a_strVarName); + void ClearVar(); + void ClearFun(); + void ClearConst(); + void ClearInfixOprt(); + void ClearPostfixOprt(); + void ClearOprt(); + void RemoveVar(const QString &a_strVarName); auto GetUsedVar() const -> const varmap_type &; auto GetVar() const -> const varmap_type &; auto GetConst() const -> const valmap_type &; @@ -112,29 +111,28 @@ public: static auto GetOprtDef() -> const QStringList &; auto GetTokens() const -> QMap; auto GetNumbers() const -> QMap; - void DefineNameChars(const QString &a_szCharset); - void DefineOprtChars(const QString &a_szCharset); - void DefineInfixOprtChars(const QString &a_szCharset); + void DefineNameChars(const QString &a_szCharset); + void DefineOprtChars(const QString &a_szCharset); + void DefineInfixOprtChars(const QString &a_szCharset); auto ValidNameChars() const -> const QString &; auto ValidOprtChars() const -> const QString &; auto ValidInfixOprtChars() const -> const QString &; - void SetArgSep(char_type cArgSep); + void SetArgSep(char_type cArgSep); auto GetArgSep() const -> QChar; - Q_NORETURN void Error(EErrorCodes a_iErrc, qmusizetype a_iPos = -1, const QString &a_sTok = QString() ) const; + Q_NORETURN void Error(EErrorCodes a_iErrc, qmusizetype a_iPos = -1, const QString &a_sTok = QString()) const; - template - void DefineFun(const QString &a_strName, T a_pFun, bool a_bAllowOpt = true); + template void DefineFun(const QString &a_strName, T a_pFun, bool a_bAllowOpt = true); void setAllowSubexpressions(bool value); auto getLocale() const -> QLocale; - void setLocale(const QLocale &value); + void setLocale(const QLocale &value); auto getDecimalPoint() const -> QChar; - void setDecimalPoint(const QChar &c); + void setDecimalPoint(const QChar &c); auto getThousandsSeparator() const -> QChar; - void setThousandsSeparator(const QChar &c); + void setThousandsSeparator(const QChar &c); auto getCNumbers() const -> bool; void setCNumbers(bool cNumbers); @@ -146,16 +144,16 @@ protected: typedef QmuParserTokenReader token_reader_type; static const QStringList c_DefaultOprt; - QLocale m_locale;///< The locale used by the parser + QLocale m_locale; ///< The locale used by the parser QChar m_decimalPoint; QChar m_thousandsSeparator; - bool m_cNumbers{false}; ///< Search numbers in c locale - funmap_type m_FunDef; ///< Map of function names and pointers. + bool m_cNumbers{false}; ///< Search numbers in c locale + funmap_type m_FunDef; ///< Map of function names and pointers. std::unique_ptr m_pTokenReader; ///< Managed pointer to the token reader object. static bool g_DbgDumpCmdCode; static bool g_DbgDumpStack; void AddCallback(const QString &a_strName, const QmuParserCallback &a_Callback, funmap_type &a_Storage, - const QString &a_szCharSet ); + const QString &a_szCharSet); void Init(); virtual void InitCharSets() = 0; virtual void InitFun() = 0; @@ -165,32 +163,38 @@ protected: /** * @brief A facet class used to change decimal and thousands separator. */ - template - class change_dec_sep : public std::numpunct + template class change_dec_sep : public std::numpunct { - public: - explicit change_dec_sep(char_type cDecSep, char_type cThousandsSep = 0, int nGroup = 3) - :std::numpunct(), m_nGroup(nGroup), m_cDecPoint(cDecSep), m_cThousandsSep(cThousandsSep) - {} - protected: - virtual auto do_decimal_point() const -> char_type override { return m_cDecPoint; } + public: + explicit change_dec_sep(char_type cDecSep, char_type cThousandsSep = 0, int nGroup = 3) + : std::numpunct(), + m_nGroup(nGroup), + m_cDecPoint(cDecSep), + m_cThousandsSep(cThousandsSep) + { + } - virtual auto do_thousands_sep() const -> char_type override { return m_cThousandsSep; } + protected: + virtual auto do_decimal_point() const -> char_type override { return m_cDecPoint; } - virtual auto do_grouping() const -> std::string override - { - // fix for issue 4: https://code.google.com/p/muparser/issues/detail?id=4 - // courtesy of Jens Bartsch - // original code: - // return std::string(1, (char)m_nGroup); - // new code: - return std::string(1, static_cast(m_cThousandsSep > 0 ? m_nGroup : CHAR_MAX)); - } - private: - int m_nGroup; - char_type m_cDecPoint; - char_type m_cThousandsSep; + virtual auto do_thousands_sep() const -> char_type override { return m_cThousandsSep; } + + virtual auto do_grouping() const -> std::string override + { + // fix for issue 4: https://code.google.com/p/muparser/issues/detail?id=4 + // courtesy of Jens Bartsch + // original code: + // return std::string(1, (char)m_nGroup); + // new code: + return std::string(1, static_cast(m_cThousandsSep > 0 ? m_nGroup : CHAR_MAX)); + } + + private: + int m_nGroup; + char_type m_cDecPoint; + char_type m_cThousandsSep; }; + private: /** * @brief Typedef for the parse functions. @@ -226,54 +230,53 @@ private: * * Eval() calls the function whose address is stored there. */ - mutable ParseFunction m_pParseFormula; - mutable QmuParserByteCode m_vRPN; ///< The Bytecode class. - mutable stringbuf_type m_vStringBuf; ///< String buffer, used for storing string function arguments - stringbuf_type m_vStringVarBuf; + mutable ParseFunction m_pParseFormula; + mutable QmuParserByteCode m_vRPN; ///< The Bytecode class. + mutable stringbuf_type m_vStringBuf; ///< String buffer, used for storing string function arguments + stringbuf_type m_vStringVarBuf; - funmap_type m_PostOprtDef; ///< Postfix operator callbacks - funmap_type m_InfixOprtDef; ///< unary infix operator. - funmap_type m_OprtDef; ///< Binary operator callbacks - valmap_type m_ConstDef; ///< user constants. - strmap_type m_StrVarDef; ///< user defined string constants - varmap_type m_VarDef; ///< user defind variables. + funmap_type m_PostOprtDef; ///< Postfix operator callbacks + funmap_type m_InfixOprtDef; ///< unary infix operator. + funmap_type m_OprtDef; ///< Binary operator callbacks + valmap_type m_ConstDef; ///< user constants. + strmap_type m_StrVarDef; ///< user defined string constants + varmap_type m_VarDef; ///< user defind variables. - bool m_bBuiltInOp; ///< Flag that can be used for switching built in operators on and off + bool m_bBuiltInOp; ///< Flag that can be used for switching built in operators on and off QString m_sNameChars; ///< Charset for names QString m_sOprtChars; ///< Charset for postfix/ binary operator tokens QString m_sInfixOprtChars; ///< Charset for infix operator tokens - mutable int m_nIfElseCounter; ///< Internal counter for keeping track of nested if-then-else clauses + mutable int m_nIfElseCounter; ///< Internal counter for keeping track of nested if-then-else clauses // items merely used for caching state information mutable valbuf_type m_vStackBuffer; ///< This is merely a buffer used for the stack in the cmd parsing routine mutable int m_nFinalResultIdx; - mutable QMap m_Tokens;///< Keep all tokens that we can translate - mutable QMap m_Numbers;///< Keep all numbers what exist in formula + mutable QMap m_Tokens; ///< Keep all tokens that we can translate + mutable QMap m_Numbers; ///< Keep all numbers what exist in formula bool allowSubexpressions; - void Assign(const QmuParserBase &a_Parser); - void InitTokenReader(); - void ReInit() const; - void ApplyRemainingOprt(QStack &a_stOpt, QStack &a_stVal) const; - void ApplyBinOprt(QStack &a_stOpt, QStack &a_stVal) const; - void ApplyIfElse(QStack &a_stOpt, QStack &a_stVal) const; - void ApplyFunc(QStack &a_stOpt, QStack &a_stVal, int iArgCount) const; + void Assign(const QmuParserBase &a_Parser); + void InitTokenReader(); + void ReInit() const; + void ApplyRemainingOprt(QStack &a_stOpt, QStack &a_stVal) const; + void ApplyBinOprt(QStack &a_stOpt, QStack &a_stVal) const; + void ApplyIfElse(QStack &a_stOpt, QStack &a_stVal) const; + void ApplyFunc(QStack &a_stOpt, QStack &a_stVal, int iArgCount) const; auto ApplyStrFunc(const token_type &a_FunTok, const QVector &a_vArg) const -> token_type; auto GetOprtPrecedence(const token_type &a_Tok) const -> int; auto GetOprtAssociativity(const token_type &a_Tok) const -> EOprtAssociativity; - void CreateRPN() const; + void CreateRPN() const; auto ParseString() const -> qreal; auto ParseCmdCode() const -> qreal; auto ParseCmdCodeBulk(int nOffset, int nThreadID) const -> qreal; // cppcheck-suppress functionStatic - void CheckName(const QString &a_sName, const QString &a_szCharSet) const; + void CheckName(const QString &a_sName, const QString &a_szCharSet) const; // cppcheck-suppress functionStatic - void CheckOprt(const QString &a_sName, const QmuParserCallback &a_Callback, - const QString &a_szCharSet) const; - void StackDump(const QStack &a_stVal, const QStack &a_stOprt) const; + void CheckOprt(const QString &a_sName, const QmuParserCallback &a_Callback, const QString &a_szCharSet) const; + void StackDump(const QStack &a_stVal, const QStack &a_stOprt) const; }; // cppcheck-suppress unknownMacro @@ -288,10 +291,9 @@ QT_WARNING_POP * @param a_pFun Pointer to the callback function * @param a_bAllowOpt A flag indicating this function may be optimized */ -template -inline void QmuParserBase::DefineFun(const QString &a_strName, T a_pFun, bool a_bAllowOpt) +template inline void QmuParserBase::DefineFun(const QString &a_strName, T a_pFun, bool a_bAllowOpt) { - AddCallback( a_strName, QmuParserCallback(a_pFun, a_bAllowOpt), m_FunDef, ValidNameChars() ); + AddCallback(a_strName, QmuParserCallback(a_pFun, a_bAllowOpt), m_FunDef, ValidNameChars()); } //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/qmuparser/qmuparsercallback.cpp b/src/libs/qmuparser/qmuparsercallback.cpp index fee03b77e..8f02b7ff9 100644 --- a/src/libs/qmuparser/qmuparsercallback.cpp +++ b/src/libs/qmuparser/qmuparsercallback.cpp @@ -29,23 +29,26 @@ namespace qmu { //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type0 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type0 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec, ECmdCode a_iCode ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti, a_iPrec, a_iCode)) -{} +QmuParserCallback::QmuParserCallback(fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec, ECmdCode a_iCode) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti, a_iPrec, a_iCode)) +{ +} //--------------------------------------------------------------------------------------------------------------------- /** * @brief Constructor for constructing funcstion callbacks taking two arguments. * @throw nothrow */ -QmuParserCallback::QmuParserCallback ( fun_type2 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type2 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- /** @@ -56,128 +59,152 @@ QmuParserCallback::QmuParserCallback ( fun_type2 a_pFun, bool a_bAllowOpti ) * @param a_eOprtAsct The operators associativity * @throw nothrow */ -QmuParserCallback::QmuParserCallback (fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti, a_iPrec, a_eOprtAsct)) -{} +QmuParserCallback::QmuParserCallback(fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti, a_iPrec, a_eOprtAsct)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type3 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type3 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type4 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type4 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type5 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type5 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type6 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type6 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type7 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type7 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type8 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type8 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type9 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type9 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( fun_type10 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(fun_type10 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type0 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type0 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type1 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type1 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- /** * @brief Constructor for constructing funcstion callbacks taking two arguments. * @throw nothrow */ -QmuParserCallback::QmuParserCallback ( bulkfun_type2 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type2 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type3 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type3 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type4 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type4 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type5 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type5 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type6 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type6 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type7 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type7 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type8 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type8 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type9 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type9 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( bulkfun_type10 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(bulkfun_type10 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( multfun_type a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(multfun_type a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( strfun_type1 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(strfun_type1 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( strfun_type2 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(strfun_type2 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback ( strfun_type3 a_pFun, bool a_bAllowOpti ) - : d (new QmuParserCallbackData(a_pFun, a_bAllowOpti)) -{} +QmuParserCallback::QmuParserCallback(strfun_type3 a_pFun, bool a_bAllowOpti) + : d(new QmuParserCallbackData(a_pFun, a_bAllowOpti)) +{ +} //--------------------------------------------------------------------------------------------------------------------- /** @@ -185,22 +212,24 @@ QmuParserCallback::QmuParserCallback ( strfun_type3 a_pFun, bool a_bAllowOpti ) * @throw nothrow */ QmuParserCallback::QmuParserCallback() - : d (new QmuParserCallbackData) -{} + : d(new QmuParserCallbackData) +{ +} //--------------------------------------------------------------------------------------------------------------------- /** * @brief Copy constructor. * @throw nothrow */ -QmuParserCallback::QmuParserCallback (const QmuParserCallback &a_Fun ) - : d (a_Fun.d) -{} +QmuParserCallback::QmuParserCallback(const QmuParserCallback &a_Fun) + : d(a_Fun.d) +{ +} //--------------------------------------------------------------------------------------------------------------------- auto QmuParserCallback::operator=(const QmuParserCallback &a_Fun) -> QmuParserCallback & { - if ( &a_Fun == this ) + if (&a_Fun == this) { return *this; } @@ -210,12 +239,13 @@ auto QmuParserCallback::operator=(const QmuParserCallback &a_Fun) -> QmuParserCa #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -QmuParserCallback::QmuParserCallback(QmuParserCallback &&a_Fun) Q_DECL_NOTHROW - : d (std::move(a_Fun.d)) -{} +QmuParserCallback::QmuParserCallback(QmuParserCallback &&a_Fun) noexcept + : d(std::move(a_Fun.d)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -auto QmuParserCallback::operator=(QmuParserCallback &&a_Fun) Q_DECL_NOTHROW->QmuParserCallback & +auto QmuParserCallback::operator=(QmuParserCallback &&a_Fun) noexcept -> QmuParserCallback & { std::swap(d, a_Fun.d); return *this; @@ -252,7 +282,7 @@ auto QmuParserCallback::GetAddr() const -> void * //--------------------------------------------------------------------------------------------------------------------- /** * @brief Return the callback code. -*/ + */ auto QmuParserCallback::GetCode() const -> ECmdCode { return d->m_iCode; @@ -298,266 +328,438 @@ auto QmuParserCallback::GetArgc() const -> int } //--------------------------------------------------------------------------------------------------------------------- -//Supressing specific warnings on gcc/g++ http://www.mr-edd.co.uk/blog/supressing_gcc_warnings +// Supressing specific warnings on gcc/g++ http://www.mr-edd.co.uk/blog/supressing_gcc_warnings #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData() - : m_pFun ( nullptr ), m_iArgc ( 0 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), m_iCode ( cmUNKNOWN ), - m_iType ( tpVOID ), m_bAllowOpti ( 0 ) -{} + QmuParserCallbackData::QmuParserCallbackData() + : m_pFun(nullptr), + m_iArgc(0), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmUNKNOWN), + m_iType(tpVOID), + m_bAllowOpti(0) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type0 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 0 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type0 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(0), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec, ECmdCode a_iCode ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 1 ), m_iPri ( a_iPrec ), m_eOprtAsct ( oaNONE ), - m_iCode ( a_iCode ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec, ECmdCode a_iCode) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(1), + m_iPri(a_iPrec), + m_eOprtAsct(oaNONE), + m_iCode(a_iCode), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type2 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 2 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type2 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(2), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData (fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 2 ), m_iPri ( a_iPrec ), m_eOprtAsct ( a_eOprtAsct ), - m_iCode ( cmOPRT_BIN ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, + EOprtAssociativity a_eOprtAsct) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(2), + m_iPri(a_iPrec), + m_eOprtAsct(a_eOprtAsct), + m_iCode(cmOPRT_BIN), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type3 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 3 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type3 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(3), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type4 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 4 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type4 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(4), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type5 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 5 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type5 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(5), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type6 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 6 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type6 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(6), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type7 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 7 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type7 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(7), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type8 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 8 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type8 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(8), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type9 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 9 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type9 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(9), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( fun_type10 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 10 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(fun_type10 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(10), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type0 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 0 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type0 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(0), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type1 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 1 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type1 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(1), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type2 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 2 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type2 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(2), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type3 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 3 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type3 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(3), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type4 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 4 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type4 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(4), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type5 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 5 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type5 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(5), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type6 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 6 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type6 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(6), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type7 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 7 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type7 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(7), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type8 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 8 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type8 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(8), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type9 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 9 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type9 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(9), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( bulkfun_type10 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 10 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_BULK ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(bulkfun_type10 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(10), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_BULK), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( multfun_type a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( -1 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC ), m_iType ( tpDBL ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(multfun_type a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(-1), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC), + m_iType(tpDBL), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( strfun_type1 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 0 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_STR ), m_iType ( tpSTR ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(strfun_type1 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(0), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_STR), + m_iType(tpSTR), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( strfun_type2 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 1 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_STR ), m_iType ( tpSTR ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(strfun_type2 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(1), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_STR), + m_iType(tpSTR), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- #ifdef __GNUC__ __extension__ #endif -QmuParserCallbackData::QmuParserCallbackData ( strfun_type3 a_pFun, bool a_bAllowOpti ) - : m_pFun ( reinterpret_cast ( a_pFun ) ), m_iArgc ( 2 ), m_iPri ( -1 ), m_eOprtAsct ( oaNONE ), - m_iCode ( cmFUNC_STR ), m_iType ( tpSTR ), m_bAllowOpti ( a_bAllowOpti ) -{} + QmuParserCallbackData::QmuParserCallbackData(strfun_type3 a_pFun, bool a_bAllowOpti) + : m_pFun(reinterpret_cast(a_pFun)), + m_iArgc(2), + m_iPri(-1), + m_eOprtAsct(oaNONE), + m_iCode(cmFUNC_STR), + m_iType(tpSTR), + m_bAllowOpti(a_bAllowOpti) +{ +} //--------------------------------------------------------------------------------------------------------------------- QmuParserCallbackData::QmuParserCallbackData(const QmuParserCallbackData &a_Fun) - : QSharedData(a_Fun), m_pFun(a_Fun.m_pFun), m_iArgc(a_Fun.m_iArgc), m_iPri(a_Fun.m_iPri), - m_eOprtAsct(a_Fun.m_eOprtAsct), m_iCode(a_Fun.m_iCode), m_iType(a_Fun.m_iType), m_bAllowOpti(a_Fun.m_bAllowOpti) -{} - -//--------------------------------------------------------------------------------------------------------------------- -QmuParserCallbackData::~QmuParserCallbackData() -{} + : QSharedData(a_Fun), + m_pFun(a_Fun.m_pFun), + m_iArgc(a_Fun.m_iArgc), + m_iPri(a_Fun.m_iPri), + m_eOprtAsct(a_Fun.m_eOprtAsct), + m_iCode(a_Fun.m_iCode), + m_iType(a_Fun.m_iType), + m_bAllowOpti(a_Fun.m_bAllowOpti) +{ +} } // namespace qmu diff --git a/src/libs/qmuparser/qmuparsercallback.h b/src/libs/qmuparser/qmuparsercallback.h index af97b51e2..201e3c900 100644 --- a/src/libs/qmuparser/qmuparsercallback.h +++ b/src/libs/qmuparser/qmuparsercallback.h @@ -22,15 +22,14 @@ #ifndef QMUPARSERCALLBACK_H #define QMUPARSERCALLBACK_H -#include -#include -#include -#include #include +#include +#include +#include #include "qmuparser_global.h" -#include "qmuparserdef.h" #include "qmuparsercallback_p.h" +#include "qmuparserdef.h" /** * @file @@ -53,29 +52,29 @@ namespace qmu class QMUPARSERSHARED_EXPORT QmuParserCallback { public: - QmuParserCallback(fun_type0 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec = -1, ECmdCode a_iCode=cmFUNC); - QmuParserCallback(fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct); - QmuParserCallback(fun_type2 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type3 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type4 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type5 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type6 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type7 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type8 a_pFun, bool a_bAllowOpti); - QmuParserCallback(fun_type9 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type0 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec = -1, ECmdCode a_iCode = cmFUNC); + QmuParserCallback(fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct); + QmuParserCallback(fun_type2 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type3 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type4 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type5 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type6 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type7 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type8 a_pFun, bool a_bAllowOpti); + QmuParserCallback(fun_type9 a_pFun, bool a_bAllowOpti); QmuParserCallback(fun_type10 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type0 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type1 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type2 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type3 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type4 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type5 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type6 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type7 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type8 a_pFun, bool a_bAllowOpti); - QmuParserCallback(bulkfun_type9 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type0 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type1 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type2 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type3 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type4 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type5 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type6 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type7 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type8 a_pFun, bool a_bAllowOpti); + QmuParserCallback(bulkfun_type9 a_pFun, bool a_bAllowOpti); QmuParserCallback(bulkfun_type10 a_pFun, bool a_bAllowOpti); QmuParserCallback(multfun_type a_pFun, bool a_bAllowOpti); @@ -87,8 +86,8 @@ public: auto operator=(const QmuParserCallback &a_Fun) -> QmuParserCallback &; #ifdef Q_COMPILER_RVALUE_REFS - QmuParserCallback(QmuParserCallback &&a_Fun) Q_DECL_NOTHROW; - auto operator=(QmuParserCallback &&a_Fun) Q_DECL_NOTHROW->QmuParserCallback &; + QmuParserCallback(QmuParserCallback &&a_Fun) noexcept; + auto operator=(QmuParserCallback &&a_Fun) noexcept -> QmuParserCallback &; #endif Q_REQUIRED_RESULT auto Clone() const -> QmuParserCallback *; @@ -117,7 +116,7 @@ typedef std::map funmap_type; */ inline auto QmuParserCallback::Clone() const -> QmuParserCallback * { - return new QmuParserCallback ( *this ); + return new QmuParserCallback(*this); } } // namespace qmu diff --git a/src/libs/qmuparser/qmuparsercallback_p.h b/src/libs/qmuparser/qmuparsercallback_p.h index 9ea8aeba7..dd66211e6 100644 --- a/src/libs/qmuparser/qmuparsercallback_p.h +++ b/src/libs/qmuparser/qmuparsercallback_p.h @@ -25,8 +25,8 @@ #ifndef QMUPARSERCALLBACK_P_H #define QMUPARSERCALLBACK_P_H -#include #include "qmuparserdef.h" +#include #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) @@ -43,29 +43,29 @@ class QmuParserCallbackData : public QSharedData { public: QmuParserCallbackData(); - QmuParserCallbackData(fun_type0 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec = -1, ECmdCode a_iCode=cmFUNC); - QmuParserCallbackData(fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct); - QmuParserCallbackData(fun_type2 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type3 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type4 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type5 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type6 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type7 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type8 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(fun_type9 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type0 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type1 a_pFun, bool a_bAllowOpti, int a_iPrec = -1, ECmdCode a_iCode = cmFUNC); + QmuParserCallbackData(fun_type2 a_pFun, bool a_bAllowOpti, int a_iPrec, EOprtAssociativity a_eOprtAsct); + QmuParserCallbackData(fun_type2 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type3 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type4 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type5 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type6 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type7 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type8 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(fun_type9 a_pFun, bool a_bAllowOpti); QmuParserCallbackData(fun_type10 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type0 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type1 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type2 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type3 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type4 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type5 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type6 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type7 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type8 a_pFun, bool a_bAllowOpti); - QmuParserCallbackData(bulkfun_type9 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type0 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type1 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type2 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type3 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type4 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type5 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type6 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type7 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type8 a_pFun, bool a_bAllowOpti); + QmuParserCallbackData(bulkfun_type9 a_pFun, bool a_bAllowOpti); QmuParserCallbackData(bulkfun_type10 a_pFun, bool a_bAllowOpti); QmuParserCallbackData(multfun_type a_pFun, bool a_bAllowOpti); @@ -73,9 +73,9 @@ public: QmuParserCallbackData(strfun_type2 a_pFun, bool a_bAllowOpti); QmuParserCallbackData(strfun_type3 a_pFun, bool a_bAllowOpti); QmuParserCallbackData(const QmuParserCallbackData &a_Fun); - virtual ~QmuParserCallbackData(); + ~QmuParserCallbackData() = default; - void *m_pFun; ///< Pointer to the callback function, casted to void + void *m_pFun; ///< Pointer to the callback function, casted to void /** * @brief Number of numeric function arguments @@ -83,12 +83,12 @@ public: * This number is negative for functions with variable number of arguments. in this cases * they represent the actual number of arguments found. */ - int m_iArgc; - int m_iPri; ///< Valid only for binary and infix operators; Operator precedence. + int m_iArgc; + int m_iPri; ///< Valid only for binary and infix operators; Operator precedence. EOprtAssociativity m_eOprtAsct; ///< Operator associativity; Valid only for binary operators - ECmdCode m_iCode; + ECmdCode m_iCode; ETypeCode m_iType; - bool m_bAllowOpti; ///< Flag indication optimizeability + bool m_bAllowOpti; ///< Flag indication optimizeability private: Q_DISABLE_ASSIGN_MOVE(QmuParserCallbackData) // NOLINT @@ -96,5 +96,5 @@ private: QT_WARNING_POP -} +} // namespace qmu #endif // QMUPARSERCALLBACK_P_H diff --git a/src/libs/qmuparser/qmuparsererror.h b/src/libs/qmuparser/qmuparsererror.h index 736f59873..2654df382 100644 --- a/src/libs/qmuparser/qmuparsererror.h +++ b/src/libs/qmuparser/qmuparsererror.h @@ -22,7 +22,6 @@ #ifndef QMUPARSERERROR_H #define QMUPARSERERROR_H -#include #include #include #include @@ -48,58 +47,58 @@ namespace qmu enum EErrorCodes { // Formula syntax errors - ecUNEXPECTED_OPERATOR = 0, ///< Unexpected binary operator found - ecUNASSIGNABLE_TOKEN = 1, ///< Token cant be identified. - ecUNEXPECTED_EOF = 2, ///< Unexpected end of formula. (Example: "2+sin(") - ecUNEXPECTED_ARG_SEP = 3, ///< An unexpected semicolon has been found. (Example: "1;23") - ecUNEXPECTED_ARG = 4, ///< An unexpected argument has been found - ecUNEXPECTED_VAL = 5, ///< An unexpected value token has been found - ecUNEXPECTED_VAR = 6, ///< An unexpected variable token has been found - ecUNEXPECTED_PARENS = 7, ///< Unexpected Parenthesis, opening or closing - ecUNEXPECTED_STR = 8, ///< A string has been found at an inapropriate position - ecSTRING_EXPECTED = 9, ///< A string function has been called with a different type of argument - ecVAL_EXPECTED = 10, ///< A numerical function has been called with a non value type of argument - ecMISSING_PARENS = 11, ///< Missing parens. (Example: "3*sin(3") - ecUNEXPECTED_FUN = 12, ///< Unexpected function found. (Example: "sin(8)cos(9)") - ecUNTERMINATED_STRING = 13, ///< unterminated string constant. (Example: "3*valueof("hello)") - ecTOO_MANY_PARAMS = 14, ///< Too many function parameters - ecTOO_FEW_PARAMS = 15, ///< Too few function parameters. (Example: "ite(1<2;2)") - ecOPRT_TYPE_CONFLICT = 16, ///< binary operators may only be applied to value items of the same type - ecSTR_RESULT = 17, ///< result is a string + ecUNEXPECTED_OPERATOR = 0, ///< Unexpected binary operator found + ecUNASSIGNABLE_TOKEN = 1, ///< Token cant be identified. + ecUNEXPECTED_EOF = 2, ///< Unexpected end of formula. (Example: "2+sin(") + ecUNEXPECTED_ARG_SEP = 3, ///< An unexpected semicolon has been found. (Example: "1;23") + ecUNEXPECTED_ARG = 4, ///< An unexpected argument has been found + ecUNEXPECTED_VAL = 5, ///< An unexpected value token has been found + ecUNEXPECTED_VAR = 6, ///< An unexpected variable token has been found + ecUNEXPECTED_PARENS = 7, ///< Unexpected Parenthesis, opening or closing + ecUNEXPECTED_STR = 8, ///< A string has been found at an inapropriate position + ecSTRING_EXPECTED = 9, ///< A string function has been called with a different type of argument + ecVAL_EXPECTED = 10, ///< A numerical function has been called with a non value type of argument + ecMISSING_PARENS = 11, ///< Missing parens. (Example: "3*sin(3") + ecUNEXPECTED_FUN = 12, ///< Unexpected function found. (Example: "sin(8)cos(9)") + ecUNTERMINATED_STRING = 13, ///< unterminated string constant. (Example: "3*valueof("hello)") + ecTOO_MANY_PARAMS = 14, ///< Too many function parameters + ecTOO_FEW_PARAMS = 15, ///< Too few function parameters. (Example: "ite(1<2;2)") + ecOPRT_TYPE_CONFLICT = 16, ///< binary operators may only be applied to value items of the same type + ecSTR_RESULT = 17, ///< result is a string // Invalid Parser input Parameters - ecINVALID_NAME = 18, ///< Invalid function, variable or constant name. - ecINVALID_BINOP_IDENT = 19, ///< Invalid binary operator identifier - ecINVALID_INFIX_IDENT = 20, ///< Invalid function, variable or constant name. - ecINVALID_POSTFIX_IDENT = 21, ///< Invalid function, variable or constant name. + ecINVALID_NAME = 18, ///< Invalid function, variable or constant name. + ecINVALID_BINOP_IDENT = 19, ///< Invalid binary operator identifier + ecINVALID_INFIX_IDENT = 20, ///< Invalid function, variable or constant name. + ecINVALID_POSTFIX_IDENT = 21, ///< Invalid function, variable or constant name. - ecBUILTIN_OVERLOAD = 22, ///< Trying to overload builtin operator - ecINVALID_FUN_PTR = 23, ///< Invalid callback function pointer - ecINVALID_VAR_PTR = 24, ///< Invalid variable pointer - ecEMPTY_EXPRESSION = 25, ///< The Expression is empty - ecNAME_CONFLICT = 26, ///< Name conflict - ecOPT_PRI = 27, ///< Invalid operator priority - // - ecDOMAIN_ERROR = 28, ///< catch division by zero, sqrt(-1), log(0) (currently unused) - ecDIV_BY_ZERO = 29, ///< Division by zero (currently unused) - ecGENERIC = 30, ///< Generic error - ecLOCALE = 31, ///< Conflict with current locale + ecBUILTIN_OVERLOAD = 22, ///< Trying to overload builtin operator + ecINVALID_FUN_PTR = 23, ///< Invalid callback function pointer + ecINVALID_VAR_PTR = 24, ///< Invalid variable pointer + ecEMPTY_EXPRESSION = 25, ///< The Expression is empty + ecNAME_CONFLICT = 26, ///< Name conflict + ecOPT_PRI = 27, ///< Invalid operator priority + // + ecDOMAIN_ERROR = 28, ///< catch division by zero, sqrt(-1), log(0) (currently unused) + ecDIV_BY_ZERO = 29, ///< Division by zero (currently unused) + ecGENERIC = 30, ///< Generic error + ecLOCALE = 31, ///< Conflict with current locale ecUNEXPECTED_CONDITIONAL = 32, - ecMISSING_ELSE_CLAUSE = 33, - ecMISPLACED_COLON = 34, + ecMISSING_ELSE_CLAUSE = 33, + ecMISPLACED_COLON = 34, // internal errors - ecINTERNAL_ERROR = 35, ///< Internal error of any kind. + ecINTERNAL_ERROR = 35, ///< Internal error of any kind. // The last two are special entries - ecCOUNT, ///< This is no error code, It just stores just the total number of error codes - ecUNDEFINED = -1 ///< Undefined message, placeholder to detect unassigned error messages + ecCOUNT, ///< This is no error code, It just stores just the total number of error codes + ecUNDEFINED = -1 ///< Undefined message, placeholder to detect unassigned error messages }; //--------------------------------------------------------------------------- /** @brief A class that handles the error messages. -*/ + */ class QMUPARSERSHARED_EXPORT QmuParserErrorMsg { public: @@ -114,8 +113,8 @@ public: private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(QmuParserErrorMsg) // NOLINT - QMap m_vErrMsg; ///< A map with the predefined error messages - static const self_type m_Instance; ///< The instance pointer + QMap m_vErrMsg; ///< A map with the predefined error messages + static const self_type m_Instance; ///< The instance pointer }; //--------------------------------------------------------------------------------------------------------------------- @@ -134,19 +133,19 @@ inline auto QmuParserErrorMsg::operator[](int a_iIdx) const -> QString class QMUPARSERSHARED_EXPORT QmuParserWarning : public QException { public: - explicit QmuParserWarning ( const QString &sMsg ); - QmuParserWarning ( const QmuParserWarning &a_Obj ); + explicit QmuParserWarning(const QString &sMsg); + QmuParserWarning(const QmuParserWarning &a_Obj); auto operator=(const QmuParserWarning &a_Obj) -> QmuParserWarning &; // cppcheck-suppress unknownMacro - virtual ~QmuParserWarning() QMUP_NOEXCEPT_EXPR (true) override {} + virtual ~QmuParserWarning() QMUP_NOEXCEPT_EXPR(true) override {} auto GetMsg() const -> const QString &; - Q_NORETURN virtual void raise() const override; + Q_NORETURN virtual void raise() const override; Q_REQUIRED_RESULT virtual auto clone() const -> QmuParserWarning * override; private: - QString m_sMsg; ///< The message string + QString m_sMsg; ///< The message string }; //--------------------------------------------------------------------------------------------------------------------- @@ -168,29 +167,30 @@ class QMUPARSERSHARED_EXPORT QmuParserError : public QException { public: QmuParserError(); - explicit QmuParserError ( EErrorCodes a_iErrc ); - explicit QmuParserError ( const QString &sMsg ); - QmuParserError ( EErrorCodes a_iErrc, const QString &sTok, const QString &sFormula = QString(), qmusizetype a_iPos = -1 ); - QmuParserError ( EErrorCodes a_iErrc, int a_iPos, const QString &sTok ); - QmuParserError ( const QString &szMsg, int iPos, const QString &sTok = QString() ); - QmuParserError ( const QmuParserError &a_Obj ); + explicit QmuParserError(EErrorCodes a_iErrc); + explicit QmuParserError(const QString &sMsg); + QmuParserError(EErrorCodes a_iErrc, const QString &sTok, const QString &sFormula = QString(), + qmusizetype a_iPos = -1); + QmuParserError(EErrorCodes a_iErrc, int a_iPos, const QString &sTok); + QmuParserError(const QString &szMsg, int iPos, const QString &sTok = QString()); + QmuParserError(const QmuParserError &a_Obj); auto operator=(const QmuParserError &a_Obj) -> QmuParserError &; - virtual ~QmuParserError() QMUP_NOEXCEPT_EXPR (true) override {} + virtual ~QmuParserError() QMUP_NOEXCEPT_EXPR(true) override {} - void SetFormula ( const QString &a_strFormula ); + void SetFormula(const QString &a_strFormula); auto GetExpr() const -> const QString &; auto GetMsg() const -> const QString &; auto GetPos() const -> qmusizetype; auto GetToken() const -> const QString &; auto GetCode() const -> EErrorCodes; - Q_NORETURN virtual void raise() const override; + Q_NORETURN virtual void raise() const override; Q_REQUIRED_RESULT virtual auto clone() const -> QmuParserError * override; private: QString m_sMsg; ///< The message string QString m_sExpr; ///< Formula string QString m_sTok; ///< Token related with the error - qmusizetype m_iPos; ///< Formula position related to the error + qmusizetype m_iPos; ///< Formula position related to the error EErrorCodes m_iErrc; ///< Error code const QmuParserErrorMsg &m_ErrMsg; void Reset(); @@ -200,7 +200,7 @@ private: /** * @brief Set the expression related to this error. */ -inline void QmuParserError::SetFormula ( const QString &a_strFormula ) +inline void QmuParserError::SetFormula(const QString &a_strFormula) { m_sExpr = a_strFormula; } diff --git a/src/libs/qmuparser/qmuparsertokenreader.h b/src/libs/qmuparser/qmuparsertokenreader.h index 71d2f7a46..b7ea045e5 100644 --- a/src/libs/qmuparser/qmuparsertokenreader.h +++ b/src/libs/qmuparser/qmuparsertokenreader.h @@ -22,7 +22,6 @@ #ifndef QMUPARSERTOKENREADER_H #define QMUPARSERTOKENREADER_H -#include #include #include #include @@ -52,25 +51,26 @@ class QmuParserTokenReader { private: using token_type = QmuParserToken; + public: explicit QmuParserTokenReader(QmuParserBase *a_pParent); - ~QmuParserTokenReader()=default; + ~QmuParserTokenReader() = default; - auto Clone(QmuParserBase *a_pParent) const -> QmuParserTokenReader*; + auto Clone(QmuParserBase *a_pParent) const -> QmuParserTokenReader *; void AddValIdent(identfun_type a_pCallback); void SetVarCreator(facfun_type a_pFactory, void *pUserData); void SetFormula(const QString &a_strFormula); void SetArgSep(char_type cArgSep); auto GetPos() const -> qmusizetype; - auto GetExpr() const -> const QString&; - auto GetUsedVar() -> varmap_type&; + auto GetExpr() const -> const QString &; + auto GetUsedVar() -> varmap_type &; auto GetArgSep() const -> QChar; void IgnoreUndefVar(bool bIgnore); void ReInit(); auto ReadNextToken(const QLocale &locale, bool cNumbers, const QChar &decimal, const QChar &thousand) -> token_type; -private: +private: /** * @brief Syntax codes. * @@ -80,29 +80,30 @@ private: */ enum ESynCodes { - noBO = 1 << 0, ///< to avoid i.e. "cos(7)(" NOLINT(hicpp-signed-bitwise) - noBC = 1 << 1, ///< to avoid i.e. "sin)" or "()" NOLINT(hicpp-signed-bitwise) - noVAL = 1 << 2, ///< to avoid i.e. "tan 2" or "sin(8)3.14" NOLINT(hicpp-signed-bitwise) - noVAR = 1 << 3, ///< to avoid i.e. "sin a" or "sin(8)a" NOLINT(hicpp-signed-bitwise) - noARG_SEP = 1 << 4, ///< to avoid i.e. ",," or "+," ... NOLINT(hicpp-signed-bitwise) - noFUN = 1 << 5, ///< to avoid i.e. "sqrt cos" or "(1)sin" NOLINT(hicpp-signed-bitwise) - noOPT = 1 << 6, ///< to avoid i.e. "(+)" NOLINT(hicpp-signed-bitwise) - noPOSTOP = 1 << 7, ///< to avoid i.e. "(5!!)" "sin!" NOLINT(hicpp-signed-bitwise) - noINFIXOP = 1 << 8, ///< to avoid i.e. "++4" "!!4" NOLINT(hicpp-signed-bitwise) - noEND = 1 << 9, ///< to avoid unexpected end of formula NOLINT(hicpp-signed-bitwise) - noSTR = 1 << 10, ///< to block numeric arguments on string functions NOLINT(hicpp-signed-bitwise) - noASSIGN = 1 << 11, ///< to block assignement to constant i.e. "4=7" NOLINT(hicpp-signed-bitwise) - noIF = 1 << 12, // NOLINT(hicpp-signed-bitwise) - noELSE = 1 << 13, // NOLINT(hicpp-signed-bitwise) - sfSTART_OF_LINE = noOPT | noBC | noPOSTOP | noASSIGN | noIF | noELSE | noARG_SEP, // NOLINT(hicpp-signed-bitwise) - noANY = ~0 ///< All of he above flags set NOLINT(hicpp-signed-bitwise) + noBO = 1 << 0, ///< to avoid i.e. "cos(7)(" NOLINT(hicpp-signed-bitwise) + noBC = 1 << 1, ///< to avoid i.e. "sin)" or "()" NOLINT(hicpp-signed-bitwise) + noVAL = 1 << 2, ///< to avoid i.e. "tan 2" or "sin(8)3.14" NOLINT(hicpp-signed-bitwise) + noVAR = 1 << 3, ///< to avoid i.e. "sin a" or "sin(8)a" NOLINT(hicpp-signed-bitwise) + noARG_SEP = 1 << 4, ///< to avoid i.e. ",," or "+," ... NOLINT(hicpp-signed-bitwise) + noFUN = 1 << 5, ///< to avoid i.e. "sqrt cos" or "(1)sin" NOLINT(hicpp-signed-bitwise) + noOPT = 1 << 6, ///< to avoid i.e. "(+)" NOLINT(hicpp-signed-bitwise) + noPOSTOP = 1 << 7, ///< to avoid i.e. "(5!!)" "sin!" NOLINT(hicpp-signed-bitwise) + noINFIXOP = 1 << 8, ///< to avoid i.e. "++4" "!!4" NOLINT(hicpp-signed-bitwise) + noEND = 1 << 9, ///< to avoid unexpected end of formula NOLINT(hicpp-signed-bitwise) + noSTR = 1 << 10, ///< to block numeric arguments on string functions NOLINT(hicpp-signed-bitwise) + noASSIGN = 1 << 11, ///< to block assignement to constant i.e. "4=7" NOLINT(hicpp-signed-bitwise) + noIF = 1 << 12, // NOLINT(hicpp-signed-bitwise) + noELSE = 1 << 13, // NOLINT(hicpp-signed-bitwise) + sfSTART_OF_LINE = + noOPT | noBC | noPOSTOP | noASSIGN | noIF | noELSE | noARG_SEP, // NOLINT(hicpp-signed-bitwise) + noANY = ~0 ///< All of he above flags set NOLINT(hicpp-signed-bitwise) }; - QmuParserBase *m_pParser; - QString m_strFormula{}; - qmusizetype m_iPos{0}; - int m_iSynFlags{0}; - bool m_bIgnoreUndefVar{false}; + QmuParserBase *m_pParser; + QString m_strFormula{}; + qmusizetype m_iPos{0}; + int m_iSynFlags{0}; + bool m_bIgnoreUndefVar{false}; const funmap_type *m_pFunDef{nullptr}; const funmap_type *m_pPostOprtDef{nullptr}; @@ -110,18 +111,18 @@ private: const funmap_type *m_pOprtDef{nullptr}; const valmap_type *m_pConstDef{nullptr}; const strmap_type *m_pStrVarDef{nullptr}; - varmap_type *m_pVarDef{nullptr}; ///< The only non const pointer to parser internals - facfun_type m_pFactory{nullptr}; - void *m_pFactoryData{nullptr}; + varmap_type *m_pVarDef{nullptr}; ///< The only non const pointer to parser internals + facfun_type m_pFactory{nullptr}; + void *m_pFactoryData{nullptr}; std::list m_vIdentFun{}; ///< Value token identification function - varmap_type m_UsedVar{}; - qreal m_fZero{0}; ///< Dummy value of zero, referenced by undefined variables - int m_iBrackets{0}; ///< Keep count open brackets - token_type m_lastTok{}; - QChar m_cArgSep{';'}; ///< The character used for separating function arguments + varmap_type m_UsedVar{}; + qreal m_fZero{0}; ///< Dummy value of zero, referenced by undefined variables + int m_iBrackets{0}; ///< Keep count open brackets + token_type m_lastTok{}; + QChar m_cArgSep{';'}; ///< The character used for separating function arguments QmuParserTokenReader(const QmuParserTokenReader &a_Reader); - auto operator=(const QmuParserTokenReader &a_Reader) -> QmuParserTokenReader&; + auto operator=(const QmuParserTokenReader &a_Reader) -> QmuParserTokenReader &; void Assign(const QmuParserTokenReader &a_Reader); @@ -136,15 +137,15 @@ private: auto IsFunTok(token_type &a_Tok) -> bool; auto IsPostOpTok(token_type &a_Tok) -> bool; auto IsOprt(token_type &a_Tok) -> bool; - auto IsValTok(token_type &a_Tok, const QLocale &locale, bool cNumbers, const QChar &decimal, - const QChar &thousand) -> bool; + auto IsValTok(token_type &a_Tok, const QLocale &locale, bool cNumbers, const QChar &decimal, const QChar &thousand) + -> bool; auto IsVarTok(token_type &a_Tok) -> bool; auto IsStrVarTok(token_type &a_Tok) -> bool; auto IsUndefVarTok(token_type &a_Tok) -> bool; auto IsString(token_type &a_Tok) -> bool; - Q_NORETURN void Error(EErrorCodes a_iErrc, qmusizetype a_iPos = -1, const QString &a_sTok = QString() ) const; + Q_NORETURN void Error(EErrorCodes a_iErrc, qmusizetype a_iPos = -1, const QString &a_sTok = QString()) const; - auto SaveBeforeReturn(const token_type &tok) -> token_type&; + auto SaveBeforeReturn(const token_type &tok) -> token_type &; }; //--------------------------------------------------------------------------------------------------------------------- @@ -166,7 +167,7 @@ inline auto QmuParserTokenReader::GetPos() const -> qmusizetype * @return #m_strFormula * @throw nothrow */ -inline auto QmuParserTokenReader::GetExpr() const -> const QString& +inline auto QmuParserTokenReader::GetExpr() const -> const QString & { return m_strFormula; } @@ -175,7 +176,7 @@ inline auto QmuParserTokenReader::GetExpr() const -> const QString& /** * @brief Return a map containing the used variables only. */ -inline auto QmuParserTokenReader::GetUsedVar() -> varmap_type& +inline auto QmuParserTokenReader::GetUsedVar() -> varmap_type & { return m_UsedVar; } @@ -189,13 +190,13 @@ inline auto QmuParserTokenReader::GetUsedVar() -> varmap_type& * Those function should return a complete list of variables including * those the are not defined by the time of it's call. */ -inline void QmuParserTokenReader::IgnoreUndefVar ( bool bIgnore ) +inline void QmuParserTokenReader::IgnoreUndefVar(bool bIgnore) { m_bIgnoreUndefVar = bIgnore; } //--------------------------------------------------------------------------------------------------------------------- -inline void QmuParserTokenReader::SetArgSep ( char_type cArgSep ) +inline void QmuParserTokenReader::SetArgSep(char_type cArgSep) { m_cArgSep = QChar(cArgSep); } diff --git a/src/libs/qmuparser/qmutokenparser.h b/src/libs/qmuparser/qmutokenparser.h index 74b6b94d0..b1f567ea1 100644 --- a/src/libs/qmuparser/qmutokenparser.h +++ b/src/libs/qmuparser/qmutokenparser.h @@ -22,7 +22,6 @@ #ifndef QMUTOKENPARSER_H #define QMUTOKENPARSER_H -#include #include #include diff --git a/src/libs/vdxf/vdxfengine.h b/src/libs/vdxf/vdxfengine.h index 0507d625c..b3686911e 100644 --- a/src/libs/vdxf/vdxfengine.h +++ b/src/libs/vdxf/vdxfengine.h @@ -35,7 +35,6 @@ #include #include #include -#include #include #include "../vmisc/def.h" diff --git a/src/libs/vdxf/vdxfpaintdevice.h b/src/libs/vdxf/vdxfpaintdevice.h index f8a1f6f25..592a69308 100644 --- a/src/libs/vdxf/vdxfpaintdevice.h +++ b/src/libs/vdxf/vdxfpaintdevice.h @@ -33,7 +33,6 @@ #include #include #include -#include #include "dxfdef.h" #include "libdxfrw/drw_base.h" diff --git a/src/libs/vformat/vmeasurements.h b/src/libs/vformat/vmeasurements.h index 08230bcf1..87f03b6fb 100644 --- a/src/libs/vformat/vmeasurements.h +++ b/src/libs/vformat/vmeasurements.h @@ -29,7 +29,7 @@ #ifndef VMEASUREMENTS_H #define VMEASUREMENTS_H -#include + #include #include #include diff --git a/src/libs/vgeometry/vabstractarc.cpp b/src/libs/vgeometry/vabstractarc.cpp index bd321c58d..326a199ce 100644 --- a/src/libs/vgeometry/vabstractarc.cpp +++ b/src/libs/vgeometry/vabstractarc.cpp @@ -36,40 +36,48 @@ //--------------------------------------------------------------------------------------------------------------------- VAbstractArc::VAbstractArc(const GOType &type, const quint32 &idObject, const Draw &mode) - : VAbstractCurve(type, idObject, mode), d (new VAbstractArcData()) -{} + : VAbstractCurve(type, idObject, mode), + d(new VAbstractArcData()) +{ +} //--------------------------------------------------------------------------------------------------------------------- VAbstractArc::VAbstractArc(const GOType &type, const VPointF ¢er, qreal f1, const QString &formulaF1, qreal f2, const QString &formulaF2, quint32 idObject, Draw mode) - : VAbstractCurve(type, idObject, mode), d (new VAbstractArcData(center, f1, formulaF1, f2, formulaF2)) -{} + : VAbstractCurve(type, idObject, mode), + d(new VAbstractArcData(center, f1, formulaF1, f2, formulaF2)) +{ +} //--------------------------------------------------------------------------------------------------------------------- VAbstractArc::VAbstractArc(const GOType &type, const VPointF ¢er, qreal f1, qreal f2, quint32 idObject, Draw mode) - : VAbstractCurve(type, idObject, mode), d (new VAbstractArcData(center, f1, f2)) -{} + : VAbstractCurve(type, idObject, mode), + d(new VAbstractArcData(center, f1, f2)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VAbstractArc::VAbstractArc(const GOType &type, const QString &formulaLength, const VPointF ¢er, - qreal f1, const QString &formulaF1, quint32 idObject, Draw mode) - : VAbstractCurve(type, idObject, mode), d (new VAbstractArcData(formulaLength, center, f1, formulaF1)) -{} +VAbstractArc::VAbstractArc(const GOType &type, const QString &formulaLength, const VPointF ¢er, qreal f1, + const QString &formulaF1, quint32 idObject, Draw mode) + : VAbstractCurve(type, idObject, mode), + d(new VAbstractArcData(formulaLength, center, f1, formulaF1)) +{ +} //--------------------------------------------------------------------------------------------------------------------- VAbstractArc::VAbstractArc(const GOType &type, const VPointF ¢er, qreal f1, quint32 idObject, Draw mode) - : VAbstractCurve(type, idObject, mode), d (new VAbstractArcData(center, f1)) -{} + : VAbstractCurve(type, idObject, mode), + d(new VAbstractArcData(center, f1)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VAbstractArc::VAbstractArc(const VAbstractArc &arc) - : VAbstractCurve(arc), d (arc.d) -{} +VAbstractArc::VAbstractArc(const VAbstractArc &arc) = default; //--------------------------------------------------------------------------------------------------------------------- auto VAbstractArc::operator=(const VAbstractArc &arc) -> VAbstractArc & { - if ( &arc == this ) + if (&arc == this) { return *this; } @@ -80,13 +88,14 @@ auto VAbstractArc::operator=(const VAbstractArc &arc) -> VAbstractArc & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VAbstractArc::VAbstractArc(VAbstractArc &&arc) Q_DECL_NOTHROW - : VAbstractCurve(std::move(arc)), - d(std::move(arc.d)) -{} +VAbstractArc::VAbstractArc(VAbstractArc &&arc) noexcept + : VAbstractCurve(std::move(arc)), + d(std::move(arc.d)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -auto VAbstractArc::operator=(VAbstractArc &&arc) Q_DECL_NOTHROW -> VAbstractArc & +auto VAbstractArc::operator=(VAbstractArc &&arc) noexcept -> VAbstractArc & { VAbstractCurve::operator=(arc); std::swap(d, arc.d); @@ -95,8 +104,7 @@ auto VAbstractArc::operator=(VAbstractArc &&arc) Q_DECL_NOTHROW -> VAbstractArc #endif //--------------------------------------------------------------------------------------------------------------------- -VAbstractArc::~VAbstractArc() // NOLINT(hicpp-use-equals-default, modernize-use-equals-default) -{} +VAbstractArc::~VAbstractArc() = default; //--------------------------------------------------------------------------------------------------------------------- auto VAbstractArc::GetFormulaF1() const -> QString @@ -171,26 +179,26 @@ void VAbstractArc::setId(const quint32 &id) //--------------------------------------------------------------------------------------------------------------------- auto VAbstractArc::NameForHistory(const QString &toolName) const -> QString { - QString name = toolName + QString(" %1").arg(GetCenter().name()); + QString name = toolName + QStringLiteral(" %1").arg(GetCenter().name()); if (VAbstractCurve::id() != NULL_ID) { - name += QString("_%1").arg(VAbstractCurve::id()); + name += QStringLiteral("_%1").arg(VAbstractCurve::id()); } if (GetDuplicate() > 0) { - name += QString("_%1").arg(GetDuplicate()); + name += QStringLiteral("_%1").arg(GetDuplicate()); } QString alias; if (not GetAliasSuffix().isEmpty()) { - alias = QString("%1 %2").arg(toolName, GetAliasSuffix()); + alias = QStringLiteral("%1 %2").arg(toolName, GetAliasSuffix()); } - return not alias.isEmpty() ? QString("%1 (%2)").arg(alias, name) : name; + return not alias.isEmpty() ? QStringLiteral("%1 (%2)").arg(alias, name) : name; } //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vgeometry/vabstractarc.h b/src/libs/vgeometry/vabstractarc.h index 1268f07b5..44bdde5c8 100644 --- a/src/libs/vgeometry/vabstractarc.h +++ b/src/libs/vgeometry/vabstractarc.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTARC_H #define VABSTRACTARC_H -#include #include #include #include @@ -58,35 +57,37 @@ public: VAbstractArc(const VAbstractArc &arc); ~VAbstractArc() override; - auto operator= (const VAbstractArc &arc) -> VAbstractArc&; + auto operator=(const VAbstractArc &arc) -> VAbstractArc &; #ifdef Q_COMPILER_RVALUE_REFS - VAbstractArc(VAbstractArc &&arc) Q_DECL_NOTHROW; - auto operator=(VAbstractArc &&arc) Q_DECL_NOTHROW -> VAbstractArc &; + VAbstractArc(VAbstractArc &&arc) noexcept; + auto operator=(VAbstractArc &&arc) noexcept -> VAbstractArc &; #endif - auto GetFormulaF1 () const -> QString; - void SetFormulaF1 (const QString &formula, qreal value); - auto GetStartAngle () const -> qreal override; + auto GetFormulaF1() const -> QString; + void SetFormulaF1(const QString &formula, qreal value); + auto GetStartAngle() const -> qreal override; - auto GetFormulaF2 () const -> QString; - void SetFormulaF2 (const QString &formula, qreal value); - auto GetEndAngle () const -> qreal override; + auto GetFormulaF2() const -> QString; + void SetFormulaF2(const QString &formula, qreal value); + auto GetEndAngle() const -> qreal override; - auto GetCenter () const -> VPointF; - void SetCenter (const VPointF &point); + auto GetCenter() const -> VPointF; + void SetCenter(const VPointF &point); - auto GetFormulaLength () const -> QString; - void SetFormulaLength (const QString &formula, qreal value); + auto GetFormulaLength() const -> QString; + void SetFormulaLength(const QString &formula, qreal value); void setId(const quint32 &id) override; auto NameForHistory(const QString &toolName) const -> QString override; auto IsFlipped() const -> bool; auto AngleArc() const -> qreal; + protected: void SetFlipped(bool value); - virtual void FindF2(qreal length)=0; + virtual void FindF2(qreal length) = 0; void SetFormulaLength(const QString &formula); + private: QSharedDataPointer d; }; diff --git a/src/libs/vgeometry/vabstractarc_p.h b/src/libs/vgeometry/vabstractarc_p.h index 632af9e77..bebbb91db 100644 --- a/src/libs/vgeometry/vabstractarc_p.h +++ b/src/libs/vgeometry/vabstractarc_p.h @@ -42,109 +42,77 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VAbstractArcData final : public QSharedData { public: - VAbstractArcData(); + VAbstractArcData() = default; VAbstractArcData(const VPointF ¢er, qreal f1, const QString &formulaF1, qreal f2, const QString &formulaF2); VAbstractArcData(const QString &formulaLength, const VPointF ¢er, qreal f1, const QString &formulaF1); VAbstractArcData(const VPointF ¢er, qreal f1); VAbstractArcData(const VPointF ¢er, qreal f1, qreal f2); - VAbstractArcData(const VAbstractArcData &arc); - virtual ~VAbstractArcData(); + VAbstractArcData(const VAbstractArcData &arc) = default; + ~VAbstractArcData() = default; /** @brief f1 start angle in degree. */ - qreal f1; + qreal f1{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief formulaF1 formula for start angle. */ - QString formulaF1; + QString formulaF1{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief f2 end angle in degree. */ - qreal f2; + qreal f2{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief formulaF2 formula for end angle. */ - QString formulaF2; + QString formulaF2{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief center center point of arc. */ - VPointF center; + VPointF center{}; // NOLINT(misc-non-private-member-variables-in-classes) - bool isFlipped; + bool isFlipped{false}; // NOLINT(misc-non-private-member-variables-in-classes) - QString formulaLength; + QString formulaLength{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VAbstractArcData) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::VAbstractArcData() - : f1(0), - formulaF1(), - f2(0), - formulaF2(), - center(), - isFlipped(false), - formulaLength() -{} +inline VAbstractArcData::VAbstractArcData(const VPointF ¢er, qreal f1, const QString &formulaF1, qreal f2, + const QString &formulaF2) + : f1(f1), + formulaF1(formulaF1), + f2(f2), + formulaF2(formulaF2), + center(center) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::VAbstractArcData(const VPointF ¢er, qreal f1, const QString &formulaF1, qreal f2, - const QString &formulaF2) - : f1(f1), - formulaF1(formulaF1), - f2(f2), - formulaF2(formulaF2), - center(center), - isFlipped(false), - formulaLength() -{} +inline VAbstractArcData::VAbstractArcData(const QString &formulaLength, const VPointF ¢er, qreal f1, + const QString &formulaF1) + : f1(f1), + formulaF1(formulaF1), + formulaF2('0'), + center(center), + formulaLength(formulaLength) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::VAbstractArcData(const QString &formulaLength, const VPointF ¢er, qreal f1, - const QString &formulaF1) - : f1(f1), - formulaF1(formulaF1), - f2(0), - formulaF2('0'), - center(center), - isFlipped(false), - formulaLength(formulaLength) -{} +inline VAbstractArcData::VAbstractArcData(const VPointF ¢er, qreal f1) + : f1(f1), + formulaF1(QString::number(f1)), + formulaF2('0'), + center(center) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::VAbstractArcData(const VPointF ¢er, qreal f1) - : f1(f1), - formulaF1(QString().number(f1)), - f2(0), - formulaF2('0'), - center(center), - isFlipped(false), - formulaLength() -{} - -//--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::VAbstractArcData(const VPointF ¢er, qreal f1, qreal f2) - : f1(f1), - formulaF1(QString().number(f1)), - f2(f2), - formulaF2(QString().number(f2)), - center(center), - isFlipped(false), - formulaLength() -{} - -//--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::VAbstractArcData(const VAbstractArcData &arc) - : QSharedData(arc), - f1(arc.f1), - formulaF1(arc.formulaF1), - f2(arc.f2), - formulaF2(arc.formulaF2), - center(arc.center), - isFlipped(arc.isFlipped), - formulaLength(arc.formulaLength) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VAbstractArcData::~VAbstractArcData() -{} +inline VAbstractArcData::VAbstractArcData(const VPointF ¢er, qreal f1, qreal f2) + : f1(f1), + formulaF1(QString::number(f1)), + f2(f2), + formulaF2(QString::number(f2)), + center(center) +{ +} QT_WARNING_POP diff --git a/src/libs/vgeometry/vabstractbezier.h b/src/libs/vgeometry/vabstractbezier.h index b6fa9a70c..3a401ddb9 100644 --- a/src/libs/vgeometry/vabstractbezier.h +++ b/src/libs/vgeometry/vabstractbezier.h @@ -43,8 +43,8 @@ public: ~VAbstractBezier() override =default; #ifdef Q_COMPILER_RVALUE_REFS - VAbstractBezier(VAbstractBezier &&curve) Q_DECL_NOTHROW =default; - auto operator=(VAbstractBezier &&curve) Q_DECL_NOTHROW -> VAbstractBezier & =default; + VAbstractBezier(VAbstractBezier &&curve) noexcept =default; + auto operator=(VAbstractBezier &&curve) noexcept -> VAbstractBezier & =default; #endif virtual auto GetC1Length() const -> qreal =0; diff --git a/src/libs/vgeometry/vabstractcubicbezier.h b/src/libs/vgeometry/vabstractcubicbezier.h index c08e66d5c..47c9122f2 100644 --- a/src/libs/vgeometry/vabstractcubicbezier.h +++ b/src/libs/vgeometry/vabstractcubicbezier.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTCUBICBEZIER_H #define VABSTRACTCUBICBEZIER_H -#include #include #include #include @@ -49,18 +48,18 @@ public: explicit VAbstractCubicBezier(const GOType &type, const quint32 &idObject = NULL_ID, const Draw &mode = Draw::Calculation); VAbstractCubicBezier(const VAbstractCubicBezier &curve) = default; - auto operator= (const VAbstractCubicBezier &curve) -> VAbstractCubicBezier&; + auto operator=(const VAbstractCubicBezier &curve) -> VAbstractCubicBezier &; ~VAbstractCubicBezier() override = default; #ifdef Q_COMPILER_RVALUE_REFS - VAbstractCubicBezier(VAbstractCubicBezier &&curve) Q_DECL_NOTHROW =default; - auto operator=(VAbstractCubicBezier &&curve) Q_DECL_NOTHROW -> VAbstractCubicBezier & =default; + VAbstractCubicBezier(VAbstractCubicBezier &&curve) noexcept = default; + auto operator=(VAbstractCubicBezier &&curve) noexcept -> VAbstractCubicBezier & = default; #endif - virtual auto GetP1 () const -> VPointF =0; - virtual auto GetP2 () const -> VPointF =0; - virtual auto GetP3 () const -> VPointF =0; - virtual auto GetP4 () const -> VPointF =0; + virtual auto GetP1() const -> VPointF = 0; + virtual auto GetP2() const -> VPointF = 0; + virtual auto GetP3() const -> VPointF = 0; + virtual auto GetP4() const -> VPointF = 0; auto CutSpline(qreal length, QPointF &spl1p2, QPointF &spl1p3, QPointF &spl2p2, QPointF &spl2p3, const QString &pointName) const -> QPointF; @@ -74,14 +73,14 @@ protected: void CreateName() override; void CreateAlias() override; - static auto GetCubicBezierPoints(const QPointF &p1, const QPointF &p2, const QPointF &p3, - const QPointF &p4, qreal approximationScale) -> QVector; + static auto GetCubicBezierPoints(const QPointF &p1, const QPointF &p2, const QPointF &p3, const QPointF &p4, + qreal approximationScale) -> QVector; static auto LengthBezier(const QPointF &p1, const QPointF &p2, const QPointF &p3, const QPointF &p4, qreal approximationScale) -> qreal; - virtual auto GetControlPoint1() const -> QPointF =0; - virtual auto GetControlPoint2() const -> QPointF =0; - virtual auto GetRealLength() const -> qreal =0; + virtual auto GetControlPoint1() const -> QPointF = 0; + virtual auto GetControlPoint2() const -> QPointF = 0; + virtual auto GetRealLength() const -> qreal = 0; }; QT_WARNING_POP diff --git a/src/libs/vgeometry/vabstractcubicbezierpath.h b/src/libs/vgeometry/vabstractcubicbezierpath.h index 2ac105e48..567a7902e 100644 --- a/src/libs/vgeometry/vabstractcubicbezierpath.h +++ b/src/libs/vgeometry/vabstractcubicbezierpath.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTCUBICBEZIERPATH_H #define VABSTRACTCUBICBEZIERPATH_H -#include #include #include #include @@ -50,18 +49,24 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") class VAbstractCubicBezierPath : public VAbstractBezier { Q_DECLARE_TR_FUNCTIONS(VAbstractCubicBezierPath) // NOLINT + public: explicit VAbstractCubicBezierPath(const GOType &type, const quint32 &idObject = NULL_ID, const Draw &mode = Draw::Calculation); VAbstractCubicBezierPath(const VAbstractCubicBezierPath &curve) = default; - auto operator= (const VAbstractCubicBezierPath &curve) -> VAbstractCubicBezierPath&; + auto operator=(const VAbstractCubicBezierPath &curve) -> VAbstractCubicBezierPath &; ~VAbstractCubicBezierPath() override; - virtual auto CountSubSpl() const -> vsizetype =0; - virtual auto CountPoints() const -> vsizetype =0; - virtual void Clear() =0; - virtual auto GetSpline(vsizetype index) const -> VSpline =0; - virtual auto GetSplinePath() const -> QVector =0; +#ifdef Q_COMPILER_RVALUE_REFS + VAbstractCubicBezierPath(VAbstractCubicBezierPath &&curve) noexcept = default; + auto operator=(VAbstractCubicBezierPath &&curve) noexcept -> VAbstractCubicBezierPath & = default; +#endif + + virtual auto CountSubSpl() const -> vsizetype = 0; + virtual auto CountPoints() const -> vsizetype = 0; + virtual void Clear() = 0; + virtual auto GetSpline(vsizetype index) const -> VSpline = 0; + virtual auto GetSplinePath() const -> QVector = 0; auto GetPath() const -> QPainterPath override; auto GetPoints() const -> QVector override; @@ -80,8 +85,8 @@ protected: void CreateName() override; void CreateAlias() override; - virtual auto FirstPoint() const -> VPointF =0; - virtual auto LastPoint() const -> VPointF =0; + virtual auto FirstPoint() const -> VPointF = 0; + virtual auto LastPoint() const -> VPointF = 0; }; QT_WARNING_POP diff --git a/src/libs/vgeometry/vabstractcurve.cpp b/src/libs/vgeometry/vabstractcurve.cpp index 63c15e4c9..07144f142 100644 --- a/src/libs/vgeometry/vabstractcurve.cpp +++ b/src/libs/vgeometry/vabstractcurve.cpp @@ -69,12 +69,12 @@ auto VAbstractCurve::operator=(const VAbstractCurve &curve) -> VAbstractCurve & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VAbstractCurve::VAbstractCurve(VAbstractCurve &&curve) Q_DECL_NOTHROW +VAbstractCurve::VAbstractCurve(VAbstractCurve &&curve) noexcept :VGObject(std::move(curve)), d (std::move(curve.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VAbstractCurve::operator=(VAbstractCurve &&curve) Q_DECL_NOTHROW -> VAbstractCurve & +auto VAbstractCurve::operator=(VAbstractCurve &&curve) noexcept -> VAbstractCurve & { VGObject::operator=(curve); std::swap(d, curve.d); diff --git a/src/libs/vgeometry/vabstractcurve.h b/src/libs/vgeometry/vabstractcurve.h index 594b60424..f6d72dbaa 100644 --- a/src/libs/vgeometry/vabstractcurve.h +++ b/src/libs/vgeometry/vabstractcurve.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTCURVE_H #define VABSTRACTCURVE_H -#include #include #include #include @@ -37,9 +36,9 @@ #include #include +#include "../vmisc/typedef.h" #include "vgeometrydef.h" #include "vgobject.h" -#include "../vmisc/typedef.h" using DirectionArrow = QPair; @@ -50,7 +49,7 @@ QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") -class VAbstractCurve :public VGObject +class VAbstractCurve : public VGObject { public: explicit VAbstractCurve(const GOType &type, const quint32 &idObject = NULL_ID, @@ -58,20 +57,20 @@ public: VAbstractCurve(const VAbstractCurve &curve); ~VAbstractCurve() override; - auto operator= (const VAbstractCurve &curve) -> VAbstractCurve&; + auto operator=(const VAbstractCurve &curve) -> VAbstractCurve &; #ifdef Q_COMPILER_RVALUE_REFS - VAbstractCurve(VAbstractCurve &&curve) Q_DECL_NOTHROW; - auto operator=(VAbstractCurve &&curve) Q_DECL_NOTHROW -> VAbstractCurve &; + VAbstractCurve(VAbstractCurve &&curve) noexcept; + auto operator=(VAbstractCurve &&curve) noexcept -> VAbstractCurve &; #endif - virtual auto GetPoints() const -> QVector =0; - static auto GetSegmentPoints(const QVector &points, const QPointF &begin, const QPointF &end, - bool reverse, QString &error) -> QVector; + virtual auto GetPoints() const -> QVector = 0; + static auto GetSegmentPoints(const QVector &points, const QPointF &begin, const QPointF &end, bool reverse, + QString &error) -> QVector; auto GetSegmentPoints(const QPointF &begin, const QPointF &end, bool reverse, const QString &piece = QString()) const -> QVector; virtual auto GetPath() const -> QPainterPath; - virtual auto GetLength() const -> qreal =0; + virtual auto GetLength() const -> qreal = 0; auto GetLengthByPoint(const QPointF &point) const -> qreal; virtual auto IntersectLine(const QLineF &line) const -> QVector; virtual auto IsIntersectLine(const QLineF &line) const -> bool; @@ -79,13 +78,13 @@ public: static auto IsPointOnCurve(const QVector &points, const QPointF &p) -> bool; auto IsPointOnCurve(const QPointF &p) const -> bool; - static auto SubdividePath(const QVector &points, QPointF p, QVector &sub1, - QVector &sub2) -> bool; + static auto SubdividePath(const QVector &points, QPointF p, QVector &sub1, QVector &sub2) + -> bool; auto ClosestPoint(QPointF scenePoint) const -> QPointF; - virtual auto GetStartAngle () const -> qreal=0; - virtual auto GetEndAngle () const -> qreal=0; + virtual auto GetStartAngle() const -> qreal = 0; + virtual auto GetEndAngle() const -> qreal = 0; auto GetDuplicate() const -> quint32; void SetDuplicate(quint32 number); @@ -105,7 +104,7 @@ public: static auto CurveIntersectAxis(const QPointF &point, qreal angle, const QVector &curvePoints, QPointF *intersectionPoint) -> bool; - virtual auto NameForHistory(const QString &toolName) const -> QString=0; + virtual auto NameForHistory(const QString &toolName) const -> QString = 0; virtual auto DirectionArrows() const -> QVector; static auto ShowDirection(const QVector &arrows, qreal width) -> QPainterPath; @@ -116,8 +115,9 @@ public: static constexpr qreal minLength = MmToPixel(1.); protected: - virtual void CreateName() =0; - virtual void CreateAlias() =0; + virtual void CreateName() = 0; + virtual void CreateAlias() = 0; + private: QSharedDataPointer d; diff --git a/src/libs/vgeometry/vabstractcurve_p.h b/src/libs/vgeometry/vabstractcurve_p.h index 149374f32..2217b9a36 100644 --- a/src/libs/vgeometry/vabstractcurve_p.h +++ b/src/libs/vgeometry/vabstractcurve_p.h @@ -43,39 +43,22 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VAbstractCurveData final : public QSharedData { public: - - VAbstractCurveData () - : duplicate(0), - color(ColorBlack), - penStyle(TypeLineLine), - approximationScale(defCurveApproximationScale) - {} - - VAbstractCurveData(const VAbstractCurveData &curve) - : QSharedData(curve), - duplicate(curve.duplicate), - color(curve.color), - penStyle(curve.penStyle), - approximationScale(curve.approximationScale) - {} - - virtual ~VAbstractCurveData(); + VAbstractCurveData() = default; + VAbstractCurveData(const VAbstractCurveData &curve) = default; + ~VAbstractCurveData() = default; /** @brief duplicate helps create unique name for curves that connects the same start and finish points. */ - quint32 duplicate; + quint32 duplicate{0}; // NOLINT(misc-non-private-member-variables-in-classes) - QString color; - QString penStyle; + QString color{ColorBlack}; // NOLINT(misc-non-private-member-variables-in-classes) + QString penStyle{TypeLineLine}; // NOLINT(misc-non-private-member-variables-in-classes) - qreal approximationScale; + qreal approximationScale{defCurveApproximationScale}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VAbstractCurveData) // NOLINT }; -VAbstractCurveData::~VAbstractCurveData() -{} - QT_WARNING_POP #endif // VABSTRACTCURVE_P_H diff --git a/src/libs/vgeometry/varc.cpp b/src/libs/vgeometry/varc.cpp index 941a73ba7..31e85b494 100644 --- a/src/libs/vgeometry/varc.cpp +++ b/src/libs/vgeometry/varc.cpp @@ -122,12 +122,12 @@ auto VArc::operator =(const VArc &arc) -> VArc & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VArc::VArc(VArc &&arc) Q_DECL_NOTHROW +VArc::VArc(VArc &&arc) noexcept : VAbstractArc(std::move(arc)), d (std::move(arc.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VArc::operator=(VArc &&arc) Q_DECL_NOTHROW -> VArc & +auto VArc::operator=(VArc &&arc) noexcept -> VArc & { VAbstractArc::operator=(arc); std::swap(d, arc.d); diff --git a/src/libs/vgeometry/varc.h b/src/libs/vgeometry/varc.h index 7de41967d..1ffe6f30c 100644 --- a/src/libs/vgeometry/varc.h +++ b/src/libs/vgeometry/varc.h @@ -29,7 +29,6 @@ #ifndef VARC_H #define VARC_H -#include #include #include #include @@ -39,7 +38,6 @@ #include #include "vabstractarc.h" -#include "vgeometrydef.h" #include "vpointf.h" class VArcData; @@ -50,13 +48,14 @@ class VArcData; class VArc final : public VAbstractArc { Q_DECLARE_TR_FUNCTIONS(VArc) // NOLINT + public: VArc(); VArc(const VPointF ¢er, qreal radius, const QString &formulaRadius, qreal f1, const QString &formulaF1, qreal f2, const QString &formulaF2, quint32 idObject = 0, Draw mode = Draw::Calculation); VArc(const VPointF ¢er, qreal radius, qreal f1, qreal f2); VArc(qreal length, const QString &formulaLength, const VPointF ¢er, qreal radius, const QString &formulaRadius, - qreal f1, const QString &formulaF1, quint32 idObject = 0, Draw mode = Draw::Calculation); + qreal f1, const QString &formulaF1, quint32 idObject = 0, Draw mode = Draw::Calculation); VArc(qreal length, const VPointF ¢er, qreal radius, qreal f1); VArc(const VArc &arc); auto Rotate(const QPointF &originPoint, qreal degrees, const QString &prefix = QString()) const -> VArc; @@ -64,10 +63,10 @@ public: auto Move(qreal length, qreal angle, const QString &prefix = QString()) const -> VArc; ~VArc() override; - auto operator= (const VArc &arc) -> VArc&; + auto operator=(const VArc &arc) -> VArc &; #ifdef Q_COMPILER_RVALUE_REFS - VArc(VArc &&arc) Q_DECL_NOTHROW; - auto operator=(VArc &&arc) Q_DECL_NOTHROW -> VArc &; + VArc(VArc &&arc) noexcept; + auto operator=(VArc &&arc) noexcept -> VArc &; #endif auto GetFormulaRadius() const -> QString; @@ -83,10 +82,12 @@ public: auto CutArc(qreal length, VArc &arc1, VArc &arc2, const QString &pointName) const -> QPointF; auto CutArc(qreal length, const QString &pointName) const -> QPointF; + protected: void CreateName() override; void CreateAlias() override; void FindF2(qreal length) override; + private: QSharedDataPointer d; diff --git a/src/libs/vgeometry/varc_p.h b/src/libs/vgeometry/varc_p.h index 17d2ef465..0bb327fa7 100644 --- a/src/libs/vgeometry/varc_p.h +++ b/src/libs/vgeometry/varc_p.h @@ -43,50 +43,35 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VArcData final : public QSharedData { public: - VArcData(); + VArcData() = default; VArcData(qreal radius, const QString &formulaRadius); explicit VArcData(qreal radius); - VArcData(const VArcData &arc); - virtual ~VArcData(); + VArcData(const VArcData &arc) = default; + ~VArcData() = default; /** @brief radius arc radius. */ - qreal radius; + qreal radius{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief formulaRadius formula for arc radius. */ - QString formulaRadius; + QString formulaRadius{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VArcData) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -VArcData::VArcData() - : radius(0), - formulaRadius(QString()) -{} +inline VArcData::VArcData(qreal radius, const QString &formulaRadius) + : radius(radius), + formulaRadius(formulaRadius) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VArcData::VArcData(qreal radius, const QString &formulaRadius) - : radius(radius), - formulaRadius(formulaRadius) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VArcData::VArcData(qreal radius) - : radius(radius), - formulaRadius(QString().number(radius)) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VArcData::VArcData(const VArcData &arc) - : QSharedData(arc), - radius(arc.radius), - formulaRadius(arc.formulaRadius) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VArcData::~VArcData() -{} +inline VArcData::VArcData(qreal radius) + : radius(radius), + formulaRadius(QString::number(radius)) +{ +} QT_WARNING_POP diff --git a/src/libs/vgeometry/vcubicbezier.cpp b/src/libs/vgeometry/vcubicbezier.cpp index 3b67cabeb..dccdd016e 100644 --- a/src/libs/vgeometry/vcubicbezier.cpp +++ b/src/libs/vgeometry/vcubicbezier.cpp @@ -66,12 +66,12 @@ auto VCubicBezier::operator=(const VCubicBezier &curve) -> VCubicBezier & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VCubicBezier::VCubicBezier(VCubicBezier &&curve) Q_DECL_NOTHROW +VCubicBezier::VCubicBezier(VCubicBezier &&curve) noexcept : VAbstractCubicBezier(std::move(curve)), d(std::move(curve.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VCubicBezier::operator=(VCubicBezier &&curve) Q_DECL_NOTHROW->VCubicBezier & +auto VCubicBezier::operator=(VCubicBezier &&curve) noexcept->VCubicBezier & { VAbstractCubicBezier::operator=(curve); std::swap(d, curve.d); diff --git a/src/libs/vgeometry/vcubicbezier.h b/src/libs/vgeometry/vcubicbezier.h index 9468be2f6..367a6db82 100644 --- a/src/libs/vgeometry/vcubicbezier.h +++ b/src/libs/vgeometry/vcubicbezier.h @@ -29,7 +29,6 @@ #ifndef VCUBICBEZIER_H #define VCUBICBEZIER_H -#include #include #include #include @@ -38,7 +37,6 @@ #include #include "vabstractcubicbezier.h" -#include "vgeometrydef.h" #include "vpointf.h" class VCubicBezierData; @@ -57,21 +55,21 @@ public: auto operator=(const VCubicBezier &curve) -> VCubicBezier &; #ifdef Q_COMPILER_RVALUE_REFS - VCubicBezier(VCubicBezier &&curve) Q_DECL_NOTHROW; - auto operator=(VCubicBezier &&curve) Q_DECL_NOTHROW->VCubicBezier &; + VCubicBezier(VCubicBezier &&curve) noexcept; + auto operator=(VCubicBezier &&curve) noexcept -> VCubicBezier &; #endif virtual auto GetP1() const -> VPointF override; - void SetP1(const VPointF &p); + void SetP1(const VPointF &p); virtual auto GetP2() const -> VPointF override; - void SetP2(const VPointF &p); + void SetP2(const VPointF &p); virtual auto GetP3() const -> VPointF override; - void SetP3(const VPointF &p); + void SetP3(const VPointF &p); virtual auto GetP4() const -> VPointF override; - void SetP4(const VPointF &p); + void SetP4(const VPointF &p); virtual auto GetStartAngle() const -> qreal override; virtual auto GetEndAngle() const -> qreal override; diff --git a/src/libs/vgeometry/vcubicbezier_p.h b/src/libs/vgeometry/vcubicbezier_p.h index ed33b8e97..28642b209 100644 --- a/src/libs/vgeometry/vcubicbezier_p.h +++ b/src/libs/vgeometry/vcubicbezier_p.h @@ -29,8 +29,8 @@ #ifndef VCUBICBEZIER_P_H #define VCUBICBEZIER_P_H -#include #include +#include #include "vpointf.h" #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) @@ -44,57 +44,33 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VCubicBezierData final : public QSharedData { public: - VCubicBezierData(); - VCubicBezierData(const VCubicBezierData &curve); + VCubicBezierData() = default; + VCubicBezierData(const VCubicBezierData &curve) = default; VCubicBezierData(const VPointF &p1, const VPointF &p2, const VPointF &p3, const VPointF &p4); - virtual ~VCubicBezierData(); + ~VCubicBezierData() = default; /** @brief p1 first spline point. */ - VPointF p1; + VPointF p1{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief p2 fourth spline point. */ - VPointF p2; + VPointF p2{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief p3 fourth spline point. */ - VPointF p3; + VPointF p3{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief p4 fourth spline point. */ - VPointF p4; + VPointF p4{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VCubicBezierData) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -VCubicBezierData::VCubicBezierData() - : p1(), - p2(), - p3(), - p4() -{ -} - -//--------------------------------------------------------------------------------------------------------------------- -VCubicBezierData::VCubicBezierData(const VCubicBezierData &curve) - : QSharedData(curve), - p1(curve.p1), - p2(curve.p2), - p3(curve.p3), - p4(curve.p4) -{ -} - -//--------------------------------------------------------------------------------------------------------------------- -VCubicBezierData::VCubicBezierData(const VPointF &p1, const VPointF &p2, const VPointF &p3, const VPointF &p4) - : p1(p1), - p2(p2), - p3(p3), - p4(p4) -{ -} - -//--------------------------------------------------------------------------------------------------------------------- -VCubicBezierData::~VCubicBezierData() +inline VCubicBezierData::VCubicBezierData(const VPointF &p1, const VPointF &p2, const VPointF &p3, const VPointF &p4) + : p1(p1), + p2(p2), + p3(p3), + p4(p4) { } diff --git a/src/libs/vgeometry/vcubicbezierpath.cpp b/src/libs/vgeometry/vcubicbezierpath.cpp index 860abd13e..cc04c90e0 100644 --- a/src/libs/vgeometry/vcubicbezierpath.cpp +++ b/src/libs/vgeometry/vcubicbezierpath.cpp @@ -32,31 +32,26 @@ #include #include "../ifc/exception/vexception.h" -#include "../vmisc/vmath.h" +#include "../vmisc/compatibility.h" #include "vabstractcurve.h" #include "vcubicbezierpath_p.h" #include "vspline.h" #include "vsplinepoint.h" -#include "../vmisc/compatibility.h" //--------------------------------------------------------------------------------------------------------------------- VCubicBezierPath::VCubicBezierPath(quint32 idObject, Draw mode) - : VAbstractCubicBezierPath(GOType::CubicBezierPath, idObject, mode), - d(new VCubicBezierPathData()) + : VAbstractCubicBezierPath(GOType::CubicBezierPath, idObject, mode), + d(new VCubicBezierPathData()) { } //--------------------------------------------------------------------------------------------------------------------- -VCubicBezierPath::VCubicBezierPath(const VCubicBezierPath &curve) - : VAbstractCubicBezierPath(curve), - d(curve.d) -{ -} +VCubicBezierPath::VCubicBezierPath(const VCubicBezierPath &curve) = default; //--------------------------------------------------------------------------------------------------------------------- VCubicBezierPath::VCubicBezierPath(const QVector &points, quint32 idObject, Draw mode) - : VAbstractCubicBezierPath(GOType::CubicBezierPath, idObject, mode), - d(new VCubicBezierPathData()) + : VAbstractCubicBezierPath(GOType::CubicBezierPath, idObject, mode), + d(new VCubicBezierPathData()) { if (points.isEmpty()) { @@ -70,7 +65,7 @@ VCubicBezierPath::VCubicBezierPath(const QVector &points, quint32 idObj //--------------------------------------------------------------------------------------------------------------------- auto VCubicBezierPath::operator=(const VCubicBezierPath &curve) -> VCubicBezierPath & { - if ( &curve == this ) + if (&curve == this) { return *this; } @@ -81,13 +76,14 @@ auto VCubicBezierPath::operator=(const VCubicBezierPath &curve) -> VCubicBezierP #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VCubicBezierPath::VCubicBezierPath(VCubicBezierPath &&curve) Q_DECL_NOTHROW - : VAbstractCubicBezierPath(std::move(curve)), - d(std::move(curve.d)) -{} +VCubicBezierPath::VCubicBezierPath(VCubicBezierPath &&curve) noexcept + : VAbstractCubicBezierPath(std::move(curve)), + d(std::move(curve.d)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -auto VCubicBezierPath::operator=(VCubicBezierPath &&curve) Q_DECL_NOTHROW->VCubicBezierPath & +auto VCubicBezierPath::operator=(VCubicBezierPath &&curve) noexcept -> VCubicBezierPath & { VAbstractCubicBezierPath::operator=(curve); std::swap(d, curve.d); @@ -163,9 +159,7 @@ auto VCubicBezierPath::Move(qreal length, qreal angle, const QString &prefix) co } //--------------------------------------------------------------------------------------------------------------------- -VCubicBezierPath::~VCubicBezierPath() -{ -} +VCubicBezierPath::~VCubicBezierPath() = default; //--------------------------------------------------------------------------------------------------------------------- auto VCubicBezierPath::operator[](vsizetype indx) -> VPointF & @@ -221,7 +215,7 @@ auto VCubicBezierPath::GetSpline(vsizetype index) const -> VSpline const vsizetype base = SubSplOffset(index); // Correction the first control point of each next spline curve except for the first. - QPointF p2 = static_cast(d->path.at(base + 1)); + auto p2 = static_cast(d->path.at(base + 1)); if (base + 1 > 1) { const QPointF b = static_cast(d->path.at(base)); @@ -283,18 +277,18 @@ auto VCubicBezierPath::GetC2Length() const -> qreal auto VCubicBezierPath::GetSplinePath() const -> QVector { const vsizetype size = CountSubSpl(); - QVector splPoints(size+1); + QVector splPoints(size + 1); for (qint32 i = 1; i <= size; ++i) { const VSpline spl = GetSpline(i); { - VSplinePoint p = splPoints.at(i-1); + VSplinePoint p = splPoints.at(i - 1); p.SetP(spl.GetP1()); p.SetAngle2(spl.GetStartAngle(), spl.GetStartAngleFormula()); p.SetLength2(spl.GetC1Length(), spl.GetC1LengthFormula()); - splPoints[i-1] = p; + splPoints[i - 1] = p; } { @@ -366,7 +360,7 @@ auto VCubicBezierPath::LastPoint() const -> VPointF const vsizetype count = CountSubSpl(); if (count >= 1) { - return d->path.at(SubSplOffset(count) + 3);// Take last point of the last real spline + return d->path.at(SubSplOffset(count) + 3); // Take last point of the last real spline } return {}; diff --git a/src/libs/vgeometry/vcubicbezierpath.h b/src/libs/vgeometry/vcubicbezierpath.h index 594380027..7f8f89254 100644 --- a/src/libs/vgeometry/vcubicbezierpath.h +++ b/src/libs/vgeometry/vcubicbezierpath.h @@ -29,7 +29,6 @@ #ifndef VCUBICBEZIERPATH_H #define VCUBICBEZIERPATH_H -#include #include #include #include @@ -39,7 +38,6 @@ #include #include "vabstractcubicbezierpath.h" -#include "vgeometrydef.h" #include "vpointf.h" class VCubicBezierPathData; @@ -47,6 +45,7 @@ class VCubicBezierPathData; class VCubicBezierPath final : public VAbstractCubicBezierPath { Q_DECLARE_TR_FUNCTIONS(VCubicBezierPath) // NOLINT + public: explicit VCubicBezierPath(quint32 idObject = 0, Draw mode = Draw::Calculation); VCubicBezierPath(const VCubicBezierPath &curve); @@ -58,19 +57,19 @@ public: auto operator=(const VCubicBezierPath &curve) -> VCubicBezierPath &; #ifdef Q_COMPILER_RVALUE_REFS - VCubicBezierPath(VCubicBezierPath &&curve) Q_DECL_NOTHROW; - auto operator=(VCubicBezierPath &&curve) Q_DECL_NOTHROW->VCubicBezierPath &; + VCubicBezierPath(VCubicBezierPath &&curve) noexcept; + auto operator=(VCubicBezierPath &&curve) noexcept -> VCubicBezierPath &; #endif auto operator[](vsizetype indx) -> VPointF &; auto at(vsizetype indx) const -> const VPointF &; - void append(const VPointF &point); + void append(const VPointF &point); virtual auto CountSubSpl() const -> vsizetype override; virtual auto CountPoints() const -> vsizetype override; - virtual void Clear() override; + virtual void Clear() override; virtual auto GetSpline(vsizetype index) const -> VSpline override; virtual auto GetStartAngle() const -> qreal override; virtual auto GetEndAngle() const -> qreal override; diff --git a/src/libs/vgeometry/vcubicbezierpath_p.h b/src/libs/vgeometry/vcubicbezierpath_p.h index 88ae1be7e..d82287825 100644 --- a/src/libs/vgeometry/vcubicbezierpath_p.h +++ b/src/libs/vgeometry/vcubicbezierpath_p.h @@ -43,28 +43,17 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VCubicBezierPathData final : public QSharedData { public: - - VCubicBezierPathData() - : path() - {} - - VCubicBezierPathData(const VCubicBezierPathData &splPath) - : QSharedData(splPath), - path(splPath.path) - {} - - virtual ~VCubicBezierPathData(); + VCubicBezierPathData() = default; + VCubicBezierPathData(const VCubicBezierPathData &splPath) = default; + ~VCubicBezierPathData() = default; /** @brief path list of points. */ - QVector path; + QVector path{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VCubicBezierPathData) // NOLINT }; -VCubicBezierPathData::~VCubicBezierPathData() -{} - QT_WARNING_POP #endif // VCUBICBEZIERPATH_P_H diff --git a/src/libs/vgeometry/vellipticalarc.cpp b/src/libs/vgeometry/vellipticalarc.cpp index 2aa36f1aa..a6becdafc 100644 --- a/src/libs/vgeometry/vellipticalarc.cpp +++ b/src/libs/vgeometry/vellipticalarc.cpp @@ -315,13 +315,13 @@ auto VEllipticalArc::operator =(const VEllipticalArc &arc) -> VEllipticalArc & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VEllipticalArc::VEllipticalArc(VEllipticalArc &&arc) Q_DECL_NOTHROW +VEllipticalArc::VEllipticalArc(VEllipticalArc &&arc) noexcept : VAbstractArc(std::move(arc)), d(std::move(arc.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VEllipticalArc::operator=(VEllipticalArc &&arc) Q_DECL_NOTHROW -> VEllipticalArc & +auto VEllipticalArc::operator=(VEllipticalArc &&arc) noexcept -> VEllipticalArc & { VAbstractArc::operator=(arc); std::swap(d, arc.d); diff --git a/src/libs/vgeometry/vellipticalarc.h b/src/libs/vgeometry/vellipticalarc.h index c69148e61..f72ba6e13 100644 --- a/src/libs/vgeometry/vellipticalarc.h +++ b/src/libs/vgeometry/vellipticalarc.h @@ -29,7 +29,6 @@ #ifndef VELLIPTICALARC_H #define VELLIPTICALARC_H -#include #include #include #include @@ -47,6 +46,7 @@ class VEllipticalArcData; class VEllipticalArc final : public VAbstractArc { Q_DECLARE_TR_FUNCTIONS(VEllipticalArc) // NOLINT + public: VEllipticalArc(); VEllipticalArc(const VPointF ¢er, qreal radius1, qreal radius2, const QString &formulaRadius1, @@ -67,10 +67,10 @@ public: ~VEllipticalArc() override; - auto operator= (const VEllipticalArc &arc) -> VEllipticalArc&; + auto operator=(const VEllipticalArc &arc) -> VEllipticalArc &; #ifdef Q_COMPILER_RVALUE_REFS - VEllipticalArc(VEllipticalArc &&arc) Q_DECL_NOTHROW; - auto operator=(VEllipticalArc &&arc) Q_DECL_NOTHROW -> VEllipticalArc &; + VEllipticalArc(VEllipticalArc &&arc) noexcept; + auto operator=(VEllipticalArc &&arc) noexcept -> VEllipticalArc &; #endif auto GetFormulaRotationAngle() const -> QString; @@ -101,15 +101,17 @@ public: auto GetStartAngle() const -> qreal override; auto GetEndAngle() const -> qreal override; - auto CutArc (const qreal &length, VEllipticalArc &arc1, VEllipticalArc &arc2, - const QString &pointName) const -> QPointF; - auto CutArc (const qreal &length, const QString &pointName) const -> QPointF; + auto CutArc(const qreal &length, VEllipticalArc &arc1, VEllipticalArc &arc2, const QString &pointName) const + -> QPointF; + auto CutArc(const qreal &length, const QString &pointName) const -> QPointF; static auto OptimizeAngle(qreal angle) -> qreal; + protected: void CreateName() override; void CreateAlias() override; void FindF2(qreal length) override; + private: QSharedDataPointer d; @@ -118,13 +120,13 @@ private: auto ArcPoints(QVector points) const -> QVector; }; -Q_DECLARE_METATYPE(VEllipticalArc) // NOLINT +Q_DECLARE_METATYPE(VEllipticalArc) // NOLINT Q_DECLARE_TYPEINFO(VEllipticalArc, Q_MOVABLE_TYPE); // NOLINT //--------------------------------------------------------------------------------------------------------------------- inline auto VEllipticalArc::OptimizeAngle(qreal angle) -> qreal { - return angle - 360.*qFloor(angle/360.); + return angle - 360. * qFloor(angle / 360.); } #endif // VELLIPTICALARC_H diff --git a/src/libs/vgeometry/vellipticalarc_p.h b/src/libs/vgeometry/vellipticalarc_p.h index 9d0ddca18..028eef9c5 100644 --- a/src/libs/vgeometry/vellipticalarc_p.h +++ b/src/libs/vgeometry/vellipticalarc_p.h @@ -15,84 +15,55 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VEllipticalArcData final : public QSharedData { public: - VEllipticalArcData (); - VEllipticalArcData (qreal radius1, qreal radius2, const QString &formulaRadius1, const QString &formulaRadius2, - qreal rotationAngle, const QString &formulaRotationAngle); + VEllipticalArcData() = default; + VEllipticalArcData(qreal radius1, qreal radius2, const QString &formulaRadius1, const QString &formulaRadius2, + qreal rotationAngle, const QString &formulaRotationAngle); VEllipticalArcData(qreal radius1, qreal radius2, qreal rotationAngle); - VEllipticalArcData(const VEllipticalArcData &arc); - - virtual ~VEllipticalArcData(); + VEllipticalArcData(const VEllipticalArcData &arc) = default; + ~VEllipticalArcData() = default; /** @brief radius1 elliptical arc major radius. */ - qreal radius1; + qreal radius1{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief radius2 elliptical arc minor radius. */ - qreal radius2; + qreal radius2{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief formulaRadius1 formula for elliptical arc major radius. */ - QString formulaRadius1; + QString formulaRadius1{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief formulaRadius2 formula for elliptical arc minor radius. */ - QString formulaRadius2; + QString formulaRadius2{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief rotationAngle in degree. */ - qreal rotationAngle; + qreal rotationAngle{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief formulaRotationAngle formula for rotationAngle. */ - QString formulaRotationAngle; - QTransform m_transform; + QString formulaRotationAngle{}; // NOLINT(misc-non-private-member-variables-in-classes) + QTransform m_transform{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VEllipticalArcData) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -VEllipticalArcData::VEllipticalArcData() - : radius1(0), - radius2(0), - formulaRadius1(), - formulaRadius2(), - rotationAngle(0), - formulaRotationAngle(), - m_transform() -{} +inline VEllipticalArcData::VEllipticalArcData(qreal radius1, qreal radius2, const QString &formulaRadius1, + const QString &formulaRadius2, qreal rotationAngle, + const QString &formulaRotationAngle) + : radius1(radius1), + radius2(radius2), + formulaRadius1(formulaRadius1), + formulaRadius2(formulaRadius2), + rotationAngle(rotationAngle), + formulaRotationAngle(formulaRotationAngle) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VEllipticalArcData::VEllipticalArcData(qreal radius1, qreal radius2, const QString &formulaRadius1, - const QString &formulaRadius2, qreal rotationAngle, - const QString &formulaRotationAngle) - : radius1(radius1), - radius2(radius2), - formulaRadius1(formulaRadius1), - formulaRadius2(formulaRadius2), - rotationAngle(rotationAngle), - formulaRotationAngle(formulaRotationAngle), - m_transform() -{} - -//--------------------------------------------------------------------------------------------------------------------- -VEllipticalArcData::VEllipticalArcData(qreal radius1, qreal radius2, qreal rotationAngle) - : radius1(radius1), - radius2(radius2), - formulaRadius1(QString().number(radius1)), - formulaRadius2(QString().number(radius2)), - rotationAngle(rotationAngle), - formulaRotationAngle(QString().number(rotationAngle)), - m_transform() -{} - -//--------------------------------------------------------------------------------------------------------------------- -VEllipticalArcData::VEllipticalArcData(const VEllipticalArcData &arc) - : QSharedData(arc), - radius1(arc.radius1), - radius2(arc.radius2), - formulaRadius1(arc.formulaRadius1), - formulaRadius2(arc.formulaRadius2), - rotationAngle(arc.rotationAngle), - formulaRotationAngle(arc.formulaRotationAngle), - m_transform(arc.m_transform) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VEllipticalArcData::~VEllipticalArcData() -{} +inline VEllipticalArcData::VEllipticalArcData(qreal radius1, qreal radius2, qreal rotationAngle) + : radius1(radius1), + radius2(radius2), + formulaRadius1(QString::number(radius1)), + formulaRadius2(QString::number(radius2)), + rotationAngle(rotationAngle), + formulaRotationAngle(QString::number(rotationAngle)) +{ +} QT_WARNING_POP #endif // VELLIPTICALARC_P - diff --git a/src/libs/vgeometry/vgobject.h b/src/libs/vgeometry/vgobject.h index b0afe9cd6..96c7f382c 100644 --- a/src/libs/vgeometry/vgobject.h +++ b/src/libs/vgeometry/vgobject.h @@ -64,8 +64,8 @@ public: auto operator= (const VGObject &obj) -> VGObject&; #ifdef Q_COMPILER_RVALUE_REFS - VGObject(VGObject &&obj) Q_DECL_NOTHROW; - auto operator=(VGObject &&obj) Q_DECL_NOTHROW -> VGObject &; + VGObject(VGObject &&obj) noexcept; + auto operator=(VGObject &&obj) noexcept -> VGObject &; #endif auto getIdObject() const -> quint32; diff --git a/src/libs/vgeometry/vgobject_p.h b/src/libs/vgeometry/vgobject_p.h index 7f0a66e28..54e9e2958 100644 --- a/src/libs/vgeometry/vgobject_p.h +++ b/src/libs/vgeometry/vgobject_p.h @@ -29,8 +29,8 @@ #ifndef VGOBJECT_P_H #define VGOBJECT_P_H -#include #include "vgeometrydef.h" +#include #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) @@ -45,20 +45,15 @@ class VGObjectData final : public QSharedData { public: VGObjectData() = default; - VGObjectData(const GOType &type, const quint32 &idObject, const Draw &mode) - :type(type), - idObject(idObject), - mode(mode) - {} - + VGObjectData(const GOType &type, const quint32 &idObject, const Draw &mode); VGObjectData(const VGObjectData &obj) = default; - virtual ~VGObjectData() = default; + ~VGObjectData() = default; /** @brief _id id in container. Ned for arcs, spline and spline paths. */ quint32 _id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief type type of graphical object */ - GOType type{GOType::Unknown}; // NOLINT(misc-non-private-member-variables-in-classes) + GOType type{GOType::Unknown}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief idObject id of parent object. */ quint32 idObject{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) @@ -67,15 +62,23 @@ public: QString _name{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief mode object created in calculation or drawing mode */ - Draw mode{Draw::Calculation}; // NOLINT(misc-non-private-member-variables-in-classes) + Draw mode{Draw::Calculation}; // NOLINT(misc-non-private-member-variables-in-classes) - QString m_alias{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_alias{}; // NOLINT(misc-non-private-member-variables-in-classes) QString m_aliasSuffix{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VGObjectData) // NOLINT }; +//--------------------------------------------------------------------------------------------------------------------- +inline VGObjectData::VGObjectData(const GOType &type, const quint32 &idObject, const Draw &mode) + : type(type), + idObject(idObject), + mode(mode) +{ +} + QT_WARNING_POP #endif // VGOBJECT_P_H diff --git a/src/libs/vgeometry/vplacelabelitem.cpp b/src/libs/vgeometry/vplacelabelitem.cpp index 1fcee188e..4816abb8e 100644 --- a/src/libs/vgeometry/vplacelabelitem.cpp +++ b/src/libs/vgeometry/vplacelabelitem.cpp @@ -227,12 +227,12 @@ auto VPlaceLabelItem::operator=(const VPlaceLabelItem &item) -> VPlaceLabelItem #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPlaceLabelItem::VPlaceLabelItem(VPlaceLabelItem &&item) Q_DECL_NOTHROW +VPlaceLabelItem::VPlaceLabelItem(VPlaceLabelItem &&item) noexcept : VPointF(std::move(item)), d(std::move(item.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPlaceLabelItem::operator=(VPlaceLabelItem &&item) Q_DECL_NOTHROW->VPlaceLabelItem & +auto VPlaceLabelItem::operator=(VPlaceLabelItem &&item) noexcept->VPlaceLabelItem & { VPointF::operator=(item); std::swap(d, item.d); diff --git a/src/libs/vgeometry/vplacelabelitem.h b/src/libs/vgeometry/vplacelabelitem.h index cc7efcbfa..381aa6a1d 100644 --- a/src/libs/vgeometry/vplacelabelitem.h +++ b/src/libs/vgeometry/vplacelabelitem.h @@ -48,8 +48,8 @@ public: auto operator=(const VPlaceLabelItem &item) -> VPlaceLabelItem &; #ifdef Q_COMPILER_RVALUE_REFS - VPlaceLabelItem(VPlaceLabelItem &&item) Q_DECL_NOTHROW; - auto operator=(VPlaceLabelItem &&item) Q_DECL_NOTHROW->VPlaceLabelItem &; + VPlaceLabelItem(VPlaceLabelItem &&item) noexcept; + auto operator=(VPlaceLabelItem &&item) noexcept->VPlaceLabelItem &; #endif auto GetWidthFormula() const -> QString; diff --git a/src/libs/vgeometry/vplacelabelitem_p.h b/src/libs/vgeometry/vplacelabelitem_p.h index 15ea2da48..a3beeb5d1 100644 --- a/src/libs/vgeometry/vplacelabelitem_p.h +++ b/src/libs/vgeometry/vplacelabelitem_p.h @@ -28,8 +28,8 @@ #ifndef VPLACELABELITEM_P_H #define VPLACELABELITEM_P_H -#include #include "vgeometrydef.h" +#include #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) @@ -41,46 +41,27 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPlaceLabelItemData final : public QSharedData { public: - VPlaceLabelItemData() - {} + VPlaceLabelItemData() = default; + VPlaceLabelItemData(const VPlaceLabelItemData &item) = default; + ~VPlaceLabelItemData() = default; - VPlaceLabelItemData(const VPlaceLabelItemData &item) - : QSharedData(item), - width(item.width), - height(item.height), - angle(item.angle), - visibilityTrigger(item.visibilityTrigger), - type(item.type), - centerPoint(item.centerPoint), - wValue(item.wValue), - hValue(item.hValue), - aValue(item.aValue), - correctionAngle(item.correctionAngle), - isVisible(item.isVisible) - {} + QString width{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString height{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString angle{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString visibilityTrigger{'1'}; // NOLINT(misc-non-private-member-variables-in-classes) + PlaceLabelType type{PlaceLabelType::Button}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 centerPoint{0}; // NOLINT(misc-non-private-member-variables-in-classes) - virtual ~VPlaceLabelItemData(); - - QString width{}; - QString height{}; - QString angle{'0'}; - QString visibilityTrigger{'1'}; - PlaceLabelType type{PlaceLabelType::Button}; - quint32 centerPoint{0}; - - qreal wValue{0}; - qreal hValue{0}; - qreal aValue{0}; - qreal correctionAngle{0}; - qreal isVisible{1}; + qreal wValue{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal hValue{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal aValue{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal correctionAngle{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal isVisible{1}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VPlaceLabelItemData) // NOLINT }; -VPlaceLabelItemData::~VPlaceLabelItemData() -{} - QT_WARNING_POP #endif // VPLACELABELITEM_P_H diff --git a/src/libs/vgeometry/vpointf.cpp b/src/libs/vgeometry/vpointf.cpp index 397bf47a2..4c6ef0b81 100644 --- a/src/libs/vgeometry/vpointf.cpp +++ b/src/libs/vgeometry/vpointf.cpp @@ -104,12 +104,12 @@ auto VPointF::operator=(const VPointF &point) -> VPointF & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPointF::VPointF(VPointF &&point) Q_DECL_NOTHROW +VPointF::VPointF(VPointF &&point) noexcept :VGObject(std::move(point)), d(std::move(point.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPointF::operator=(VPointF &&point) Q_DECL_NOTHROW->VPointF & +auto VPointF::operator=(VPointF &&point) noexcept->VPointF & { VGObject::operator=(point); std::swap(d, point.d); diff --git a/src/libs/vgeometry/vpointf.h b/src/libs/vgeometry/vpointf.h index 71c81db2b..1af1941da 100644 --- a/src/libs/vgeometry/vpointf.h +++ b/src/libs/vgeometry/vpointf.h @@ -29,7 +29,7 @@ #ifndef VPOINTF_H #define VPOINTF_H -#include + #include #include #include @@ -65,8 +65,8 @@ public: auto operator=(const VPointF &point) -> VPointF &; #ifdef Q_COMPILER_RVALUE_REFS - VPointF(VPointF &&point) Q_DECL_NOTHROW; - auto operator=(VPointF &&point) Q_DECL_NOTHROW->VPointF &; + VPointF(VPointF &&point) noexcept; + auto operator=(VPointF &&point) noexcept->VPointF &; #endif explicit operator QPointF() const; diff --git a/src/libs/vgeometry/vpointf_p.h b/src/libs/vgeometry/vpointf_p.h index 645396158..efb52e097 100644 --- a/src/libs/vgeometry/vpointf_p.h +++ b/src/libs/vgeometry/vpointf_p.h @@ -33,8 +33,8 @@ #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) -#include #include "../vmisc/defglobal.h" +#include QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -43,50 +43,56 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPointFData final : public QSharedData { public: - - VPointFData() - : _mx(0), _my(0), _x(0), _y(0), m_showLabel(true) - {} - - VPointFData(const VPointFData &point) - :QSharedData(point), _mx(point._mx), _my(point._my), _x(point._x), _y(point._y), m_showLabel(point.m_showLabel) - {} - - explicit VPointFData(const QPointF &point) - :_mx(0), _my(0), _x(point.x()), _y(point.y()), m_showLabel(true) - {} - - VPointFData(qreal x, qreal y, qreal mx, qreal my) - :_mx(mx), _my(my), _x(x), _y(y), m_showLabel(true) - {} - - VPointFData(const QPointF &point, qreal mx, qreal my) - :_mx(mx), _my(my), _x(point.x()), _y(point.y()), m_showLabel(true) - {} - - virtual ~VPointFData(); + VPointFData() = default; + VPointFData(const VPointFData &point) = default; + explicit VPointFData(const QPointF &point); + VPointFData(qreal x, qreal y, qreal mx, qreal my); + VPointFData(const QPointF &point, qreal mx, qreal my); + ~VPointFData() = default; /** @brief _mx offset name respect to x */ - qreal _mx; + qreal _mx{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief _my offset name respect to y */ - qreal _my; + qreal _my{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief _x x coordinate */ - qreal _x; + qreal _x{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief _y y coordinate */ - qreal _y; + qreal _y{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_hideLabel show or not label for this point */ - bool m_showLabel; + bool m_showLabel{true}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VPointFData) // NOLINT }; -VPointFData::~VPointFData() -{} +//--------------------------------------------------------------------------------------------------------------------- +inline VPointFData::VPointFData(const QPointF &point) + : _x(point.x()), + _y(point.y()) +{ +} + +//--------------------------------------------------------------------------------------------------------------------- +inline VPointFData::VPointFData(qreal x, qreal y, qreal mx, qreal my) + : _mx(mx), + _my(my), + _x(x), + _y(y) +{ +} + +//--------------------------------------------------------------------------------------------------------------------- +inline VPointFData::VPointFData(const QPointF &point, qreal mx, qreal my) + : _mx(mx), + _my(my), + _x(point.x()), + _y(point.y()) +{ +} QT_WARNING_POP diff --git a/src/libs/vgeometry/vspline.cpp b/src/libs/vgeometry/vspline.cpp index fa9ae25a5..31d273954 100644 --- a/src/libs/vgeometry/vspline.cpp +++ b/src/libs/vgeometry/vspline.cpp @@ -269,13 +269,13 @@ auto VSpline::operator =(const VSpline &spline) -> VSpline & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VSpline::VSpline(VSpline &&spline) Q_DECL_NOTHROW +VSpline::VSpline(VSpline &&spline) noexcept : VAbstractCubicBezier(std::move(spline)), d(std::move(spline.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VSpline::operator=(VSpline &&spline) Q_DECL_NOTHROW -> VSpline & +auto VSpline::operator=(VSpline &&spline) noexcept -> VSpline & { VAbstractCubicBezier::operator=(spline); std::swap(d, spline.d); diff --git a/src/libs/vgeometry/vspline.h b/src/libs/vgeometry/vspline.h index 9437432f7..7778bc2b2 100644 --- a/src/libs/vgeometry/vspline.h +++ b/src/libs/vgeometry/vspline.h @@ -29,7 +29,6 @@ #ifndef VSPLINE_H #define VSPLINE_H -#include #include #include #include @@ -47,7 +46,7 @@ class VSplineData; /** * @brief VSpline class that implements the spline. */ -class VSpline final :public VAbstractCubicBezier +class VSpline final : public VAbstractCubicBezier { public: VSpline(); @@ -66,8 +65,8 @@ public: auto operator=(const VSpline &spline) -> VSpline &; #ifdef Q_COMPILER_RVALUE_REFS - VSpline(VSpline &&spline) Q_DECL_NOTHROW; - auto operator=(VSpline &&spline) Q_DECL_NOTHROW -> VSpline &; + VSpline(VSpline &&spline) noexcept; + auto operator=(VSpline &&spline) noexcept -> VSpline &; #endif auto GetP1() const -> VPointF override; @@ -82,7 +81,7 @@ public: auto GetStartAngle() const -> qreal override; auto GetEndAngle() const -> qreal override; - auto GetStartAngleFormula () const -> QString; + auto GetStartAngleFormula() const -> QString; auto GetEndAngleFormula() const -> QString; void SetStartAngle(qreal angle, const QString &formula); @@ -107,8 +106,8 @@ public: auto GetPoints() const -> QVector override; // cppcheck-suppress unusedFunction - static auto SplinePoints(const QPointF &p1, const QPointF &p4, qreal angle1, qreal angle2, qreal kAsm1, - qreal kAsm2, qreal kCurve, qreal approximationScale) -> QVector; + static auto SplinePoints(const QPointF &p1, const QPointF &p4, qreal angle1, qreal angle2, qreal kAsm1, qreal kAsm2, + qreal kCurve, qreal approximationScale) -> QVector; auto ParamT(const QPointF &pBt) const -> qreal; auto ToJson() const -> QJsonObject override; @@ -117,15 +116,16 @@ protected: auto GetControlPoint1() const -> QPointF override; auto GetControlPoint2() const -> QPointF override; auto GetRealLength() const -> qreal override; + private: QSharedDataPointer d; - static auto CalcT(qreal curveCoord1, qreal curveCoord2, qreal curveCoord3, qreal curveCoord4, - qreal pointCoord) -> QVector; + static auto CalcT(qreal curveCoord1, qreal curveCoord2, qreal curveCoord3, qreal curveCoord4, qreal pointCoord) + -> QVector; static auto Cubic(QVector &x, qreal a, qreal b, qreal c) -> qint32; static auto Sign(long double ld) -> int; }; -Q_DECLARE_METATYPE(VSpline) // NOLINT +Q_DECLARE_METATYPE(VSpline) // NOLINT Q_DECLARE_TYPEINFO(VSpline, Q_MOVABLE_TYPE); // NOLINT #endif // VSPLINE_H diff --git a/src/libs/vgeometry/vspline_p.h b/src/libs/vgeometry/vspline_p.h index 93855bd96..d147acab1 100644 --- a/src/libs/vgeometry/vspline_p.h +++ b/src/libs/vgeometry/vspline_p.h @@ -29,8 +29,8 @@ #ifndef VSPLINE_P_H #define VSPLINE_P_H -#include #include +#include #include #include "vpointf.h" @@ -42,97 +42,65 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VSplineData final : public QSharedData { public: - VSplineData(); - VSplineData(const VSplineData &spline); - VSplineData(VPointF p1, VPointF p4, qreal angle1, qreal angle2, qreal kAsm1, qreal kAsm2, qreal kCurve); - VSplineData(VPointF p1, QPointF p2, QPointF p3, VPointF p4); - VSplineData(VPointF p1, VPointF p4, qreal angle1, const QString &angle1F, qreal angle2, const QString &angle2F, - qreal c1Length, const QString &c1LengthF, qreal c2Length, const QString &c2LengthF); - virtual ~VSplineData(); + VSplineData() = default; + VSplineData(const VSplineData &spline) = default; + VSplineData(const VPointF &p1, const VPointF &p4, qreal angle1, qreal angle2, qreal kAsm1, qreal kAsm2, + qreal kCurve); + VSplineData(const VPointF &p1, QPointF p2, QPointF p3, const VPointF &p4); + VSplineData(const VPointF &p1, const VPointF &p4, qreal angle1, const QString &angle1F, qreal angle2, + const QString &angle2F, qreal c1Length, const QString &c1LengthF, qreal c2Length, + const QString &c2LengthF); + ~VSplineData() = default; static auto GetL(const QPointF &p1, const QPointF &p4, qreal kCurve) -> qreal; /** @brief p1 first spline point. */ - VPointF p1; + VPointF p1{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief p4 fourth spline point. */ - VPointF p4; + VPointF p4{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle1 first angle control line. */ - qreal angle1; + qreal angle1{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle1F the first control point angle formula*/ - QString angle1F; + QString angle1F{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle2 second angle control line. */ - qreal angle2; + qreal angle2{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle2F the second control point angle formula*/ - QString angle2F; + QString angle2F{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief c1Length the length from the first spline point to the first control point. */ - qreal c1Length; + qreal c1Length{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief c1LengthF the formula from the first spline point to the first control point. */ - QString c1LengthF; + QString c1LengthF{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief c2Length the length from the fourth spline point to the second control point. */ - qreal c2Length; + qreal c2Length{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief c2LengthF the formula length from the fourth spline point to the second control point. */ - QString c2LengthF; + QString c2LengthF{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief kCurve coefficient of curvature spline. */ - qreal kCurve; + qreal kCurve{1}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VSplineData) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -VSplineData::VSplineData() - : p1(), - p4(), - angle1(0), - angle1F('0'), - angle2(0), - angle2F('0'), - c1Length(0), - c1LengthF('0'), - c2Length(0), - c2LengthF('0'), - kCurve(1) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VSplineData::VSplineData(const VSplineData &spline) - : QSharedData(spline), - p1(spline.p1), - p4(spline.p4), - angle1(spline.angle1), - angle1F(spline.angle1F), - angle2(spline.angle2), - angle2F(spline.angle2F), - c1Length(spline.c1Length), - c1LengthF(spline.c1LengthF), - c2Length(spline.c2Length), - c2LengthF(spline.c2LengthF), - kCurve(spline.kCurve) -{} - -//--------------------------------------------------------------------------------------------------------------------- -VSplineData::VSplineData(VPointF p1, VPointF p4, qreal angle1, qreal angle2, qreal kAsm1, qreal kAsm2, qreal kCurve) - : p1(p1), - p4(p4), - angle1(angle1), - angle1F(QString().number(angle1)), - angle2(angle2), - angle2F(QString().number(angle2)), - c1Length(0), - c1LengthF('0'), - c2Length(0), - c2LengthF('0'), - kCurve(kCurve) +inline VSplineData::VSplineData(const VPointF &p1, const VPointF &p4, qreal angle1, qreal angle2, qreal kAsm1, + qreal kAsm2, qreal kCurve) + : p1(p1), + p4(p4), + angle1(angle1), + angle1F(QString::number(angle1)), + angle2(angle2), + angle2F(QString::number(angle2)), + kCurve(kCurve) { const qreal L = GetL(static_cast(p1), static_cast(p4), kCurve); @@ -148,23 +116,14 @@ VSplineData::VSplineData(VPointF p1, VPointF p4, qreal angle1, qreal angle2, qre } //--------------------------------------------------------------------------------------------------------------------- -VSplineData::VSplineData(VPointF p1, QPointF p2, QPointF p3, VPointF p4) - : p1(p1), - p4(p4), - angle1(0), - angle1F('0'), - angle2(0), - angle2F('0'), - c1Length(0), - c1LengthF('0'), - c2Length(0), - c2LengthF('0'), - kCurve(1) +inline VSplineData::VSplineData(const VPointF &p1, QPointF p2, QPointF p3, const VPointF &p4) + : p1(p1), + p4(p4) { QLineF p1p2(static_cast(p1), static_cast(p2)); angle1 = p1p2.angle(); - angle1F = QString().number(angle1); + angle1F = QString::number(angle1); c1Length = p1p2.length(); c1LengthF = QString().number(c1Length); @@ -172,40 +131,36 @@ VSplineData::VSplineData(VPointF p1, QPointF p2, QPointF p3, VPointF p4) QLineF p4p3(static_cast(p4), static_cast(p3)); angle2 = p4p3.angle(); - angle2F = QString().number(angle2); + angle2F = QString::number(angle2); c2Length = p4p3.length(); c2LengthF = QString().number(c2Length); } //--------------------------------------------------------------------------------------------------------------------- -VSplineData::VSplineData(VPointF p1, VPointF p4, qreal angle1, const QString &angle1F, qreal angle2, - const QString &angle2F, qreal c1Length, const QString &c1LengthF, - qreal c2Length, const QString &c2LengthF) - : p1(p1), - p4(p4), - angle1(angle1), - angle1F(angle1F), - angle2(angle2), - angle2F(angle2F), - c1Length(c1Length), - c1LengthF(c1LengthF), - c2Length(c2Length), - c2LengthF(c2LengthF), - kCurve(1) -{} +inline VSplineData::VSplineData(const VPointF &p1, const VPointF &p4, qreal angle1, const QString &angle1F, + qreal angle2, const QString &angle2F, qreal c1Length, const QString &c1LengthF, + qreal c2Length, const QString &c2LengthF) + : p1(p1), + p4(p4), + angle1(angle1), + angle1F(angle1F), + angle2(angle2), + angle2F(angle2F), + c1Length(c1Length), + c1LengthF(c1LengthF), + c2Length(c2Length), + c2LengthF(c2LengthF) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VSplineData::~VSplineData() -{} - -//--------------------------------------------------------------------------------------------------------------------- -auto VSplineData::GetL(const QPointF &p1, const QPointF &p4, qreal kCurve) -> qreal +inline auto VSplineData::GetL(const QPointF &p1, const QPointF &p4, qreal kCurve) -> qreal { static const qreal angle = 90; - qreal length = VFuzzyComparePoints(p1, p4) ? accuracyPointOnLine*2 : QLineF(p1, p4).length(); - const qreal radius = length/M_SQRT2; - return kCurve * radius * 4 / 3 * qTan( angle * M_PI_4 / 180.0 ); + qreal length = VFuzzyComparePoints(p1, p4) ? accuracyPointOnLine * 2 : QLineF(p1, p4).length(); + const qreal radius = length / M_SQRT2; + return kCurve * radius * 4 / 3 * qTan(angle * M_PI_4 / 180.0); } QT_WARNING_POP diff --git a/src/libs/vgeometry/vsplinepath.cpp b/src/libs/vgeometry/vsplinepath.cpp index 99429f8ab..1c0da87f9 100644 --- a/src/libs/vgeometry/vsplinepath.cpp +++ b/src/libs/vgeometry/vsplinepath.cpp @@ -33,7 +33,6 @@ #include #include "../ifc/exception/vexception.h" -#include "../vmisc/vmath.h" #include "../vmisc/compatibility.h" #include "vabstractcurve.h" #include "vsplinepath_p.h" @@ -317,13 +316,13 @@ auto VSplinePath::operator=(const VSplinePath &path) -> VSplinePath & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VSplinePath::VSplinePath(VSplinePath &&splPath) Q_DECL_NOTHROW +VSplinePath::VSplinePath(VSplinePath &&splPath) noexcept : VAbstractCubicBezierPath(std::move(splPath)), d(std::move(splPath.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VSplinePath::operator=(VSplinePath &&path) Q_DECL_NOTHROW->VSplinePath & +auto VSplinePath::operator=(VSplinePath &&path) noexcept->VSplinePath & { VAbstractCubicBezierPath::operator=(path); std::swap(d, path.d); diff --git a/src/libs/vgeometry/vsplinepath.h b/src/libs/vgeometry/vsplinepath.h index cc0c87c63..be55ca68e 100644 --- a/src/libs/vgeometry/vsplinepath.h +++ b/src/libs/vgeometry/vsplinepath.h @@ -29,7 +29,6 @@ #ifndef VSPLINEPATH_H #define VSPLINEPATH_H -#include #include #include #include @@ -50,53 +49,54 @@ class VSplinePathData; /** * @brief The VSplinePath class keep information about splinePath. */ -class VSplinePath final :public VAbstractCubicBezierPath +class VSplinePath final : public VAbstractCubicBezierPath { Q_DECLARE_TR_FUNCTIONS(VSplinePath) // NOLINT + public: explicit VSplinePath(quint32 idObject = 0, Draw mode = Draw::Calculation); - VSplinePath(const QVector &points, qreal kCurve = 1, quint32 idObject = 0, - Draw mode = Draw::Calculation); - VSplinePath(const QVector &points, quint32 idObject = 0, Draw mode = Draw::Calculation); - VSplinePath(const VSplinePath& splPath); + explicit VSplinePath(const QVector &points, qreal kCurve = 1, quint32 idObject = 0, + Draw mode = Draw::Calculation); + explicit VSplinePath(const QVector &points, quint32 idObject = 0, Draw mode = Draw::Calculation); + VSplinePath(const VSplinePath &splPath); auto Rotate(const QPointF &originPoint, qreal degrees, const QString &prefix = QString()) const -> VSplinePath; auto Flip(const QLineF &axis, const QString &prefix = QString()) const -> VSplinePath; auto Move(qreal length, qreal angle, const QString &prefix = QString()) const -> VSplinePath; - virtual ~VSplinePath() override; + ~VSplinePath() override; auto operator[](vsizetype indx) -> VSplinePoint &; auto operator=(const VSplinePath &path) -> VSplinePath &; #ifdef Q_COMPILER_RVALUE_REFS - VSplinePath(VSplinePath&& splPath) Q_DECL_NOTHROW; - auto operator=(VSplinePath &&path) Q_DECL_NOTHROW->VSplinePath &; + VSplinePath(VSplinePath &&splPath) noexcept; + auto operator=(VSplinePath &&path) noexcept -> VSplinePath &; #endif - void append(const VSplinePoint &point); + void append(const VSplinePoint &point); - virtual auto CountSubSpl() const -> vsizetype override; - virtual auto CountPoints() const -> vsizetype override; - virtual void Clear() override; - virtual auto GetSpline(vsizetype index) const -> VSpline override; + auto CountSubSpl() const -> vsizetype override; + auto CountPoints() const -> vsizetype override; + void Clear() override; + auto GetSpline(vsizetype index) const -> VSpline override; - virtual auto GetSplinePath() const -> QVector override; + auto GetSplinePath() const -> QVector override; auto GetFSplinePath() const -> QVector; - virtual auto GetStartAngle() const -> qreal override; - virtual auto GetEndAngle() const -> qreal override; + auto GetStartAngle() const -> qreal override; + auto GetEndAngle() const -> qreal override; - virtual auto GetC1Length() const -> qreal override; - virtual auto GetC2Length() const -> qreal override; + auto GetC1Length() const -> qreal override; + auto GetC2Length() const -> qreal override; - void UpdatePoint(qint32 indexSpline, const SplinePointPosition &pos, const VSplinePoint &point); + void UpdatePoint(qint32 indexSpline, const SplinePointPosition &pos, const VSplinePoint &point); auto GetSplinePoint(qint32 indexSpline, SplinePointPosition pos) const -> VSplinePoint; auto at(vsizetype indx) const -> const VSplinePoint &; - virtual auto ToJson() const -> QJsonObject override; + auto ToJson() const -> QJsonObject override; protected: - virtual auto FirstPoint() const -> VPointF override; - virtual auto LastPoint() const -> VPointF override; + auto FirstPoint() const -> VPointF override; + auto LastPoint() const -> VPointF override; private: QSharedDataPointer d; diff --git a/src/libs/vgeometry/vsplinepath_p.h b/src/libs/vgeometry/vsplinepath_p.h index b3e5adc67..e087ac3a2 100644 --- a/src/libs/vgeometry/vsplinepath_p.h +++ b/src/libs/vgeometry/vsplinepath_p.h @@ -29,8 +29,8 @@ #ifndef VSPLINEPATH_P_H #define VSPLINEPATH_P_H -#include #include "vsplinepoint.h" +#include QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -39,28 +39,19 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VSplinePathData final : public QSharedData { public: - VSplinePathData() = default; - - VSplinePathData(const VSplinePathData &splPath) - : QSharedData(splPath), - path(splPath.path) - {} - - virtual ~VSplinePathData(); + VSplinePathData(const VSplinePathData &splPath) = default; + ~VSplinePathData() = default; /** * @brief path list spline point. */ - QVector path{}; + QVector path{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VSplinePathData) // NOLINT }; -VSplinePathData::~VSplinePathData() -{} - QT_WARNING_POP #endif // VSPLINEPATH_P_H diff --git a/src/libs/vgeometry/vsplinepoint.cpp b/src/libs/vgeometry/vsplinepoint.cpp index 1ddf418d8..3f7632ffd 100644 --- a/src/libs/vgeometry/vsplinepoint.cpp +++ b/src/libs/vgeometry/vsplinepoint.cpp @@ -77,12 +77,12 @@ auto VFSplinePoint::operator=(const VFSplinePoint &point) -> VFSplinePoint & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VFSplinePoint::VFSplinePoint(VFSplinePoint &&point) Q_DECL_NOTHROW +VFSplinePoint::VFSplinePoint(VFSplinePoint &&point) noexcept :d(std::move(point.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VFSplinePoint::operator=(VFSplinePoint &&point) Q_DECL_NOTHROW->VFSplinePoint & +auto VFSplinePoint::operator=(VFSplinePoint &&point) noexcept->VFSplinePoint & { std::swap(d, point.d); return *this; @@ -236,12 +236,12 @@ auto VSplinePoint::operator=(const VSplinePoint &point) -> VSplinePoint & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VSplinePoint::VSplinePoint(VSplinePoint &&point) Q_DECL_NOTHROW +VSplinePoint::VSplinePoint(VSplinePoint &&point) noexcept : d(std::move(point.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VSplinePoint::operator=(VSplinePoint &&point) Q_DECL_NOTHROW->VSplinePoint & +auto VSplinePoint::operator=(VSplinePoint &&point) noexcept->VSplinePoint & { std::swap(d, point.d); return *this; @@ -288,7 +288,7 @@ void VSplinePoint::SetAngle1(const qreal &value, const QString &angle1F) line.setAngle(d->angle1+180); d->angle2 = line.angle(); - d->angle2F = QString().number(d->angle2); + d->angle2F = QString::number(d->angle2); } //--------------------------------------------------------------------------------------------------------------------- @@ -314,7 +314,7 @@ void VSplinePoint::SetAngle2(const qreal &value, const QString &angle2F) line.setAngle(d->angle2+180); d->angle1 = line.angle(); - d->angle1F = QString().number(d->angle1); + d->angle1F = QString::number(d->angle1); } //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vgeometry/vsplinepoint.h b/src/libs/vgeometry/vsplinepoint.h index bab96a3ee..b8c759c73 100644 --- a/src/libs/vgeometry/vsplinepoint.h +++ b/src/libs/vgeometry/vsplinepoint.h @@ -53,8 +53,8 @@ public: auto operator=(const VFSplinePoint &point) -> VFSplinePoint &; #ifdef Q_COMPILER_RVALUE_REFS - VFSplinePoint(VFSplinePoint &&point) Q_DECL_NOTHROW; - auto operator=(VFSplinePoint &&point) Q_DECL_NOTHROW->VFSplinePoint &; + VFSplinePoint(VFSplinePoint &&point) noexcept; + auto operator=(VFSplinePoint &&point) noexcept->VFSplinePoint &; #endif auto P() const -> VPointF; @@ -91,8 +91,8 @@ public: auto operator=(const VSplinePoint &point) -> VSplinePoint &; #ifdef Q_COMPILER_RVALUE_REFS - VSplinePoint(VSplinePoint &&point) Q_DECL_NOTHROW; - auto operator=(VSplinePoint &&point) Q_DECL_NOTHROW->VSplinePoint &; + VSplinePoint(VSplinePoint &&point) noexcept; + auto operator=(VSplinePoint &&point) noexcept->VSplinePoint &; #endif auto P() const -> VPointF; diff --git a/src/libs/vgeometry/vsplinepoint_p.h b/src/libs/vgeometry/vsplinepoint_p.h index fa21594d4..171f48fd2 100644 --- a/src/libs/vgeometry/vsplinepoint_p.h +++ b/src/libs/vgeometry/vsplinepoint_p.h @@ -33,9 +33,9 @@ #include #include -#include "vpointf.h" -#include "../vmisc/def.h" #include "../qmuparser/qmutokenparser.h" +#include "../vmisc/def.h" +#include "vpointf.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -44,158 +44,108 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VFSplinePointData final : public QSharedData { public: - - VFSplinePointData() - : pSpline(VPointF()), - angle1(0), - angle2(180), - kAsm1(1), - kAsm2(1) - {} - - VFSplinePointData(VPointF pSpline, qreal kAsm1, qreal angle1, qreal kAsm2, qreal angle2) - : pSpline(pSpline), - angle1(angle1), - angle2(angle2), - kAsm1(kAsm1), - kAsm2(kAsm2) - { - if (VFuzzyComparePossibleNulls(angle1, angle2) || not qFuzzyCompare(qAbs(angle1-angle2), 180) ) - { - this->angle2 = this->angle1 + 180; - } - } - - VFSplinePointData(const VFSplinePointData &point) - : QSharedData(point), - pSpline(point.pSpline), - angle1(point.angle1), - angle2(point.angle2), - kAsm1(point.kAsm1), - kAsm2(point.kAsm2) - {} - - virtual ~VFSplinePointData(); + VFSplinePointData() = default; + VFSplinePointData(const VPointF &pSpline, qreal kAsm1, qreal angle1, qreal kAsm2, qreal angle2); + VFSplinePointData(const VFSplinePointData &point) = default; + ~VFSplinePointData() = default; /** @brief pSpline point. */ - VPointF pSpline; + VPointF pSpline{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle1 first angle spline. */ - qreal angle1; + qreal angle1{0}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle2 second angle spline. */ - qreal angle2; + qreal angle2{180}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief kAsm1 coefficient of length first control line. */ - qreal kAsm1; + qreal kAsm1{1}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief kAsm2 coefficient of length second control line. */ - qreal kAsm2; + qreal kAsm2{1}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VFSplinePointData) // NOLINT }; -VFSplinePointData::~VFSplinePointData() -{} +//--------------------------------------------------------------------------------------------------------------------- +inline VFSplinePointData::VFSplinePointData(const VPointF &pSpline, qreal kAsm1, qreal angle1, qreal kAsm2, + qreal angle2) + : pSpline(pSpline), + angle1(angle1), + angle2(angle2), + kAsm1(kAsm1), + kAsm2(kAsm2) +{ + if (VFuzzyComparePossibleNulls(angle1, angle2) || not qFuzzyCompare(qAbs(angle1 - angle2), 180)) + { + this->angle2 = this->angle1 + 180; + } +} //--------------------------------------VSplinePointData--------------------------------------------------------------- class VSplinePointData final : public QSharedData { public: - VSplinePointData() - : pSpline(), - angle1(0), - angle1F('0'), - angle2(180), - angle2F("180"), - length1(ToPixel(0.01, Unit::Mm)), - length1F('0'), - length2(ToPixel(0.01, Unit::Mm)), - length2F('0') - {} - + VSplinePointData() = default; VSplinePointData(VPointF pSpline, qreal angle1, const QString &angle1F, qreal angle2, const QString &angle2F, qreal length1, const QString &length1F, qreal length2, const QString &length2F); - - VSplinePointData(const VSplinePointData &point) - : QSharedData(point), - pSpline(point.pSpline), - angle1(point.angle1), - angle1F(point.angle1F), - angle2(point.angle2), - angle2F(point.angle2F), - length1(point.length1), - length1F(point.length1F), - length2(point.length2), - length2F(point.length2F) - { - if (qFuzzyIsNull(this->length1)) - { - this->length1 = ToPixel(0.01, Unit::Mm); - } - - if (qFuzzyIsNull(this->length2)) - { - this->length2 = ToPixel(0.01, Unit::Mm); - } - } - - virtual ~VSplinePointData(); + VSplinePointData(const VSplinePointData &point); + ~VSplinePointData() = default; /** @brief pSpline point. */ - VPointF pSpline; + VPointF pSpline{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle1 first angle spline. */ - qreal angle1; - QString angle1F; + qreal angle1{0}; // NOLINT(misc-non-private-member-variables-in-classes) + QString angle1F{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief angle2 second angle spline. */ - qreal angle2; - QString angle2F; + qreal angle2{180}; // NOLINT(misc-non-private-member-variables-in-classes) + QString angle2F{QStringLiteral("180")}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief length1 length a first control line. */ - qreal length1; - QString length1F; + qreal length1{ToPixel(0.01, Unit::Mm)}; // NOLINT(misc-non-private-member-variables-in-classes) + QString length1F{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief length2 length a second control line. */ - qreal length2; - QString length2F; + qreal length2{ToPixel(0.01, Unit::Mm)}; // NOLINT(misc-non-private-member-variables-in-classes) + QString length2F{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VSplinePointData) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -VSplinePointData::VSplinePointData(VPointF pSpline, qreal angle1, const QString &angle1F, qreal angle2, - const QString &angle2F, qreal length1, const QString &length1F, qreal length2, - const QString &length2F) - : pSpline(pSpline), - angle1(angle1), - angle1F(angle1F), - angle2(angle2), - angle2F(angle2F), - length1(length1), - length1F(length1F), - length2(length2), - length2F(length2F) +inline VSplinePointData::VSplinePointData(VPointF pSpline, qreal angle1, const QString &angle1F, qreal angle2, + const QString &angle2F, qreal length1, const QString &length1F, qreal length2, + const QString &length2F) + : pSpline(pSpline), + angle1(angle1), + angle1F(angle1F), + angle2(angle2), + angle2F(angle2F), + length1(length1), + length1F(length1F), + length2(length2), + length2F(length2F) { - if (not VFuzzyComparePossibleNulls(qAbs(angle1-angle2), 180)) + if (not VFuzzyComparePossibleNulls(qAbs(angle1 - angle2), 180)) { - QLineF line (0, 0, 100, 0); + QLineF line(0, 0, 100, 0); if (not qmu::QmuTokenParser::IsSingle(angle1F) || qmu::QmuTokenParser::IsSingle(angle2F)) { line.setAngle(angle1 + 180); this->angle2 = line.angle(); - this->angle2F = QString().number(line.angle()); + this->angle2F = QString::number(line.angle()); } else { line.setAngle(angle2 + 180); this->angle1 = line.angle(); - this->angle1F = QString().number(line.angle()); + this->angle1F = QString::number(line.angle()); } } @@ -211,8 +161,28 @@ VSplinePointData::VSplinePointData(VPointF pSpline, qreal angle1, const QString } //--------------------------------------------------------------------------------------------------------------------- -VSplinePointData::~VSplinePointData() -{} +inline VSplinePointData::VSplinePointData(const VSplinePointData &point) + : QSharedData(point), + pSpline(point.pSpline), + angle1(point.angle1), + angle1F(point.angle1F), + angle2(point.angle2), + angle2F(point.angle2F), + length1(point.length1), + length1F(point.length1F), + length2(point.length2), + length2F(point.length2F) +{ + if (qFuzzyIsNull(this->length1)) + { + this->length1 = ToPixel(0.01, Unit::Mm); + } + + if (qFuzzyIsNull(this->length2)) + { + this->length2 = ToPixel(0.01, Unit::Mm); + } +} QT_WARNING_POP diff --git a/src/libs/vlayout/vabstractpiece.cpp b/src/libs/vlayout/vabstractpiece.cpp index 6da0c6a7e..5a5994920 100644 --- a/src/libs/vlayout/vabstractpiece.cpp +++ b/src/libs/vlayout/vabstractpiece.cpp @@ -931,12 +931,12 @@ auto VAbstractPiece::operator=(const VAbstractPiece &piece) -> VAbstractPiece & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VAbstractPiece::VAbstractPiece(VAbstractPiece &&piece) Q_DECL_NOTHROW +VAbstractPiece::VAbstractPiece(VAbstractPiece &&piece) noexcept :d (std::move(piece.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VAbstractPiece::operator=(VAbstractPiece &&piece) Q_DECL_NOTHROW -> VAbstractPiece & +auto VAbstractPiece::operator=(VAbstractPiece &&piece) noexcept -> VAbstractPiece & { std::swap(d, piece.d); return *this; diff --git a/src/libs/vlayout/vabstractpiece.h b/src/libs/vlayout/vabstractpiece.h index 639453405..027967e89 100644 --- a/src/libs/vlayout/vabstractpiece.h +++ b/src/libs/vlayout/vabstractpiece.h @@ -60,8 +60,8 @@ public: auto operator=(const VAbstractPiece &piece) -> VAbstractPiece &; #ifdef Q_COMPILER_RVALUE_REFS - VAbstractPiece(VAbstractPiece &&piece) Q_DECL_NOTHROW; - auto operator=(VAbstractPiece &&piece) Q_DECL_NOTHROW -> VAbstractPiece &; + VAbstractPiece(VAbstractPiece &&piece) noexcept; + auto operator=(VAbstractPiece &&piece) noexcept -> VAbstractPiece &; #endif auto GetName() const -> QString; diff --git a/src/libs/vlayout/vabstractpiece_p.h b/src/libs/vlayout/vabstractpiece_p.h index dd9033274..0e136d004 100644 --- a/src/libs/vlayout/vabstractpiece_p.h +++ b/src/libs/vlayout/vabstractpiece_p.h @@ -29,9 +29,9 @@ #ifndef VABSTRACTPIECE_P_H #define VABSTRACTPIECE_P_H +#include #include #include -#include #include #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) @@ -39,11 +39,11 @@ #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) -# include "../vmisc/vdatastreamenum.h" +#include "../vmisc/vdatastreamenum.h" #endif -#include "../vmisc/defglobal.h" #include "../ifc/exception/vexception.h" +#include "../vmisc/defglobal.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -52,29 +52,28 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VAbstractPieceData : public QSharedData { Q_DECLARE_TR_FUNCTIONS(VAbstractPieceData) // NOLINT + public: VAbstractPieceData() = default; - VAbstractPieceData(const VAbstractPieceData &piece) = default; - ~VAbstractPieceData() = default; - friend auto operator<<(QDataStream& dataStream, const VAbstractPieceData& piece) -> QDataStream&; - friend auto operator>>(QDataStream& dataStream, VAbstractPieceData& piece) -> QDataStream&; + friend auto operator<<(QDataStream &dataStream, const VAbstractPieceData &piece) -> QDataStream &; + friend auto operator>>(QDataStream &dataStream, VAbstractPieceData &piece) -> QDataStream &; QString m_name{tr("Detail")}; // NOLINT (misc-non-private-member-variables-in-classes) /** @brief forbidFlipping forbid piece be mirrored in a layout. */ - bool m_forbidFlipping{false}; // NOLINT (misc-non-private-member-variables-in-classes) - bool m_forceFlipping{false}; // NOLINT (misc-non-private-member-variables-in-classes) - bool m_seamAllowance{false}; // NOLINT (misc-non-private-member-variables-in-classes) - bool m_seamAllowanceBuiltIn{false}; // NOLINT (misc-non-private-member-variables-in-classes) - bool m_hideMainPath{false}; // NOLINT (misc-non-private-member-variables-in-classes) - qreal m_width{0}; // NOLINT (misc-non-private-member-variables-in-classes) - qreal m_mx{0}; // NOLINT (misc-non-private-member-variables-in-classes) - qreal m_my{0}; // NOLINT (misc-non-private-member-variables-in-classes) - uint m_priority{0}; // NOLINT (misc-non-private-member-variables-in-classes) - QUuid m_uuid{QUuid::createUuid()}; // NOLINT (misc-non-private-member-variables-in-classes) - bool m_onDrawing{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool m_forbidFlipping{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool m_forceFlipping{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool m_seamAllowance{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool m_seamAllowanceBuiltIn{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool m_hideMainPath{false}; // NOLINT (misc-non-private-member-variables-in-classes) + qreal m_width{0}; // NOLINT (misc-non-private-member-variables-in-classes) + qreal m_mx{0}; // NOLINT (misc-non-private-member-variables-in-classes) + qreal m_my{0}; // NOLINT (misc-non-private-member-variables-in-classes) + uint m_priority{0}; // NOLINT (misc-non-private-member-variables-in-classes) + QUuid m_uuid{QUuid::createUuid()}; // NOLINT (misc-non-private-member-variables-in-classes) + bool m_onDrawing{false}; // NOLINT (misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VAbstractPieceData) // NOLINT @@ -86,9 +85,9 @@ private: QT_WARNING_POP // See https://stackoverflow.com/a/46719572/3045403 -#if __cplusplus < 201703L // C++17 -constexpr quint32 VAbstractPieceData::streamHeader; // NOLINT(readability-redundant-declaration) -constexpr quint16 VAbstractPieceData::classVersion; // NOLINT(readability-redundant-declaration) +#if __cplusplus < 201703L // C++17 +constexpr quint32 VAbstractPieceData::streamHeader; // NOLINT(readability-redundant-declaration) +constexpr quint16 VAbstractPieceData::classVersion; // NOLINT(readability-redundant-declaration) #endif // Friend functions @@ -130,8 +129,8 @@ inline auto operator>>(QDataStream &dataStream, VAbstractPieceData &piece) -> QD { QString message = QCoreApplication::tr("VAbstractPieceData prefix mismatch error: actualStreamHeader = 0x%1 " "and streamHeader = 0x%2") - .arg(actualStreamHeader, 8, 0x10, QChar('0')) - .arg(VAbstractPieceData::streamHeader, 8, 0x10, QChar('0')); + .arg(actualStreamHeader, 8, 0x10, QChar('0')) + .arg(VAbstractPieceData::streamHeader, 8, 0x10, QChar('0')); throw VException(message); } @@ -142,7 +141,8 @@ inline auto operator>>(QDataStream &dataStream, VAbstractPieceData &piece) -> QD { QString message = QCoreApplication::tr("VAbstractPieceData compatibility error: actualClassVersion = %1 and " "classVersion = %2") - .arg(actualClassVersion).arg(VAbstractPieceData::classVersion); + .arg(actualClassVersion) + .arg(VAbstractPieceData::classVersion); throw VException(message); } @@ -175,4 +175,3 @@ inline auto operator>>(QDataStream &dataStream, VAbstractPieceData &piece) -> QD } #endif // VABSTRACTPIECE_P_H - diff --git a/src/libs/vlayout/vbestsquare.cpp b/src/libs/vlayout/vbestsquare.cpp index fdd2692d2..3fb4f7e4c 100644 --- a/src/libs/vlayout/vbestsquare.cpp +++ b/src/libs/vlayout/vbestsquare.cpp @@ -71,12 +71,12 @@ auto VBestSquare::operator=(const VBestSquare &res) -> VBestSquare & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VBestSquare::VBestSquare(VBestSquare &&res) Q_DECL_NOTHROW +VBestSquare::VBestSquare(VBestSquare &&res) noexcept : d(std::move(res.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VBestSquare::operator=(VBestSquare &&res) Q_DECL_NOTHROW->VBestSquare & +auto VBestSquare::operator=(VBestSquare &&res) noexcept->VBestSquare & { std::swap(d, res.d); return *this; diff --git a/src/libs/vlayout/vbestsquare.h b/src/libs/vlayout/vbestsquare.h index 6d6a48e78..d67e260d3 100644 --- a/src/libs/vlayout/vbestsquare.h +++ b/src/libs/vlayout/vbestsquare.h @@ -49,8 +49,8 @@ public: auto operator=(const VBestSquare &res) -> VBestSquare &; #ifdef Q_COMPILER_RVALUE_REFS - VBestSquare(VBestSquare &&res) Q_DECL_NOTHROW; - auto operator=(VBestSquare &&res) Q_DECL_NOTHROW->VBestSquare &; + VBestSquare(VBestSquare &&res) noexcept; + auto operator=(VBestSquare &&res) noexcept->VBestSquare &; #endif void NewResult(const VBestSquareResData &data); diff --git a/src/libs/vlayout/vbestsquare_p.h b/src/libs/vlayout/vbestsquare_p.h index 1ca2e07df..37f2af55a 100644 --- a/src/libs/vlayout/vbestsquare_p.h +++ b/src/libs/vlayout/vbestsquare_p.h @@ -44,40 +44,20 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VBestSquareData : public QSharedData { public: - VBestSquareData() - {} + VBestSquareData() = default; + VBestSquareData(const QSizeF &sheetSize, bool saveLength, bool isPortrait); - VBestSquareData(const QSizeF &sheetSize, bool saveLength, bool isPortrait) - : isValid(true), - sheetSize(sheetSize), - saveLength(saveLength), - isPortrait(isPortrait) - { - data.bestSize = QSizeF(sheetSize.width()+10, sheetSize.height()+10); - } + VBestSquareData(const VBestSquareData &res) = default; + ~VBestSquareData() = default; - VBestSquareData(const VBestSquareData &res) - : QSharedData(res), - isValid(res.isValid), - sheetSize(res.sheetSize), - valideResult(res.valideResult), - saveLength(res.saveLength), - data(res.data), - isPortrait(res.isPortrait), - terminatedByException(res.terminatedByException), - exceptionReason(res.exceptionReason) - {} - - ~VBestSquareData() {} - - bool isValid{false}; - QSizeF sheetSize{}; - bool valideResult{false}; - bool saveLength{false}; - VBestSquareResData data{}; - bool isPortrait{true}; - bool terminatedByException{false}; - QString exceptionReason{}; + bool isValid{false}; // NOLINT (misc-non-private-member-variables-in-classes) + QSizeF sheetSize{}; // NOLINT (misc-non-private-member-variables-in-classes) + bool valideResult{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool saveLength{false}; // NOLINT (misc-non-private-member-variables-in-classes) + VBestSquareResData data{}; // NOLINT (misc-non-private-member-variables-in-classes) + bool isPortrait{true}; // NOLINT (misc-non-private-member-variables-in-classes) + bool terminatedByException{false}; // NOLINT (misc-non-private-member-variables-in-classes) + QString exceptionReason{}; // NOLINT (misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VBestSquareData) // NOLINT @@ -85,4 +65,14 @@ private: QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VBestSquareData::VBestSquareData(const QSizeF &sheetSize, bool saveLength, bool isPortrait) + : isValid(true), + sheetSize(sheetSize), + saveLength(saveLength), + isPortrait(isPortrait) +{ + data.bestSize = QSizeF(sheetSize.width() + 10, sheetSize.height() + 10); +} + #endif // VBESTSQUARE_P_H diff --git a/src/libs/vlayout/vcontour.cpp b/src/libs/vlayout/vcontour.cpp index 1ffb4f8cb..aa2138b93 100644 --- a/src/libs/vlayout/vcontour.cpp +++ b/src/libs/vlayout/vcontour.cpp @@ -38,7 +38,6 @@ #include "vcontour_p.h" #include "vlayoutpiece.h" -#include "../vmisc/vmath.h" #include "../vgeometry/vgeometrydef.h" #include "../vgeometry/vgobject.h" @@ -122,12 +121,12 @@ auto VContour::operator=(const VContour &contour) -> VContour & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VContour::VContour(VContour &&contour) Q_DECL_NOTHROW +VContour::VContour(VContour &&contour) noexcept :d (std::move(contour.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VContour::operator=(VContour &&contour) Q_DECL_NOTHROW->VContour & +auto VContour::operator=(VContour &&contour) noexcept->VContour & { std::swap(d, contour.d); return *this; diff --git a/src/libs/vlayout/vcontour.h b/src/libs/vlayout/vcontour.h index 5088093ad..c004c4b98 100644 --- a/src/libs/vlayout/vcontour.h +++ b/src/libs/vlayout/vcontour.h @@ -56,8 +56,8 @@ public: auto operator=(const VContour &contour) -> VContour &; #ifdef Q_COMPILER_RVALUE_REFS - VContour(VContour &&contour) Q_DECL_NOTHROW; - auto operator=(VContour &&contour) Q_DECL_NOTHROW->VContour &; + VContour(VContour &&contour) noexcept; + auto operator=(VContour &&contour) noexcept->VContour &; #endif void CeateEmptySheetContour(); diff --git a/src/libs/vlayout/vcontour_p.h b/src/libs/vlayout/vcontour_p.h index f2d7cd689..26833e430 100644 --- a/src/libs/vlayout/vcontour_p.h +++ b/src/libs/vlayout/vcontour_p.h @@ -29,11 +29,11 @@ #ifndef VCONTOUR_P_H #define VCONTOUR_P_H -#include -#include -#include -#include #include +#include +#include +#include +#include #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" @@ -47,41 +47,25 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VContourData : public QSharedData { public: - VContourData() - {} - - VContourData(int height, int width, qreal layoutWidth) - : paperHeight(height), - paperWidth(width), - layoutWidth(layoutWidth) - {} - - VContourData(const VContourData &contour) - : QSharedData(contour), - globalContour(contour.globalContour), - paperHeight(contour.paperHeight), - paperWidth(contour.paperWidth), - shift(contour.shift), - layoutWidth(contour.layoutWidth), - m_emptySheetEdgesCount(contour.m_emptySheetEdgesCount) - {} - - ~VContourData() {} + VContourData() = default; + VContourData(int height, int width, qreal layoutWidth); + VContourData(const VContourData &contour) = default; + ~VContourData() = default; /** @brief globalContour list of global points contour. */ - QVector globalContour{}; + QVector globalContour{}; // NOLINT (misc-non-private-member-variables-in-classes) /** @brief paperHeight height of paper in pixels*/ - int paperHeight{0}; + int paperHeight{0}; // NOLINT (misc-non-private-member-variables-in-classes) /** @brief paperWidth width of paper in pixels*/ - int paperWidth{0}; + int paperWidth{0}; // NOLINT (misc-non-private-member-variables-in-classes) - qreal shift{0}; + qreal shift{0}; // NOLINT (misc-non-private-member-variables-in-classes) - qreal layoutWidth{0}; + qreal layoutWidth{0}; // NOLINT (misc-non-private-member-variables-in-classes) - vsizetype m_emptySheetEdgesCount{0}; + vsizetype m_emptySheetEdgesCount{0}; // NOLINT (misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VContourData) // NOLINT @@ -90,4 +74,12 @@ private: // cppcheck-suppress unknownMacro QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VContourData::VContourData(int height, int width, qreal layoutWidth) + : paperHeight(height), + paperWidth(width), + layoutWidth(layoutWidth) +{ +} + #endif // VCONTOUR_P_H diff --git a/src/libs/vlayout/vlayoutgenerator.h b/src/libs/vlayout/vlayoutgenerator.h index 1ce06a2ee..3fbfaa936 100644 --- a/src/libs/vlayout/vlayoutgenerator.h +++ b/src/libs/vlayout/vlayoutgenerator.h @@ -29,7 +29,7 @@ #ifndef VLAYOUTGENERATOR_H #define VLAYOUTGENERATOR_H -#include + #include #include #include diff --git a/src/libs/vlayout/vlayoutpaper.cpp b/src/libs/vlayout/vlayoutpaper.cpp index 709c3640e..4b2286afb 100644 --- a/src/libs/vlayout/vlayoutpaper.cpp +++ b/src/libs/vlayout/vlayoutpaper.cpp @@ -47,33 +47,36 @@ #include #endif -#include "vbestsquare.h" -#include "vcontour.h" -#include "vlayoutpiece.h" -#include "vlayoutpaper_p.h" -#include "vposition.h" #include "../ifc/exception/vexceptionterminatedposition.h" #include "../vmisc/compatibility.h" +#include "vbestsquare.h" +#include "vcontour.h" +#include "vlayoutpaper_p.h" +#include "vlayoutpiece.h" +#include "vposition.h" //--------------------------------------------------------------------------------------------------------------------- VLayoutPaper::VLayoutPaper() - :d(new VLayoutPaperData) -{} + : d(new VLayoutPaperData) +{ +} //--------------------------------------------------------------------------------------------------------------------- VLayoutPaper::VLayoutPaper(int height, int width, qreal layoutWidth) - :d(new VLayoutPaperData(height, width, layoutWidth)) -{} + : d(new VLayoutPaperData(height, width, layoutWidth)) +{ +} //--------------------------------------------------------------------------------------------------------------------- VLayoutPaper::VLayoutPaper(const VLayoutPaper &paper) - :d (paper.d) -{} + : d(paper.d) +{ +} //--------------------------------------------------------------------------------------------------------------------- auto VLayoutPaper::operator=(const VLayoutPaper &paper) -> VLayoutPaper & { - if ( &paper == this ) + if (&paper == this) { return *this; } @@ -83,12 +86,13 @@ auto VLayoutPaper::operator=(const VLayoutPaper &paper) -> VLayoutPaper & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VLayoutPaper::VLayoutPaper(VLayoutPaper &&paper) Q_DECL_NOTHROW - :d (std::move(paper.d)) -{} +VLayoutPaper::VLayoutPaper(VLayoutPaper &&paper) noexcept + : d(std::move(paper.d)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -auto VLayoutPaper::operator=(VLayoutPaper &&paper) Q_DECL_NOTHROW->VLayoutPaper & +auto VLayoutPaper::operator=(VLayoutPaper &&paper) noexcept -> VLayoutPaper & { std::swap(d, paper.d); return *this; @@ -97,7 +101,8 @@ auto VLayoutPaper::operator=(VLayoutPaper &&paper) Q_DECL_NOTHROW->VLayoutPaper //--------------------------------------------------------------------------------------------------------------------- VLayoutPaper::~VLayoutPaper() -{} +{ +} //--------------------------------------------------------------------------------------------------------------------- auto VLayoutPaper::GetHeight() const -> int @@ -229,7 +234,7 @@ auto VLayoutPaper::ArrangeDetail(const VLayoutPiece &detail, std::atomic_bool &s { if (detail.LayoutEdgesCount() < 3 || detail.DetailEdgesCount() < 3) { - return false;//Not enough edges + return false; // Not enough edges } if ((detail.IsForceFlipping() || detail.IsForbidFlipping()) && not d->globalRotate) @@ -285,7 +290,7 @@ auto VLayoutPaper::SaveResult(const VBestSquare &bestResult, const VLayoutPiece if (bestResult.HasValidResult()) { VLayoutPiece workDetail = detail; - workDetail.SetMatrix(bestResult.Matrix());// Don't forget set matrix + workDetail.SetMatrix(bestResult.Matrix()); // Don't forget set matrix workDetail.SetMirror(bestResult.Mirror()); if (d->saveLength) @@ -293,9 +298,8 @@ auto VLayoutPaper::SaveResult(const VBestSquare &bestResult, const VLayoutPiece d->globalContour.CeateEmptySheetContour(); } - const QVector newGContour = d->globalContour.UniteWithContour(workDetail, bestResult.GContourEdge(), - bestResult.DetailEdge(), - bestResult.Type()); + const QVector newGContour = d->globalContour.UniteWithContour( + workDetail, bestResult.GContourEdge(), bestResult.DetailEdge(), bestResult.Type()); if (newGContour.isEmpty()) { return false; @@ -310,9 +314,9 @@ auto VLayoutPaper::SaveResult(const VBestSquare &bestResult, const VLayoutPiece d->positionsCache.append(positionChache); #ifdef LAYOUT_DEBUG -# ifdef SHOW_BEST +#ifdef SHOW_BEST VPosition::DumpFrame(d->globalContour, workDetail, mutex, d->details); -# endif +#endif #endif } else if (bestResult.IsTerminatedByException()) @@ -390,23 +394,23 @@ auto VLayoutPaper::GetGlobalContour() const -> QGraphicsPathItem * const qreal radius = 1; for (auto point : points) { - path.addEllipse(point.x()-radius, point.y()-radius, radius*2, radius*2); + path.addEllipse(point.x() - radius, point.y() - radius, radius * 2, radius * 2); } - for (int i=0; i < points.size()-1; ++i) + for (int i = 0; i < points.size() - 1; ++i) { - QLineF line(points.at(i), points.at(i+1)); - line.setLength(line.length()/2); + QLineF line(points.at(i), points.at(i + 1)); + line.setLength(line.length() / 2); path.moveTo(line.p2()); QLineF side1(line.p2(), line.p1()); - side1.setAngle(side1.angle()+35); + side1.setAngle(side1.angle() + 35); side1.setLength(3); path.lineTo(side1.p2()); path.moveTo(line.p2()); QLineF side2(line.p2(), line.p1()); - side2.setAngle(side2.angle()-35); + side2.setAngle(side2.angle() - 35); side2.setLength(3); path.lineTo(side2.p2()); } diff --git a/src/libs/vlayout/vlayoutpaper.h b/src/libs/vlayout/vlayoutpaper.h index ff7326332..87e147fe4 100644 --- a/src/libs/vlayout/vlayoutpaper.h +++ b/src/libs/vlayout/vlayoutpaper.h @@ -29,7 +29,7 @@ #ifndef VLAYOUTPAPER_H #define VLAYOUTPAPER_H -#include + #include #include #include @@ -58,8 +58,8 @@ public: auto operator=(const VLayoutPaper &paper) -> VLayoutPaper &; #ifdef Q_COMPILER_RVALUE_REFS - VLayoutPaper(VLayoutPaper &&paper) Q_DECL_NOTHROW; - auto operator=(VLayoutPaper &&paper) Q_DECL_NOTHROW->VLayoutPaper &; + VLayoutPaper(VLayoutPaper &&paper) noexcept; + auto operator=(VLayoutPaper &&paper) noexcept->VLayoutPaper &; #endif auto GetHeight() const -> int; diff --git a/src/libs/vlayout/vlayoutpaper_p.h b/src/libs/vlayout/vlayoutpaper_p.h index e1fc0f3e9..b4482e75b 100644 --- a/src/libs/vlayout/vlayoutpaper_p.h +++ b/src/libs/vlayout/vlayoutpaper_p.h @@ -29,12 +29,12 @@ #ifndef VLAYOUTPAPER_P_H #define VLAYOUTPAPER_P_H +#include #include #include -#include -#include "vlayoutpiece.h" #include "vcontour.h" +#include "vlayoutpiece.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -43,49 +43,28 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VLayoutPaperData : public QSharedData { public: - VLayoutPaperData() - {} - - VLayoutPaperData(int height, int width, qreal layoutWidth) - : globalContour(VContour(height, width, layoutWidth)), - layoutWidth(layoutWidth) - {} - - VLayoutPaperData(const VLayoutPaperData &paper) - : QSharedData(paper), - details(paper.details), - positionsCache(paper.positionsCache), - globalContour(paper.globalContour), - paperIndex(paper.paperIndex), - layoutWidth(paper.layoutWidth), - globalRotate(paper.globalRotate), - localRotate(paper.localRotate), - globalRotationNumber(paper.globalRotationNumber), - localRotationNumber(paper.localRotationNumber), - saveLength(paper.saveLength), - followGrainline(paper.followGrainline), - originPaperOrientation(paper.originPaperOrientation) - {} - - ~VLayoutPaperData() {} + VLayoutPaperData() = default; + VLayoutPaperData(int height, int width, qreal layoutWidth); + VLayoutPaperData(const VLayoutPaperData &paper) = default; + ~VLayoutPaperData() = default; /** @brief details list of arranged details. */ - QVector details{}; + QVector details{}; // NOLINT (misc-non-private-member-variables-in-classes) - QVector positionsCache{}; + QVector positionsCache{}; // NOLINT (misc-non-private-member-variables-in-classes) /** @brief globalContour list of global points contour. */ - VContour globalContour{}; + VContour globalContour{}; // NOLINT (misc-non-private-member-variables-in-classes) - quint32 paperIndex{0}; - qreal layoutWidth{0}; - bool globalRotate{true}; - bool localRotate{true}; - int globalRotationNumber{2}; - int localRotationNumber{2}; - bool saveLength{false}; - bool followGrainline{false}; - bool originPaperOrientation{true}; + quint32 paperIndex{0}; // NOLINT (misc-non-private-member-variables-in-classes) + qreal layoutWidth{0}; // NOLINT (misc-non-private-member-variables-in-classes) + bool globalRotate{true}; // NOLINT (misc-non-private-member-variables-in-classes) + bool localRotate{true}; // NOLINT (misc-non-private-member-variables-in-classes) + int globalRotationNumber{2}; // NOLINT (misc-non-private-member-variables-in-classes) + int localRotationNumber{2}; // NOLINT (misc-non-private-member-variables-in-classes) + bool saveLength{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool followGrainline{false}; // NOLINT (misc-non-private-member-variables-in-classes) + bool originPaperOrientation{true}; // NOLINT (misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VLayoutPaperData) // NOLINT @@ -93,4 +72,11 @@ private: QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VLayoutPaperData::VLayoutPaperData(int height, int width, qreal layoutWidth) + : globalContour(VContour(height, width, layoutWidth)), + layoutWidth(layoutWidth) +{ +} + #endif // VLAYOUTPAPER_P_H diff --git a/src/libs/vlayout/vlayoutpiece.cpp b/src/libs/vlayout/vlayoutpiece.cpp index 391e52869..add73f05f 100644 --- a/src/libs/vlayout/vlayoutpiece.cpp +++ b/src/libs/vlayout/vlayoutpiece.cpp @@ -615,13 +615,13 @@ auto VLayoutPiece::operator=(const VLayoutPiece &detail) -> VLayoutPiece & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VLayoutPiece::VLayoutPiece(VLayoutPiece &&detail) Q_DECL_NOTHROW : VAbstractPiece(std::move(detail)), +VLayoutPiece::VLayoutPiece(VLayoutPiece &&detail) noexcept : VAbstractPiece(std::move(detail)), d(std::move(detail.d)) { } //--------------------------------------------------------------------------------------------------------------------- -auto VLayoutPiece::operator=(VLayoutPiece &&detail) Q_DECL_NOTHROW +auto VLayoutPiece::operator=(VLayoutPiece &&detail) noexcept ->VLayoutPiece & { VAbstractPiece::operator=(detail); diff --git a/src/libs/vlayout/vlayoutpiece.h b/src/libs/vlayout/vlayoutpiece.h index 14ea94178..02a0d9650 100644 --- a/src/libs/vlayout/vlayoutpiece.h +++ b/src/libs/vlayout/vlayoutpiece.h @@ -90,8 +90,8 @@ public: auto operator=(const VLayoutPiece &detail) -> VLayoutPiece &; #ifdef Q_COMPILER_RVALUE_REFS - VLayoutPiece(VLayoutPiece &&detail) Q_DECL_NOTHROW; - auto operator=(VLayoutPiece &&detail) Q_DECL_NOTHROW + VLayoutPiece(VLayoutPiece &&detail) noexcept; + auto operator=(VLayoutPiece &&detail) noexcept ->VLayoutPiece &; #endif diff --git a/src/libs/vlayout/vlayoutpiece_p.h b/src/libs/vlayout/vlayoutpiece_p.h index 5caaf488b..1e28823fd 100644 --- a/src/libs/vlayout/vlayoutpiece_p.h +++ b/src/libs/vlayout/vlayoutpiece_p.h @@ -29,10 +29,10 @@ #ifndef VLAYOUTDETAIL_P_H #define VLAYOUTDETAIL_P_H -#include #include -#include +#include #include +#include #include "../vpatterndb/floatItemData/floatitemdef.h" #include "../vwidgets/vpiecegrainline.h" @@ -43,15 +43,15 @@ #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) -# include "../vmisc/vdatastreamenum.h" +#include "../vmisc/vdatastreamenum.h" #endif -#include "vlayoutpiecepath.h" -#include "../vgeometry/vgeometrydef.h" -#include "vtextmanager.h" #include "../ifc/exception/vexception.h" -#include "vlayoutpoint.h" +#include "../vgeometry/vgeometrydef.h" #include "../vgeometry/vlayoutplacelabel.h" +#include "vlayoutpiecepath.h" +#include "vlayoutpoint.h" +#include "vtextmanager.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -60,50 +60,49 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VLayoutPieceData : public QSharedData { public: - VLayoutPieceData(){} // NOLINT(modernize-use-equals-default) - + VLayoutPieceData() = default; VLayoutPieceData(const VLayoutPieceData &detail) = default; ~VLayoutPieceData() = default; - friend auto operator<<(QDataStream& dataStream, const VLayoutPieceData& piece) -> QDataStream&; - friend auto operator>>(QDataStream& dataStream, VLayoutPieceData& piece) -> QDataStream&; + friend auto operator<<(QDataStream &dataStream, const VLayoutPieceData &piece) -> QDataStream &; + friend auto operator>>(QDataStream &dataStream, VLayoutPieceData &piece) -> QDataStream &; /** @brief contour list of contour points. */ - QVector m_contour{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_contour{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief seamAllowance list of seam allowance points. */ - QVector m_seamAllowance{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_seamAllowance{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief layoutAllowance list of layout allowance points. */ - QVector m_layoutAllowance{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_layoutAllowance{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief passmarks list of passmakrs. */ - QVector m_passmarks{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_passmarks{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_internalPaths list of internal paths. */ QVector m_internalPaths{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief matrix transformation matrix*/ - QTransform m_matrix{}; // NOLINT(misc-non-private-member-variables-in-classes) + QTransform m_matrix{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief layoutWidth value layout allowance width in pixels. */ - qreal m_layoutWidth{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal m_layoutWidth{0}; // NOLINT(misc-non-private-member-variables-in-classes) - bool m_mirror{false}; // NOLINT(misc-non-private-member-variables-in-classes) + bool m_mirror{false}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief detailLabel detail label rectangle */ - QVector m_detailLabel{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_detailLabel{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief patternInfo pattern info rectangle */ - QVector m_patternInfo{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_patternInfo{}; // NOLINT(misc-non-private-member-variables-in-classes) - VPieceGrainline m_grainline{}; // NOLINT(misc-non-private-member-variables-in-classes) + VPieceGrainline m_grainline{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_tmDetail text manager for laying out detail info */ - VTextManager m_tmDetail{}; // NOLINT(misc-non-private-member-variables-in-classes) + VTextManager m_tmDetail{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_tmPattern text manager for laying out pattern info */ - VTextManager m_tmPattern{}; // NOLINT(misc-non-private-member-variables-in-classes) + VTextManager m_tmPattern{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_placeLabels list of place labels. */ QVector m_placeLabels{}; // NOLINT(misc-non-private-member-variables-in-classes) @@ -130,9 +129,9 @@ private: QT_WARNING_POP // See https://stackoverflow.com/a/46719572/3045403 -#if __cplusplus < 201703L // C++17 -constexpr quint32 VLayoutPieceData::streamHeader; // NOLINT(readability-redundant-declaration) -constexpr quint16 VLayoutPieceData::classVersion; // NOLINT(readability-redundant-declaration) +#if __cplusplus < 201703L // C++17 +constexpr quint32 VLayoutPieceData::streamHeader; // NOLINT(readability-redundant-declaration) +constexpr quint16 VLayoutPieceData::classVersion; // NOLINT(readability-redundant-declaration) #endif // Friend functions @@ -175,8 +174,8 @@ inline auto operator>>(QDataStream &dataStream, VLayoutPieceData &piece) -> QDat { QString message = QCoreApplication::tr("VLayoutPieceData prefix mismatch error: actualStreamHeader = 0x%1 and " "streamHeader = 0x%2") - .arg(actualStreamHeader, 8, 0x10, QChar('0')) - .arg(VLayoutPieceData::streamHeader, 8, 0x10, QChar('0')); + .arg(actualStreamHeader, 8, 0x10, QChar('0')) + .arg(VLayoutPieceData::streamHeader, 8, 0x10, QChar('0')); throw VException(message); } @@ -187,7 +186,8 @@ inline auto operator>>(QDataStream &dataStream, VLayoutPieceData &piece) -> QDat { QString message = QCoreApplication::tr("VLayoutPieceData compatibility error: actualClassVersion = %1 and " "classVersion = %2") - .arg(actualClassVersion).arg(VLayoutPieceData::classVersion); + .arg(actualClassVersion) + .arg(VLayoutPieceData::classVersion); throw VException(message); } diff --git a/src/libs/vlayout/vlayoutpiecepath.cpp b/src/libs/vlayout/vlayoutpiecepath.cpp index fb4bc0bf9..331b45dd5 100644 --- a/src/libs/vlayout/vlayoutpiecepath.cpp +++ b/src/libs/vlayout/vlayoutpiecepath.cpp @@ -77,12 +77,12 @@ auto VLayoutPiecePath::operator=(const VLayoutPiecePath &path) -> VLayoutPiecePa #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VLayoutPiecePath::VLayoutPiecePath(VLayoutPiecePath &&path) Q_DECL_NOTHROW +VLayoutPiecePath::VLayoutPiecePath(VLayoutPiecePath &&path) noexcept : d(std::move(path.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VLayoutPiecePath::operator=(VLayoutPiecePath &&path) Q_DECL_NOTHROW->VLayoutPiecePath & +auto VLayoutPiecePath::operator=(VLayoutPiecePath &&path) noexcept->VLayoutPiecePath & { std::swap(d, path.d); return *this; diff --git a/src/libs/vlayout/vlayoutpiecepath_p.h b/src/libs/vlayout/vlayoutpiecepath_p.h index 9d76f0bc1..a74d56adc 100644 --- a/src/libs/vlayout/vlayoutpiecepath_p.h +++ b/src/libs/vlayout/vlayoutpiecepath_p.h @@ -29,17 +29,17 @@ #ifndef VLAYOUTPIECEPATH_P_H #define VLAYOUTPIECEPATH_P_H -#include -#include -#include #include +#include +#include +#include #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) -# include "../vmisc/vdatastreamenum.h" +#include "../vmisc/vdatastreamenum.h" #endif #include "../ifc/exception/vexception.h" @@ -52,12 +52,8 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VLayoutPiecePathData : public QSharedData { public: - VLayoutPiecePathData(){} // NOLINT(modernize-use-equals-default) - - explicit VLayoutPiecePathData(const QVector &points) - : m_points(points) - {} - + VLayoutPiecePathData() = default; + explicit VLayoutPiecePathData(const QVector &points); VLayoutPiecePathData(const VLayoutPiecePathData &path) = default; ~VLayoutPiecePathData() = default; @@ -65,12 +61,12 @@ public: friend auto operator>>(QDataStream &dataStream, VLayoutPiecePathData &path) -> QDataStream &; /** @brief m_points list of path points. */ - QVector m_points{}; + QVector m_points{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_penStyle path pen style. */ - Qt::PenStyle m_penStyle{Qt::SolidLine}; + Qt::PenStyle m_penStyle{Qt::SolidLine}; // NOLINT(misc-non-private-member-variables-in-classes) - bool m_cut{false}; + bool m_cut{false}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VLayoutPiecePathData) // NOLINT @@ -82,15 +78,21 @@ private: QT_WARNING_POP // See https://stackoverflow.com/a/46719572/3045403 -#if __cplusplus < 201703L // C++17 - constexpr quint32 VLayoutPiecePathData::streamHeader; // NOLINT(readability-redundant-declaration) - constexpr quint16 VLayoutPiecePathData::classVersion; // NOLINT(readability-redundant-declaration) +#if __cplusplus < 201703L // C++17 +constexpr quint32 VLayoutPiecePathData::streamHeader; // NOLINT(readability-redundant-declaration) +constexpr quint16 VLayoutPiecePathData::classVersion; // NOLINT(readability-redundant-declaration) #endif +//--------------------------------------------------------------------------------------------------------------------- +inline VLayoutPiecePathData::VLayoutPiecePathData(const QVector &points) + : m_points(points) +{ +} + // Friend functions //--------------------------------------------------------------------------------------------------------------------- - auto operator<<(QDataStream &dataStream, const VLayoutPiecePathData &path) -> QDataStream & - { +auto operator<<(QDataStream &dataStream, const VLayoutPiecePathData &path) -> QDataStream & +{ dataStream << VLayoutPiecePathData::streamHeader << VLayoutPiecePathData::classVersion; // Added in classVersion = 1 @@ -113,8 +115,8 @@ auto operator>>(QDataStream &dataStream, VLayoutPiecePathData &path) -> QDataStr { QString message = QCoreApplication::tr("VLayoutPiecePathData prefix mismatch error: actualStreamHeader = 0x%1 " "and streamHeader = 0x%2") - .arg(actualStreamHeader, 8, 0x10, QChar('0')) - .arg(VLayoutPiecePathData::streamHeader, 8, 0x10, QChar('0')); + .arg(actualStreamHeader, 8, 0x10, QChar('0')) + .arg(VLayoutPiecePathData::streamHeader, 8, 0x10, QChar('0')); throw VException(message); } @@ -125,7 +127,8 @@ auto operator>>(QDataStream &dataStream, VLayoutPiecePathData &path) -> QDataStr { QString message = QCoreApplication::tr("VLayoutPiecePathData compatibility error: actualClassVersion = %1 and " "classVersion = %2") - .arg(actualClassVersion).arg(VLayoutPiecePathData::classVersion); + .arg(actualClassVersion) + .arg(VLayoutPiecePathData::classVersion); throw VException(message); } @@ -142,13 +145,12 @@ auto operator>>(QDataStream &dataStream, VLayoutPiecePathData &path) -> QDataStr dataStream >> path.m_penStyle; dataStream >> path.m_cut; -// if (actualClassVersion >= 2) -// { + // if (actualClassVersion >= 2) + // { -// } + // } return dataStream; } #endif // VLAYOUTPIECEPATH_P_H - diff --git a/src/libs/vlayout/vposition.h b/src/libs/vlayout/vposition.h index cc30a58fd..65c3e1592 100644 --- a/src/libs/vlayout/vposition.h +++ b/src/libs/vlayout/vposition.h @@ -29,7 +29,7 @@ #ifndef VPOSITION_H #define VPOSITION_H -#include + #include #include #include diff --git a/src/libs/vmisc/backport/qoverload.h b/src/libs/vmisc/backport/qoverload.h index 5f258a4cf..6731a6e80 100644 --- a/src/libs/vmisc/backport/qoverload.h +++ b/src/libs/vmisc/backport/qoverload.h @@ -44,11 +44,11 @@ template struct QNonConstOverload { template - Q_DECL_CONSTEXPR auto operator()(R (T::*ptr)(Args...)) const Q_DECL_NOTHROW -> decltype(ptr) + Q_DECL_CONSTEXPR auto operator()(R (T::*ptr)(Args...)) const noexcept -> decltype(ptr) { return ptr; } template - static Q_DECL_CONSTEXPR auto of(R (T::*ptr)(Args...)) Q_DECL_NOTHROW -> decltype(ptr) + static Q_DECL_CONSTEXPR auto of(R (T::*ptr)(Args...)) noexcept -> decltype(ptr) { return ptr; } }; @@ -56,11 +56,11 @@ template struct QConstOverload { template - Q_DECL_CONSTEXPR auto operator()(R (T::*ptr)(Args...) const) const Q_DECL_NOTHROW -> decltype(ptr) + Q_DECL_CONSTEXPR auto operator()(R (T::*ptr)(Args...) const) const noexcept -> decltype(ptr) { return ptr; } template - static Q_DECL_CONSTEXPR auto of(R (T::*ptr)(Args...) const) Q_DECL_NOTHROW -> decltype(ptr) + static Q_DECL_CONSTEXPR auto of(R (T::*ptr)(Args...) const) noexcept -> decltype(ptr) { return ptr; } }; @@ -73,11 +73,11 @@ struct QOverload : QConstOverload, QNonConstOverload using QNonConstOverload::operator(); template - Q_DECL_CONSTEXPR auto operator()(R (*ptr)(Args...)) const Q_DECL_NOTHROW -> decltype(ptr) + Q_DECL_CONSTEXPR auto operator()(R (*ptr)(Args...)) const noexcept -> decltype(ptr) { return ptr; } template - static Q_DECL_CONSTEXPR auto of(R (*ptr)(Args...)) Q_DECL_NOTHROW -> decltype(ptr) + static Q_DECL_CONSTEXPR auto of(R (*ptr)(Args...)) noexcept -> decltype(ptr) { return ptr; } }; diff --git a/src/libs/vmisc/customevents.h b/src/libs/vmisc/customevents.h index 4331b2249..5a8b529e7 100644 --- a/src/libs/vmisc/customevents.h +++ b/src/libs/vmisc/customevents.h @@ -29,13 +29,11 @@ #ifndef CUSTOMEVENTS_H #define CUSTOMEVENTS_H -#include #include #include -#include "typedef.h" - -enum CustomEventType { +enum CustomEventType +{ UndoEventType = 1, LiteParseEventType = 2, FitBestCurrentEventType = 3, @@ -50,13 +48,15 @@ const QEvent::Type UNDO_EVENT = class UndoEvent : public QEvent { public: - UndoEvent() - : QEvent(UNDO_EVENT) - {} - - virtual ~UndoEvent() =default; + UndoEvent(); + ~UndoEvent() override = default; }; +inline UndoEvent::UndoEvent() + : QEvent(UNDO_EVENT) +{ +} + //--------------------------------------------------------------------------------------------------------------------- const QEvent::Type LITE_PARSE_EVENT = static_cast(QEvent::User + static_cast(CustomEventType::LiteParseEventType)); @@ -64,13 +64,15 @@ const QEvent::Type LITE_PARSE_EVENT = class LiteParseEvent : public QEvent { public: - LiteParseEvent() - : QEvent(LITE_PARSE_EVENT) - {} - - virtual ~LiteParseEvent() =default; + LiteParseEvent(); + ~LiteParseEvent() override = default; }; +inline LiteParseEvent::LiteParseEvent() + : QEvent(LITE_PARSE_EVENT) +{ +} + //--------------------------------------------------------------------------------------------------------------------- const QEvent::Type FIT_BEST_CURRENT_EVENT = static_cast(QEvent::User + static_cast(CustomEventType::FitBestCurrentEventType)); @@ -78,13 +80,15 @@ const QEvent::Type FIT_BEST_CURRENT_EVENT = class FitBestCurrentEvent : public QEvent { public: - FitBestCurrentEvent() - : QEvent(FIT_BEST_CURRENT_EVENT) - {} - - virtual ~FitBestCurrentEvent() =default; + FitBestCurrentEvent(); + ~FitBestCurrentEvent() override = default; }; +inline FitBestCurrentEvent::FitBestCurrentEvent() + : QEvent(FIT_BEST_CURRENT_EVENT) +{ +} + //--------------------------------------------------------------------------------------------------------------------- const QEvent::Type WARNING_MESSAGE_EVENT = static_cast(QEvent::User + static_cast(CustomEventType::WarningMessageEventType)); @@ -92,13 +96,8 @@ const QEvent::Type WARNING_MESSAGE_EVENT = class WarningMessageEvent : public QEvent { public: - WarningMessageEvent(const QString &message, QtMsgType severity) - : QEvent(WARNING_MESSAGE_EVENT), - m_message(message), - m_severity(severity) - {} - - virtual ~WarningMessageEvent() =default; + WarningMessageEvent(const QString &message, QtMsgType severity); + ~WarningMessageEvent() override = default; auto Message() const -> QString; @@ -109,6 +108,13 @@ private: QtMsgType m_severity; }; +inline WarningMessageEvent::WarningMessageEvent(const QString &message, QtMsgType severity) + : QEvent(WARNING_MESSAGE_EVENT), + m_message(message), + m_severity(severity) +{ +} + inline auto WarningMessageEvent::Message() const -> QString { return m_message; diff --git a/src/libs/vmisc/def.h b/src/libs/vmisc/def.h index b3c7a2663..8d910d832 100644 --- a/src/libs/vmisc/def.h +++ b/src/libs/vmisc/def.h @@ -41,7 +41,6 @@ #include #include #include -#include #include "debugbreak.h" #include "defglobal.h" diff --git a/src/libs/vmisc/defglobal.h b/src/libs/vmisc/defglobal.h index 569c617a6..df83989da 100644 --- a/src/libs/vmisc/defglobal.h +++ b/src/libs/vmisc/defglobal.h @@ -35,7 +35,7 @@ constexpr qreal PrintDPI = 96.0; #if QT_VERSION < QT_VERSION_CHECK(5, 7, 0) // this adds const to non-const objects (like std::as_const) template -Q_DECL_CONSTEXPR typename std::add_const::type &qAsConst(T &t) Q_DECL_NOTHROW { return t; } +Q_DECL_CONSTEXPR typename std::add_const::type &qAsConst(T &t) noexcept { return t; } // prevent rvalue arguments: template void qAsConst(const T &&) Q_DECL_EQ_DELETE; diff --git a/src/libs/vmisc/diagnostic.h b/src/libs/vmisc/diagnostic.h index 3bf220d29..dc6e968c4 100644 --- a/src/libs/vmisc/diagnostic.h +++ b/src/libs/vmisc/diagnostic.h @@ -37,54 +37,54 @@ * Warning/diagnostic handling */ -#define QT_DO_PRAGMA(text) _Pragma(#text) +#define QT_DO_PRAGMA(text) _Pragma(#text) #if defined(Q_CC_INTEL) && defined(Q_CC_MSVC) /* icl.exe: Intel compiler on Windows */ -# undef QT_DO_PRAGMA /* not needed */ -# define QT_WARNING_PUSH __pragma(warning(push)) -# define QT_WARNING_POP __pragma(warning(pop)) -# define QT_WARNING_DISABLE_MSVC(number) -# define QT_WARNING_DISABLE_INTEL(number) __pragma(warning(disable: number)) -# define QT_WARNING_DISABLE_CLANG(text) -# define QT_WARNING_DISABLE_GCC(text) +#undef QT_DO_PRAGMA /* not needed */ +#define QT_WARNING_PUSH __pragma(warning(push)) +#define QT_WARNING_POP __pragma(warning(pop)) +#define QT_WARNING_DISABLE_MSVC(number) +#define QT_WARNING_DISABLE_INTEL(number) __pragma(warning(disable : number)) +#define QT_WARNING_DISABLE_CLANG(text) +#define QT_WARNING_DISABLE_GCC(text) #elif defined(Q_CC_INTEL) /* icc: Intel compiler on Linux or OS X */ -# define QT_WARNING_PUSH QT_DO_PRAGMA(warning(push)) -# define QT_WARNING_POP QT_DO_PRAGMA(warning(pop)) -# define QT_WARNING_DISABLE_INTEL(number) QT_DO_PRAGMA(warning(disable: number)) -# define QT_WARNING_DISABLE_MSVC(number) -# define QT_WARNING_DISABLE_CLANG(text) -# define QT_WARNING_DISABLE_GCC(text) +#define QT_WARNING_PUSH QT_DO_PRAGMA(warning(push)) +#define QT_WARNING_POP QT_DO_PRAGMA(warning(pop)) +#define QT_WARNING_DISABLE_INTEL(number) QT_DO_PRAGMA(warning(disable : number)) +#define QT_WARNING_DISABLE_MSVC(number) +#define QT_WARNING_DISABLE_CLANG(text) +#define QT_WARNING_DISABLE_GCC(text) #elif defined(Q_CC_MSVC) && _MSC_VER >= 1500 -# undef QT_DO_PRAGMA /* not needed */ -# define QT_WARNING_PUSH __pragma(warning(push)) -# define QT_WARNING_POP __pragma(warning(pop)) -# define QT_WARNING_DISABLE_MSVC(number) __pragma(warning(disable: number)) -# define QT_WARNING_DISABLE_INTEL(number) -# define QT_WARNING_DISABLE_CLANG(text) -# define QT_WARNING_DISABLE_GCC(text) +#undef QT_DO_PRAGMA /* not needed */ +#define QT_WARNING_PUSH __pragma(warning(push)) +#define QT_WARNING_POP __pragma(warning(pop)) +#define QT_WARNING_DISABLE_MSVC(number) __pragma(warning(disable : number)) +#define QT_WARNING_DISABLE_INTEL(number) +#define QT_WARNING_DISABLE_CLANG(text) +#define QT_WARNING_DISABLE_GCC(text) #elif defined(Q_CC_CLANG) -# define QT_WARNING_PUSH QT_DO_PRAGMA(clang diagnostic push) -# define QT_WARNING_POP QT_DO_PRAGMA(clang diagnostic pop) -# define QT_WARNING_DISABLE_CLANG(text) QT_DO_PRAGMA(clang diagnostic ignored text) -# define QT_WARNING_DISABLE_GCC(text) QT_DO_PRAGMA(GCC diagnostic ignored text) // GCC directives work in Clang too -# define QT_WARNING_DISABLE_INTEL(number) -# define QT_WARNING_DISABLE_MSVC(number) +#define QT_WARNING_PUSH QT_DO_PRAGMA(clang diagnostic push) +#define QT_WARNING_POP QT_DO_PRAGMA(clang diagnostic pop) +#define QT_WARNING_DISABLE_CLANG(text) QT_DO_PRAGMA(clang diagnostic ignored text) +#define QT_WARNING_DISABLE_GCC(text) QT_DO_PRAGMA(GCC diagnostic ignored text) // GCC directives work in Clang too +#define QT_WARNING_DISABLE_INTEL(number) +#define QT_WARNING_DISABLE_MSVC(number) #elif defined(Q_CC_GNU) && (__GNUC__ * 100 + __GNUC_MINOR__ >= 406) -# define QT_WARNING_PUSH QT_DO_PRAGMA(GCC diagnostic push) -# define QT_WARNING_POP QT_DO_PRAGMA(GCC diagnostic pop) -# define QT_WARNING_DISABLE_GCC(text) QT_DO_PRAGMA(GCC diagnostic ignored text) -# define QT_WARNING_DISABLE_CLANG(text) -# define QT_WARNING_DISABLE_INTEL(number) -# define QT_WARNING_DISABLE_MSVC(number) -#else // All other compilers, GCC < 4.6 and MSVC < 2008 -# define QT_WARNING_DISABLE_GCC(text) -# define QT_WARNING_PUSH -# define QT_WARNING_POP -# define QT_WARNING_DISABLE_INTEL(number) -# define QT_WARNING_DISABLE_MSVC(number) -# define QT_WARNING_DISABLE_CLANG(text) -# define QT_WARNING_DISABLE_GCC(text) +#define QT_WARNING_PUSH QT_DO_PRAGMA(GCC diagnostic push) +#define QT_WARNING_POP QT_DO_PRAGMA(GCC diagnostic pop) +#define QT_WARNING_DISABLE_GCC(text) QT_DO_PRAGMA(GCC diagnostic ignored text) +#define QT_WARNING_DISABLE_CLANG(text) +#define QT_WARNING_DISABLE_INTEL(number) +#define QT_WARNING_DISABLE_MSVC(number) +#else // All other compilers, GCC < 4.6 and MSVC < 2008 +#define QT_WARNING_DISABLE_GCC(text) +#define QT_WARNING_PUSH +#define QT_WARNING_POP +#define QT_WARNING_DISABLE_INTEL(number) +#define QT_WARNING_DISABLE_MSVC(number) +#define QT_WARNING_DISABLE_CLANG(text) +#define QT_WARNING_DISABLE_GCC(text) #endif #else diff --git a/src/libs/vmisc/projectversion.cpp b/src/libs/vmisc/projectversion.cpp index 980c06a66..2d530ba9e 100644 --- a/src/libs/vmisc/projectversion.cpp +++ b/src/libs/vmisc/projectversion.cpp @@ -28,7 +28,6 @@ #include "projectversion.h" -#include #include #include #include @@ -42,8 +41,8 @@ #define LATEST_TAG_DISTANCE VCS_REPO_STATE_DISTANCE #endif -extern const QString APP_VERSION_STR(QStringLiteral("%1.%2.%3.%4").arg(MAJOR_VERSION).arg(MINOR_VERSION) - .arg(DEBUG_VERSION).arg(LATEST_TAG_DISTANCE)); +extern const QString APP_VERSION_STR( + QStringLiteral("%1.%2.%3.%4").arg(MAJOR_VERSION).arg(MINOR_VERSION).arg(DEBUG_VERSION).arg(LATEST_TAG_DISTANCE)); //--------------------------------------------------------------------------------------------------------------------- auto compilerString() -> QString @@ -62,7 +61,7 @@ auto compilerString() -> QString QString iccVersion; if (__INTEL_COMPILER >= 1300) { - iccVersion = QString::number(__INTEL_COMPILER/100); + iccVersion = QString::number(__INTEL_COMPILER / 100); } else { @@ -77,16 +76,16 @@ auto compilerString() -> QString QLatin1String(__INTEL_COMPILER_BUILD_DATE) + QLatin1String(" [") + iccCompact + QLatin1String(" compatibility]"); #endif -#elif defined(Q_CC_CLANG) // must be before GNU, because clang claims to be GNU too +#elif defined(Q_CC_CLANG) // must be before GNU, because clang claims to be GNU too // cppcheck-suppress unassignedVariable QString isAppleString; #if defined(__apple_build_version__) // Apple clang has other version numbers isAppleString = QLatin1String(" (Apple)"); #endif - return QLatin1String("Clang " ) + QString::number(__clang_major__) + QLatin1Char('.') - + QString::number(__clang_minor__) + isAppleString; + return QLatin1String("Clang ") + QString::number(__clang_major__) + QLatin1Char('.') + + QString::number(__clang_minor__) + isAppleString; #elif defined(Q_CC_GNU) - return QLatin1String("GCC " ) + QLatin1String(__VERSION__); + return QLatin1String("GCC ") + QLatin1String(__VERSION__); #elif defined(Q_CC_MSVC) if (_MSC_VER >= 1800) // 1800: MSVC 2013 (yearly release cycle) { @@ -105,6 +104,6 @@ auto compilerString() -> QString //--------------------------------------------------------------------------------------------------------------------- auto buildCompatibilityString() -> QString { - return QCoreApplication::tr("Based on Qt %1 (%2, %3 bit)").arg(QLatin1String(qVersion()), compilerString(), - QString::number(QSysInfo::WordSize)); + return QCoreApplication::tr("Based on Qt %1 (%2, %3 bit)") + .arg(QLatin1String(qVersion()), compilerString(), QString::number(QSysInfo::WordSize)); } diff --git a/src/libs/vmisc/qxtcsvmodel.h b/src/libs/vmisc/qxtcsvmodel.h index 3e1b00f9d..da8ffef46 100644 --- a/src/libs/vmisc/qxtcsvmodel.h +++ b/src/libs/vmisc/qxtcsvmodel.h @@ -31,7 +31,6 @@ #ifndef QXTCSVMODEL_H #define QXTCSVMODEL_H -#include #include #include #include @@ -57,6 +56,7 @@ class VTextCodec; class QxtCsvModel final : public QAbstractTableModel { Q_OBJECT // NOLINT + public: explicit QxtCsvModel(QObject *parent = nullptr); explicit QxtCsvModel(QIODevice *file, QObject *parent = nullptr, bool withHeader = false, QChar separator = ',', @@ -73,13 +73,13 @@ public: -> QVariant override; virtual auto setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::DisplayRole) -> bool override; - void setHeaderData(const QStringList& data); + void setHeaderData(const QStringList &data); auto text(int row, int column) const -> QString; - void setText(int row, int column, const QString& value); + void setText(int row, int column, const QString &value); auto headerText(int column) const -> QString; - void setHeaderText(int column, const QString& value); + void setHeaderText(int column, const QString &value); auto insertRow(int row, const QModelIndex &parent = QModelIndex()) -> bool; virtual auto insertRows(int row, int count, const QModelIndex &parent = QModelIndex()) -> bool override; @@ -93,24 +93,27 @@ public: auto removeColumn(int col, const QModelIndex &parent = QModelIndex()) -> bool; virtual auto removeColumns(int col, int count, const QModelIndex &parent = QModelIndex()) -> bool override; - void setSource(QIODevice *file, bool withHeader = false, QChar separator = ',', VTextCodec* codec = nullptr); + void setSource(QIODevice *file, bool withHeader = false, QChar separator = ',', VTextCodec *codec = nullptr); void setSource(const QString &filename, bool withHeader = false, QChar separator = ',', - VTextCodec* codec = nullptr); + VTextCodec *codec = nullptr); auto toCSV(QIODevice *file, QString &error, bool withHeader = false, QChar separator = ',', VTextCodec *codec = nullptr) const -> bool; auto toCSV(const QString &filename, QString &error, bool withHeader = false, QChar separator = ',', VTextCodec *codec = nullptr) const -> bool; - enum QuoteOption { NoQuotes = 0, - SingleQuote = 1, - DoubleQuote = 2, - BothQuotes = 3, - NoEscape = 0, - TwoQuoteEscape = 4, - BackslashEscape = 8, - AlwaysQuoteOutput = 16, - DefaultQuoteMode = BothQuotes | BackslashEscape | AlwaysQuoteOutput }; + enum QuoteOption + { + NoQuotes = 0, + SingleQuote = 1, + DoubleQuote = 2, + BothQuotes = 3, + NoEscape = 0, + TwoQuoteEscape = 4, + BackslashEscape = 8, + AlwaysQuoteOutput = 16, + DefaultQuoteMode = BothQuotes | BackslashEscape | AlwaysQuoteOutput + }; Q_DECLARE_FLAGS(QuoteMode, QuoteOption) auto quoteMode() const -> QuoteMode; diff --git a/src/libs/vmisc/svgfont/vsvgfont_p.h b/src/libs/vmisc/svgfont/vsvgfont_p.h index dbb391c31..f30321cda 100644 --- a/src/libs/vmisc/svgfont/vsvgfont_p.h +++ b/src/libs/vmisc/svgfont/vsvgfont_p.h @@ -46,7 +46,7 @@ public: VSvgFontData() = default; explicit VSvgFontData(qreal horizAdvX); VSvgFontData(const VSvgFontData &font) = default; - virtual ~VSvgFontData() = default; + ~VSvgFontData() = default; QString m_id{}; // NOLINT(misc-non-private-member-variables-in-classes) QString m_familyName{}; // NOLINT(misc-non-private-member-variables-in-classes) diff --git a/src/libs/vmisc/svgfont/vsvgfontengine_p.h b/src/libs/vmisc/svgfont/vsvgfontengine_p.h index 18c0a125a..e9f4fac60 100644 --- a/src/libs/vmisc/svgfont/vsvgfontengine_p.h +++ b/src/libs/vmisc/svgfont/vsvgfontengine_p.h @@ -48,7 +48,7 @@ public: VSvgFontEngineData() = default; explicit VSvgFontEngineData(const VSvgFont &font); VSvgFontEngineData(const VSvgFontEngineData &engine) = default; - virtual ~VSvgFontEngineData() = default; + ~VSvgFontEngineData() = default; VSvgFont m_font{}; // NOLINT(misc-non-private-member-variables-in-classes) QHash m_glyphs{}; // NOLINT(misc-non-private-member-variables-in-classes) diff --git a/src/libs/vmisc/svgfont/vsvgglyph_p.h b/src/libs/vmisc/svgfont/vsvgglyph_p.h index 2ba095eaa..394ade356 100644 --- a/src/libs/vmisc/svgfont/vsvgglyph_p.h +++ b/src/libs/vmisc/svgfont/vsvgglyph_p.h @@ -46,7 +46,7 @@ public: VSvgGlyphData() = default; VSvgGlyphData(QChar unicode, const QPainterPath &path, qreal horizAdvX); VSvgGlyphData(const VSvgGlyphData &glyph) = default; - virtual ~VSvgGlyphData() = default; + ~VSvgGlyphData() = default; QChar m_unicode{0}; // NOLINT(misc-non-private-member-variables-in-classes) QPainterPath m_path{}; // NOLINT(misc-non-private-member-variables-in-classes) diff --git a/src/libs/vmisc/vabstractapplication.h b/src/libs/vmisc/vabstractapplication.h index cdf1e5eb7..9a11d9e54 100644 --- a/src/libs/vmisc/vabstractapplication.h +++ b/src/libs/vmisc/vabstractapplication.h @@ -40,7 +40,6 @@ #include #include #include -#include #include "../vmisc/def.h" #include "../vpatterndb/vtranslatevars.h" diff --git a/src/libs/vobj/vobjengine.h b/src/libs/vobj/vobjengine.h index 10f4130a4..7c366d0aa 100644 --- a/src/libs/vobj/vobjengine.h +++ b/src/libs/vobj/vobjengine.h @@ -29,7 +29,7 @@ #ifndef VOBJENGINE_H #define VOBJENGINE_H -#include + #include #include #include diff --git a/src/libs/vobj/vobjpaintdevice.h b/src/libs/vobj/vobjpaintdevice.h index 204b9a967..e5ce565b7 100644 --- a/src/libs/vobj/vobjpaintdevice.h +++ b/src/libs/vobj/vobjpaintdevice.h @@ -29,7 +29,7 @@ #ifndef VOBJPAINTDEVICE_H #define VOBJPAINTDEVICE_H -#include + #include #include #include diff --git a/src/libs/vpatterndb/calculator.cpp b/src/libs/vpatterndb/calculator.cpp index 0ef73a4b6..382042529 100644 --- a/src/libs/vpatterndb/calculator.cpp +++ b/src/libs/vpatterndb/calculator.cpp @@ -28,14 +28,14 @@ #include "calculator.h" -#include #include +#include #include -#include "../vmisc/def.h" #include "../qmuparser/qmuparsererror.h" -#include "variables/vinternalvariable.h" +#include "../vmisc/def.h" #include "../vmisc/vabstractapplication.h" +#include "variables/vinternalvariable.h" //--------------------------------------------------------------------------------------------------------------------- /** @@ -52,9 +52,6 @@ * */ Calculator::Calculator() - : QmuFormulaBase(), - m_varsValues(), - m_vars(nullptr) { InitCharSets(); @@ -88,7 +85,7 @@ auto Calculator::EvalFormula(const QHash qreal return val.data(); } - throw qmu::QmuParserError (qmu::ecUNASSIGNABLE_TOKEN); + throw qmu::QmuParserError(qmu::ecUNASSIGNABLE_TOKEN); } //--------------------------------------------------------------------------------------------------------------------- auto Calculator::Warning(const QString &warningMsg, qreal value) -> qreal { - VAbstractApplication::VApp()->IsPedantic() ? throw qmu::QmuParserWarning(warningMsg) : - qWarning() << VAbstractApplication::warningMessageSignature + warningMsg; + VAbstractApplication::VApp()->IsPedantic() + ? throw qmu::QmuParserWarning(warningMsg) + : qWarning() << VAbstractApplication::warningMessageSignature + warningMsg; return value; } diff --git a/src/libs/vpatterndb/calculator.h b/src/libs/vpatterndb/calculator.h index c1523565e..513e9a397 100644 --- a/src/libs/vpatterndb/calculator.h +++ b/src/libs/vpatterndb/calculator.h @@ -29,7 +29,6 @@ #ifndef CALCULATOR_H #define CALCULATOR_H -#include #include #include #include @@ -61,7 +60,7 @@ class Calculator final : public qmu::QmuFormulaBase { public: Calculator(); - virtual ~Calculator() = default; + ~Calculator() override = default; auto EvalFormula(const QHash> *vars, const QString &formula) -> qreal; @@ -71,8 +70,8 @@ protected: private: Q_DISABLE_COPY_MOVE(Calculator) // NOLINT - QVector> m_varsValues; - const QHash > *m_vars; + QVector> m_varsValues{}; + const QHash> *m_vars{nullptr}; }; #endif // CALCULATOR_H diff --git a/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.cpp b/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.cpp index 33d3fd9f8..c6120d997 100644 --- a/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.cpp +++ b/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.cpp @@ -52,12 +52,12 @@ auto VAbstractFloatItemData::operator=(const VAbstractFloatItemData &data) -> VA #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VAbstractFloatItemData::VAbstractFloatItemData(VAbstractFloatItemData &&data) Q_DECL_NOTHROW +VAbstractFloatItemData::VAbstractFloatItemData(VAbstractFloatItemData &&data) noexcept : d (std::move(data.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VAbstractFloatItemData::operator=(VAbstractFloatItemData &&data) Q_DECL_NOTHROW->VAbstractFloatItemData & +auto VAbstractFloatItemData::operator=(VAbstractFloatItemData &&data) noexcept->VAbstractFloatItemData & { std::swap(d, data.d); return *this; diff --git a/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.h b/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.h index f2fd9373d..79b2af51f 100644 --- a/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.h +++ b/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata.h @@ -44,8 +44,8 @@ public: auto operator=(const VAbstractFloatItemData &data) -> VAbstractFloatItemData &; #ifdef Q_COMPILER_RVALUE_REFS - VAbstractFloatItemData(VAbstractFloatItemData &&data) Q_DECL_NOTHROW; - auto operator=(VAbstractFloatItemData &&data) Q_DECL_NOTHROW->VAbstractFloatItemData &; + VAbstractFloatItemData(VAbstractFloatItemData &&data) noexcept; + auto operator=(VAbstractFloatItemData &&data) noexcept->VAbstractFloatItemData &; #endif // methods, which set and return values of different parameters diff --git a/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata_p.h b/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata_p.h index 67eb3e8e4..eb58a94c5 100644 --- a/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata_p.h +++ b/src/libs/vpatterndb/floatItemData/vabstractfloatitemdata_p.h @@ -44,23 +44,14 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VAbstractFloatItemDataPrivate : public QSharedData { public: - VAbstractFloatItemDataPrivate() - : m_ptPos(), - m_bVisible(false) - {} - - VAbstractFloatItemDataPrivate(const VAbstractFloatItemDataPrivate &data) - : QSharedData(data), - m_ptPos(data.m_ptPos), - m_bVisible(data.m_bVisible) - {} - + VAbstractFloatItemDataPrivate() = default; + VAbstractFloatItemDataPrivate(const VAbstractFloatItemDataPrivate &data) = default; ~VAbstractFloatItemDataPrivate() = default; /** @brief m_ptPos position of label's top left corner */ - QPointF m_ptPos; + QPointF m_ptPos{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_bVisible visibility flag */ - bool m_bVisible; + bool m_bVisible{false}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VAbstractFloatItemDataPrivate) // NOLINT @@ -69,4 +60,3 @@ private: QT_WARNING_POP #endif // VABSTRACTFLOATITEMDATA_P_H - diff --git a/src/libs/vpatterndb/floatItemData/vgrainlinedata.cpp b/src/libs/vpatterndb/floatItemData/vgrainlinedata.cpp index f0caf4650..b951ff16e 100644 --- a/src/libs/vpatterndb/floatItemData/vgrainlinedata.cpp +++ b/src/libs/vpatterndb/floatItemData/vgrainlinedata.cpp @@ -57,13 +57,13 @@ auto VGrainlineData::operator=(const VGrainlineData &data) -> VGrainlineData & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VGrainlineData::VGrainlineData(VGrainlineData &&data) Q_DECL_NOTHROW +VGrainlineData::VGrainlineData(VGrainlineData &&data) noexcept : VAbstractFloatItemData(std::move(data)), d (std::move(data.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VGrainlineData::operator=(VGrainlineData &&data) Q_DECL_NOTHROW->VGrainlineData & +auto VGrainlineData::operator=(VGrainlineData &&data) noexcept->VGrainlineData & { VAbstractFloatItemData::operator=(data); std::swap(d, data.d); diff --git a/src/libs/vpatterndb/floatItemData/vgrainlinedata.h b/src/libs/vpatterndb/floatItemData/vgrainlinedata.h index 5dd49143a..a867ac4b5 100644 --- a/src/libs/vpatterndb/floatItemData/vgrainlinedata.h +++ b/src/libs/vpatterndb/floatItemData/vgrainlinedata.h @@ -51,8 +51,8 @@ public: auto operator=(const VGrainlineData &data) -> VGrainlineData &; #ifdef Q_COMPILER_RVALUE_REFS - VGrainlineData(VGrainlineData &&data) Q_DECL_NOTHROW; - auto operator=(VGrainlineData &&data) Q_DECL_NOTHROW->VGrainlineData &; + VGrainlineData(VGrainlineData &&data) noexcept; + auto operator=(VGrainlineData &&data) noexcept->VGrainlineData &; #endif // methods, which set and return values of different parameters diff --git a/src/libs/vpatterndb/floatItemData/vgrainlinedata_p.h b/src/libs/vpatterndb/floatItemData/vgrainlinedata_p.h index ee67fa65a..2ec463cc0 100644 --- a/src/libs/vpatterndb/floatItemData/vgrainlinedata_p.h +++ b/src/libs/vpatterndb/floatItemData/vgrainlinedata_p.h @@ -46,27 +46,28 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VGrainlineDataPrivate : public QSharedData { public: - VGrainlineDataPrivate() {} // NOLINT(modernize-use-equals-default) + VGrainlineDataPrivate() = default; VGrainlineDataPrivate(const VGrainlineDataPrivate &data) = default; ~VGrainlineDataPrivate() = default; /** @brief m_dLength formula to calculate the length of grainline */ - QString m_qsLength{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_qsLength{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_dRotation formula to calculate the rotation of grainline in [degrees] */ - QString m_dRotation{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_dRotation{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_eArrowType type of arrow on the grainline */ - GrainlineArrowDirection m_eArrowType{GrainlineArrowDirection::twoWaysUpDown}; // NOLINT(misc-non-private-member-variables-in-classes) + GrainlineArrowDirection m_eArrowType{ + GrainlineArrowDirection::twoWaysUpDown}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_centerPin center pin id */ - quint32 m_centerPin{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 m_centerPin{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_topPin top pin id */ - quint32 m_topPin{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 m_topPin{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief m_bottomPin bottom pin id */ - quint32 m_bottomPin{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 m_bottomPin{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VGrainlineDataPrivate) // NOLINT @@ -75,4 +76,3 @@ private: QT_WARNING_POP #endif // VGRAINLINEDATA_P_H - diff --git a/src/libs/vpatterndb/floatItemData/vpatternlabeldata.cpp b/src/libs/vpatterndb/floatItemData/vpatternlabeldata.cpp index b63d5b9bd..5f2b88d10 100644 --- a/src/libs/vpatterndb/floatItemData/vpatternlabeldata.cpp +++ b/src/libs/vpatterndb/floatItemData/vpatternlabeldata.cpp @@ -56,13 +56,13 @@ auto VPatternLabelData::operator=(const VPatternLabelData &data) -> VPatternLabe #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPatternLabelData::VPatternLabelData(VPatternLabelData &&data) Q_DECL_NOTHROW +VPatternLabelData::VPatternLabelData(VPatternLabelData &&data) noexcept : VAbstractFloatItemData(std::move(data)), d (std::move(data.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPatternLabelData::operator=(VPatternLabelData &&data) Q_DECL_NOTHROW->VPatternLabelData & +auto VPatternLabelData::operator=(VPatternLabelData &&data) noexcept->VPatternLabelData & { VAbstractFloatItemData::operator=(data); std::swap(d, data.d); diff --git a/src/libs/vpatterndb/floatItemData/vpatternlabeldata.h b/src/libs/vpatterndb/floatItemData/vpatternlabeldata.h index 42352ab06..183d7a3b3 100644 --- a/src/libs/vpatterndb/floatItemData/vpatternlabeldata.h +++ b/src/libs/vpatterndb/floatItemData/vpatternlabeldata.h @@ -48,8 +48,8 @@ public: auto operator=(const VPatternLabelData &data) -> VPatternLabelData &; #ifdef Q_COMPILER_RVALUE_REFS - VPatternLabelData(VPatternLabelData &&data) Q_DECL_NOTHROW; - auto operator=(VPatternLabelData &&data) Q_DECL_NOTHROW->VPatternLabelData &; + VPatternLabelData(VPatternLabelData &&data) noexcept; + auto operator=(VPatternLabelData &&data) noexcept->VPatternLabelData &; #endif // methods, which set up label parameters diff --git a/src/libs/vpatterndb/floatItemData/vpiecelabeldata.cpp b/src/libs/vpatterndb/floatItemData/vpiecelabeldata.cpp index 065a0bf0a..9e04e05f6 100644 --- a/src/libs/vpatterndb/floatItemData/vpiecelabeldata.cpp +++ b/src/libs/vpatterndb/floatItemData/vpiecelabeldata.cpp @@ -57,13 +57,13 @@ auto VPieceLabelData::operator=(const VPieceLabelData &data) -> VPieceLabelData #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPieceLabelData::VPieceLabelData(VPieceLabelData &&data) Q_DECL_NOTHROW +VPieceLabelData::VPieceLabelData(VPieceLabelData &&data) noexcept : VPatternLabelData(std::move(data)), d (std::move(data.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPieceLabelData::operator=(VPieceLabelData &&data) Q_DECL_NOTHROW->VPieceLabelData & +auto VPieceLabelData::operator=(VPieceLabelData &&data) noexcept->VPieceLabelData & { VPatternLabelData::operator=(data); std::swap(d, data.d); diff --git a/src/libs/vpatterndb/floatItemData/vpiecelabeldata.h b/src/libs/vpatterndb/floatItemData/vpiecelabeldata.h index 5789aac9e..7905a07f7 100644 --- a/src/libs/vpatterndb/floatItemData/vpiecelabeldata.h +++ b/src/libs/vpatterndb/floatItemData/vpiecelabeldata.h @@ -50,8 +50,8 @@ public: auto operator=(const VPieceLabelData &data) -> VPieceLabelData &; #ifdef Q_COMPILER_RVALUE_REFS - VPieceLabelData(VPieceLabelData &&data) Q_DECL_NOTHROW; - auto operator=(VPieceLabelData &&data) Q_DECL_NOTHROW->VPieceLabelData &; + VPieceLabelData(VPieceLabelData &&data) noexcept; + auto operator=(VPieceLabelData &&data) noexcept->VPieceLabelData &; #endif void Clear(); diff --git a/src/libs/vpatterndb/floatItemData/vpiecelabeldata_p.h b/src/libs/vpatterndb/floatItemData/vpiecelabeldata_p.h index 9367aebfe..359555f5a 100644 --- a/src/libs/vpatterndb/floatItemData/vpiecelabeldata_p.h +++ b/src/libs/vpatterndb/floatItemData/vpiecelabeldata_p.h @@ -33,8 +33,8 @@ #include #include -#include "../vmisc/defglobal.h" #include "../ifc/ifcdef.h" +#include "../vmisc/defglobal.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -43,21 +43,21 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPieceLabelDataPrivate : public QSharedData { public: - VPieceLabelDataPrivate(){} // NOLINT(modernize-use-equals-default) + VPieceLabelDataPrivate() = default; VPieceLabelDataPrivate(const VPieceLabelDataPrivate &data) = default; ~VPieceLabelDataPrivate() = default; /** @brief m_qsLetter Detail letter (should be no more than 3 characters) */ - QString m_qsLetter{}; // NOLINT(misc-non-private-member-variables-in-classes) - QString m_annotation{}; // NOLINT(misc-non-private-member-variables-in-classes) - QString m_orientation{}; // NOLINT(misc-non-private-member-variables-in-classes) - QString m_rotationWay{}; // NOLINT(misc-non-private-member-variables-in-classes) - QString m_tilt{}; // NOLINT(misc-non-private-member-variables-in-classes) - QString m_foldPosition{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_qsLetter{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_annotation{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_orientation{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_rotationWay{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_tilt{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_foldPosition{}; // NOLINT(misc-non-private-member-variables-in-classes) QString m_areaShortName{}; // NOLINT(misc-non-private-member-variables-in-classes) quint16 m_quantity{1}; // NOLINT(misc-non-private-member-variables-in-classes) - bool m_onFold{false}; // NOLINT(misc-non-private-member-variables-in-classes) + bool m_onFold{false}; // NOLINT(misc-non-private-member-variables-in-classes) QVector m_lines{}; // NOLINT(misc-non-private-member-variables-in-classes) @@ -68,4 +68,3 @@ private: QT_WARNING_POP #endif // VPIECELABELDATA_P_H - diff --git a/src/libs/vpatterndb/variables/varcradius.cpp b/src/libs/vpatterndb/variables/varcradius.cpp index 128b68215..7924bbe03 100644 --- a/src/libs/vpatterndb/variables/varcradius.cpp +++ b/src/libs/vpatterndb/variables/varcradius.cpp @@ -37,14 +37,13 @@ //--------------------------------------------------------------------------------------------------------------------- VArcRadius::VArcRadius() - :VCurveVariable() { SetType(VarType::ArcRadius); } //--------------------------------------------------------------------------------------------------------------------- VArcRadius::VArcRadius(const quint32 &id, const quint32 &parentId, const VArc *arc, Unit patternUnit) - :VCurveVariable(id, parentId) + : VCurveVariable(id, parentId) { // cppcheck-suppress unknownMacro SCASSERT(arc != nullptr) @@ -62,12 +61,12 @@ VArcRadius::VArcRadius(const quint32 &id, const quint32 &parentId, const VArc *a //--------------------------------------------------------------------------------------------------------------------- VArcRadius::VArcRadius(const quint32 &id, const quint32 &parentId, const VEllipticalArc *elArc, const int numberRadius, Unit patternUnit) - : VCurveVariable(id, parentId) + : VCurveVariable(id, parentId) { SCASSERT(elArc != nullptr) SetType(VarType::ArcRadius); - SetName(radius_V + QString("%1%2").arg(numberRadius).arg(elArc->name())); + SetName(radius_V + QStringLiteral("%1%2").arg(numberRadius).arg(elArc->name())); if (not elArc->GetAlias().isEmpty()) { @@ -84,22 +83,13 @@ VArcRadius::VArcRadius(const quint32 &id, const quint32 &parentId, const VEllipt } } -//--------------------------------------------------------------------------------------------------------------------- -VArcRadius::VArcRadius(const VArcRadius &var) - :VCurveVariable(var) -{} - //--------------------------------------------------------------------------------------------------------------------- auto VArcRadius::operator=(const VArcRadius &var) -> VArcRadius & { - if ( &var == this ) + if (&var == this) { return *this; } VCurveVariable::operator=(var); return *this; } - -//--------------------------------------------------------------------------------------------------------------------- -VArcRadius::~VArcRadius() -{} diff --git a/src/libs/vpatterndb/variables/varcradius.h b/src/libs/vpatterndb/variables/varcradius.h index 4f67cd5f3..a2286be8a 100644 --- a/src/libs/vpatterndb/variables/varcradius.h +++ b/src/libs/vpatterndb/variables/varcradius.h @@ -29,26 +29,28 @@ #ifndef VARCRADIUS_H #define VARCRADIUS_H -#include #include #include "../vmisc/def.h" -#include "../ifc/ifcdef.h" #include "vcurvevariable.h" class VArc; class VEllipticalArc; -class VArcRadius final :public VCurveVariable +class VArcRadius final : public VCurveVariable { public: VArcRadius(); VArcRadius(const quint32 &id, const quint32 &parentId, const VArc *arc, Unit patternUnit); - VArcRadius(const quint32 &id, const quint32 &parentId, const VEllipticalArc *elArc, const int numberRadius, + VArcRadius(const quint32 &id, const quint32 &parentId, const VEllipticalArc *elArc, int numberRadius, Unit patternUnit); - VArcRadius(const VArcRadius &var); + VArcRadius(const VArcRadius &var) = default; auto operator=(const VArcRadius &var) -> VArcRadius &; - virtual ~VArcRadius() override; + ~VArcRadius() override = default; +#ifdef Q_COMPILER_RVALUE_REFS + VArcRadius(VArcRadius &&var) noexcept = default; + auto operator=(VArcRadius &&var) noexcept -> VArcRadius & = default; +#endif }; #endif // VARCRADIUS_H diff --git a/src/libs/vpatterndb/variables/varcradius_p.h b/src/libs/vpatterndb/variables/varcradius_p.h index 15581d944..44650fefe 100644 --- a/src/libs/vpatterndb/variables/varcradius_p.h +++ b/src/libs/vpatterndb/variables/varcradius_p.h @@ -41,30 +41,23 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VArcRadiusData : public QSharedData { public: + VArcRadiusData() = default; + explicit VArcRadiusData(const quint32 &arcId); + VArcRadiusData(const VArcRadiusData &var) = default; + ~VArcRadiusData() = default; - VArcRadiusData() - :arcId(NULL_ID) - {} - - explicit VArcRadiusData(const quint32 &arcId) - :arcId(arcId) - {} - - VArcRadiusData(const VArcRadiusData &var) - :QSharedData(var), arcId(var.arcId) - {} - - virtual ~VArcRadiusData(); - - quint32 arcId; + quint32 arcId{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VArcRadiusData) // NOLINT }; -VArcRadiusData::~VArcRadiusData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VArcRadiusData::VArcRadiusData(const quint32 &arcId) + : arcId(arcId) +{ +} + #endif // VARCRADIUSDATA_H diff --git a/src/libs/vpatterndb/variables/vcurveangle.h b/src/libs/vpatterndb/variables/vcurveangle.h index dd451b5df..82b0fe038 100644 --- a/src/libs/vpatterndb/variables/vcurveangle.h +++ b/src/libs/vpatterndb/variables/vcurveangle.h @@ -29,7 +29,6 @@ #ifndef VCURVEANGLE_H #define VCURVEANGLE_H -#include #include #include @@ -39,7 +38,11 @@ class VAbstractCurve; class VSpline; class VEllipticalArc; -enum class CurveAngle : qint8 { StartAngle, EndAngle }; +enum class CurveAngle : qint8 +{ + StartAngle, + EndAngle +}; class VCurveAngle : public VCurveVariable { @@ -48,6 +51,7 @@ public: VCurveAngle(const quint32 &id, const quint32 &parentId, const VAbstractCurve *curve, CurveAngle angle); VCurveAngle(const quint32 &id, const quint32 &parentId, const VAbstractCurve *baseCurve, const VSpline &spl, CurveAngle angle, qint32 segment); + protected: VCurveAngle(const quint32 &id, const quint32 &parentId); }; diff --git a/src/libs/vpatterndb/variables/vcurveclength.h b/src/libs/vpatterndb/variables/vcurveclength.h index 72a77b22c..a59a94aa1 100644 --- a/src/libs/vpatterndb/variables/vcurveclength.h +++ b/src/libs/vpatterndb/variables/vcurveclength.h @@ -29,13 +29,16 @@ #ifndef VCURVECLENGTH_H #define VCURVECLENGTH_H -#include #include #include #include "vcurvevariable.h" -enum class CurveCLength : qint8 { C1, C2 }; +enum class CurveCLength : qint8 +{ + C1, + C2 +}; class VAbstractBezier; class VSpline; @@ -47,10 +50,10 @@ public: VCurveCLength(const quint32 &id, const quint32 &parentId, const VAbstractBezier *curve, CurveCLength cType, Unit patternUnit); VCurveCLength(const quint32 &id, const quint32 &parentId, const VAbstractBezier *baseCurve, const VSpline &spl, - CurveCLength cType, Unit patternUnit, qint32 segment); + CurveCLength cType, Unit patternUnit, qint32 segment); VCurveCLength(const VCurveCLength &var); auto operator=(const VCurveCLength &var) -> VCurveCLength &; - virtual ~VCurveCLength() override; + ~VCurveCLength() override; }; #endif // VCURVECLENGTH_H diff --git a/src/libs/vpatterndb/variables/vcurvelength.h b/src/libs/vpatterndb/variables/vcurvelength.h index 8ba670b78..efbfe9a2b 100644 --- a/src/libs/vpatterndb/variables/vcurvelength.h +++ b/src/libs/vpatterndb/variables/vcurvelength.h @@ -29,12 +29,10 @@ #ifndef VCURVELENGTH_H #define VCURVELENGTH_H -#include #include #include #include "../vmisc/def.h" -#include "../ifc/ifcdef.h" #include "vcurvevariable.h" class VAbstractCurve; @@ -49,7 +47,7 @@ public: Unit patternUnit, qint32 segment); VCurveLength(const VCurveLength &var); auto operator=(const VCurveLength &var) -> VCurveLength &; - virtual ~VCurveLength() override; + ~VCurveLength() override; }; #endif // VCURVELENGTH_H diff --git a/src/libs/vpatterndb/variables/vcurvevariable.cpp b/src/libs/vpatterndb/variables/vcurvevariable.cpp index 816e94f71..22d07870d 100644 --- a/src/libs/vpatterndb/variables/vcurvevariable.cpp +++ b/src/libs/vpatterndb/variables/vcurvevariable.cpp @@ -29,33 +29,30 @@ #include "vcurvevariable.h" #include "../vmisc/def.h" -#include "../ifc/ifcdef.h" -#include "vinternalvariable.h" #include "vcurvevariable_p.h" +#include "vinternalvariable.h" //--------------------------------------------------------------------------------------------------------------------- VCurveVariable::VCurveVariable() - :VInternalVariable(), d(new VCurveVariableData) + : d(new VCurveVariableData) { SetType(VarType::Unknown); } //--------------------------------------------------------------------------------------------------------------------- VCurveVariable::VCurveVariable(const quint32 &id, const quint32 &parentId) - :VInternalVariable(), d(new VCurveVariableData(id, parentId)) + : d(new VCurveVariableData(id, parentId)) { SetType(VarType::Unknown); } //--------------------------------------------------------------------------------------------------------------------- -VCurveVariable::VCurveVariable(const VCurveVariable &var) - :VInternalVariable(var), d(var.d) -{} +VCurveVariable::VCurveVariable(const VCurveVariable &var) = default; //--------------------------------------------------------------------------------------------------------------------- auto VCurveVariable::operator=(const VCurveVariable &var) -> VCurveVariable & { - if ( &var == this ) + if (&var == this) { return *this; } @@ -66,12 +63,14 @@ auto VCurveVariable::operator=(const VCurveVariable &var) -> VCurveVariable & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VCurveVariable::VCurveVariable(VCurveVariable &&var) Q_DECL_NOTHROW - :VInternalVariable(std::move(var)), d(std::move(var.d)) -{} +VCurveVariable::VCurveVariable(VCurveVariable &&var) noexcept + : VInternalVariable(std::move(var)), + d(std::move(var.d)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -auto VCurveVariable::operator=(VCurveVariable &&var) Q_DECL_NOTHROW->VCurveVariable & +auto VCurveVariable::operator=(VCurveVariable &&var) noexcept -> VCurveVariable & { VInternalVariable::operator=(var); std::swap(d, var.d); @@ -80,8 +79,7 @@ auto VCurveVariable::operator=(VCurveVariable &&var) Q_DECL_NOTHROW->VCurveVaria #endif //--------------------------------------------------------------------------------------------------------------------- -VCurveVariable::~VCurveVariable() -{} +VCurveVariable::~VCurveVariable() = default; //--------------------------------------------------------------------------------------------------------------------- auto VCurveVariable::Filter(quint32 id) -> bool @@ -94,8 +92,8 @@ auto VCurveVariable::Filter(quint32 id) -> bool QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Wnull-dereference") - if (d->parentId != NULL_ID)//Do not check if value zero - {// Not all curves have parents. Only those who was created after cutting the parent curve. + if (d->parentId != NULL_ID) // Do not check if value zero + { // Not all curves have parents. Only those who was created after cutting the parent curve. return d->id == id || d->parentId == id; } diff --git a/src/libs/vpatterndb/variables/vcurvevariable.h b/src/libs/vpatterndb/variables/vcurvevariable.h index 9ff203991..23ef5f7cd 100644 --- a/src/libs/vpatterndb/variables/vcurvevariable.h +++ b/src/libs/vpatterndb/variables/vcurvevariable.h @@ -29,7 +29,6 @@ #ifndef VCURVEVARIABLE_H #define VCURVEVARIABLE_H -#include #include #include #include @@ -44,22 +43,22 @@ public: VCurveVariable(); VCurveVariable(const quint32 &id, const quint32 &parentId); VCurveVariable(const VCurveVariable &var); - - virtual ~VCurveVariable() override; + ~VCurveVariable() override; auto operator=(const VCurveVariable &var) -> VCurveVariable &; #ifdef Q_COMPILER_RVALUE_REFS - VCurveVariable(VCurveVariable &&var) Q_DECL_NOTHROW; - auto operator=(VCurveVariable &&var) Q_DECL_NOTHROW->VCurveVariable &; + VCurveVariable(VCurveVariable &&var) noexcept; + auto operator=(VCurveVariable &&var) noexcept -> VCurveVariable &; #endif - virtual auto Filter(quint32 id) -> bool override; + auto Filter(quint32 id) -> bool override; auto GetId() const -> quint32; - void SetId(const quint32 &id); + void SetId(const quint32 &id); auto GetParentId() const -> quint32; - void SetParentId(const quint32 &value); + void SetParentId(const quint32 &value); + private: QSharedDataPointer d; }; diff --git a/src/libs/vpatterndb/variables/vcurvevariable_p.h b/src/libs/vpatterndb/variables/vcurvevariable_p.h index a705beb57..f114ec816 100644 --- a/src/libs/vpatterndb/variables/vcurvevariable_p.h +++ b/src/libs/vpatterndb/variables/vcurvevariable_p.h @@ -32,6 +32,7 @@ #include #include "../vmisc/defglobal.h" +#include "../vmisc/typedef.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -40,32 +41,25 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VCurveVariableData final : public QSharedData { public: + VCurveVariableData() = default; + VCurveVariableData(const quint32 &id, const quint32 &parentId); + VCurveVariableData(const VCurveVariableData &var) = default; + ~VCurveVariableData() = default; - VCurveVariableData() - {} - - VCurveVariableData(const quint32 &id, const quint32 &parentId) - :id(id), parentId(parentId) - {} - - VCurveVariableData(const VCurveVariableData &var) - :QSharedData(var), - id(var.id), - parentId(var.parentId) - {} - - virtual ~VCurveVariableData(); - - quint32 id{NULL_ID}; - quint32 parentId{NULL_ID}; + quint32 id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 parentId{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VCurveVariableData) // NOLINT }; -VCurveVariableData::~VCurveVariableData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VCurveVariableData::VCurveVariableData(const quint32 &id, const quint32 &parentId) + : id(id), + parentId(parentId) +{ +} + #endif // VCURVELENGTH_P_H diff --git a/src/libs/vpatterndb/variables/vincrement.cpp b/src/libs/vpatterndb/variables/vincrement.cpp index 4c969ade5..bf96a2fee 100644 --- a/src/libs/vpatterndb/variables/vincrement.cpp +++ b/src/libs/vpatterndb/variables/vincrement.cpp @@ -72,12 +72,12 @@ auto VIncrement::operator=(const VIncrement &incr) -> VIncrement & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VIncrement::VIncrement(VIncrement &&incr) Q_DECL_NOTHROW +VIncrement::VIncrement(VIncrement &&incr) noexcept :VVariable(std::move(incr)), d(std::move(incr.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VIncrement::operator=(VIncrement &&incr) Q_DECL_NOTHROW->VIncrement & +auto VIncrement::operator=(VIncrement &&incr) noexcept->VIncrement & { VVariable::operator=(incr); std::swap(d, incr.d); diff --git a/src/libs/vpatterndb/variables/vincrement.h b/src/libs/vpatterndb/variables/vincrement.h index d39fe1f40..9ab99be34 100644 --- a/src/libs/vpatterndb/variables/vincrement.h +++ b/src/libs/vpatterndb/variables/vincrement.h @@ -29,7 +29,6 @@ #ifndef VINCREMENTTABLEROW_H #define VINCREMENTTABLEROW_H -#include #include #include #include @@ -43,7 +42,7 @@ class VContainer; /** * @brief The VIncrement class keep data row of increment table */ -class VIncrement :public VVariable +class VIncrement : public VVariable { public: VIncrement(); @@ -54,15 +53,15 @@ public: auto operator=(const VIncrement &incr) -> VIncrement &; #ifdef Q_COMPILER_RVALUE_REFS - VIncrement(VIncrement &&incr) Q_DECL_NOTHROW; - auto operator=(VIncrement &&incr) Q_DECL_NOTHROW->VIncrement &; + VIncrement(VIncrement &&incr) noexcept; + auto operator=(VIncrement &&incr) noexcept -> VIncrement &; #endif - void SetFormula(qreal base, const QString &formula, bool ok); + void SetFormula(qreal base, const QString &formula, bool ok); auto GetFormula() const -> QString; auto IsFormulaOk() const -> bool; - void SetIndex(quint32 index); + void SetIndex(quint32 index); auto GetIndex() const -> quint32; auto GetData() -> VContainer *; diff --git a/src/libs/vpatterndb/variables/vincrement_p.h b/src/libs/vpatterndb/variables/vincrement_p.h index ae4cb795e..fa486811c 100644 --- a/src/libs/vpatterndb/variables/vincrement_p.h +++ b/src/libs/vpatterndb/variables/vincrement_p.h @@ -43,57 +43,37 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VIncrementData final : public QSharedData { public: - - VIncrementData() - {} - - VIncrementData(VContainer *data, IncrementType incrType) - : data(QSharedPointer(new VContainer(*data))), - incrType(incrType) - { - // When we create an increment in the dialog it will get neccesary data. Such data must be removed because will - // confuse a user. Increment should not know nothing about internal variables. - Q_STATIC_ASSERT_X(static_cast(VarType::Unknown) == 12, "Check that you used all types"); - this->data->ClearVariables(QVector{VarType::LineAngle, - VarType::LineLength, - VarType::CurveLength, - VarType::CurveCLength, - VarType::ArcRadius, - VarType::CurveAngle, - VarType::IncrementSeparator, - VarType::PieceExternalArea, - VarType::PieceSeamLineArea}); - } - - VIncrementData(const VIncrementData &incr) - : QSharedData(incr), - index(incr.index), - formula(incr.formula), - formulaOk(incr.formulaOk), - previewCalculation(incr.previewCalculation), - data(incr.data), - incrType(incr.incrType), - specialUnits(incr.specialUnits) - {} - - virtual ~VIncrementData(); + VIncrementData() = default; + VIncrementData(VContainer *data, IncrementType incrType); + VIncrementData(const VIncrementData &incr) = default; + ~VIncrementData() = default; /** @brief id each increment have unique identificator */ - quint32 index{0}; - QString formula; - bool formulaOk{false}; - bool previewCalculation{false}; - QSharedPointer data; - IncrementType incrType{IncrementType::Increment}; - bool specialUnits{false}; + quint32 index{0}; // NOLINT(misc-non-private-member-variables-in-classes) + QString formula; // NOLINT(misc-non-private-member-variables-in-classes) + bool formulaOk{false}; // NOLINT(misc-non-private-member-variables-in-classes) + bool previewCalculation{false}; // NOLINT(misc-non-private-member-variables-in-classes) + QSharedPointer data; // NOLINT(misc-non-private-member-variables-in-classes) + IncrementType incrType{IncrementType::Increment}; // NOLINT(misc-non-private-member-variables-in-classes) + bool specialUnits{false}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VIncrementData) // NOLINT }; -VIncrementData::~VIncrementData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VIncrementData::VIncrementData(VContainer *data, IncrementType incrType) + : data(QSharedPointer(new VContainer(*data))), + incrType(incrType) +{ + // When we create an increment in the dialog it will get neccesary data. Such data must be removed because will + // confuse a user. Increment should not know nothing about internal variables. + Q_STATIC_ASSERT_X(static_cast(VarType::Unknown) == 12, "Check that you used all types"); + this->data->ClearVariables(QVector{ + VarType::LineAngle, VarType::LineLength, VarType::CurveLength, VarType::CurveCLength, VarType::ArcRadius, + VarType::CurveAngle, VarType::IncrementSeparator, VarType::PieceExternalArea, VarType::PieceSeamLineArea}); +} + #endif // VINCREMENT_P_H diff --git a/src/libs/vpatterndb/variables/vinternalvariable.cpp b/src/libs/vpatterndb/variables/vinternalvariable.cpp index 88f62260e..0dfcb3efd 100644 --- a/src/libs/vpatterndb/variables/vinternalvariable.cpp +++ b/src/libs/vpatterndb/variables/vinternalvariable.cpp @@ -31,18 +31,17 @@ //--------------------------------------------------------------------------------------------------------------------- VInternalVariable::VInternalVariable() - :d(new VInternalVariableData) -{} + : d(new VInternalVariableData) +{ +} //--------------------------------------------------------------------------------------------------------------------- -VInternalVariable::VInternalVariable(const VInternalVariable &var) - :d(var.d) -{} +VInternalVariable::VInternalVariable(const VInternalVariable &var) = default; //--------------------------------------------------------------------------------------------------------------------- auto VInternalVariable::operator=(const VInternalVariable &var) -> VInternalVariable & { - if ( &var == this ) + if (&var == this) { return *this; } @@ -51,13 +50,14 @@ auto VInternalVariable::operator=(const VInternalVariable &var) -> VInternalVari } //--------------------------------------------------------------------------------------------------------------------- -VInternalVariable::VInternalVariable(VInternalVariable &&var) Q_DECL_NOTHROW - :d(std::move(var.d)) -{} +VInternalVariable::VInternalVariable(VInternalVariable &&var) noexcept + : d(std::move(var.d)) +{ +} #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -auto VInternalVariable::operator=(VInternalVariable &&var) Q_DECL_NOTHROW->VInternalVariable & +auto VInternalVariable::operator=(VInternalVariable &&var) noexcept -> VInternalVariable & { std::swap(d, var.d); return *this; @@ -65,8 +65,7 @@ auto VInternalVariable::operator=(VInternalVariable &&var) Q_DECL_NOTHROW->VInte #endif //--------------------------------------------------------------------------------------------------------------------- -VInternalVariable::~VInternalVariable() -{} +VInternalVariable::~VInternalVariable() = default; //--------------------------------------------------------------------------------------------------------------------- auto VInternalVariable::Filter(quint32 id) -> bool @@ -117,7 +116,6 @@ auto VInternalVariable::GetType() const -> VarType return d->type; } - //--------------------------------------------------------------------------------------------------------------------- void VInternalVariable::SetType(const VarType &type) { diff --git a/src/libs/vpatterndb/variables/vinternalvariable.h b/src/libs/vpatterndb/variables/vinternalvariable.h index 829f51e09..ebf123a79 100644 --- a/src/libs/vpatterndb/variables/vinternalvariable.h +++ b/src/libs/vpatterndb/variables/vinternalvariable.h @@ -47,24 +47,23 @@ class VInternalVariable public: VInternalVariable(); VInternalVariable(const VInternalVariable &var); - virtual ~VInternalVariable(); auto operator=(const VInternalVariable &var) -> VInternalVariable &; #ifdef Q_COMPILER_RVALUE_REFS - VInternalVariable(VInternalVariable &&var) Q_DECL_NOTHROW; - auto operator=(VInternalVariable &&var) Q_DECL_NOTHROW->VInternalVariable &; + VInternalVariable(VInternalVariable &&var) noexcept; + auto operator=(VInternalVariable &&var) noexcept -> VInternalVariable &; #endif virtual auto GetValue() const -> qreal; virtual auto GetValue() -> qreal *; auto GetName() const -> QString; - void SetName(const QString &name); + void SetName(const QString &name); auto GetType() const -> VarType; - void SetAlias(const QString &alias); + void SetAlias(const QString &alias); auto GetAlias() const -> QString; virtual auto Filter(quint32 id) -> bool; @@ -74,6 +73,7 @@ public: protected: void SetValue(const qreal &value); void SetType(const VarType &type); + private: QSharedDataPointer d; }; diff --git a/src/libs/vpatterndb/variables/vinternalvariable_p.h b/src/libs/vpatterndb/variables/vinternalvariable_p.h index 8831c96cf..4fca45533 100644 --- a/src/libs/vpatterndb/variables/vinternalvariable_p.h +++ b/src/libs/vpatterndb/variables/vinternalvariable_p.h @@ -29,9 +29,9 @@ #ifndef VINTERNALVARIABLE_P_H #define VINTERNALVARIABLE_P_H -#include #include "../vmisc/def.h" #include "../vmisc/defglobal.h" +#include QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -40,34 +40,22 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VInternalVariableData final : public QSharedData { public: - VInternalVariableData() - {} + VInternalVariableData() = default; + VInternalVariableData(const VInternalVariableData &var) = default; + ~VInternalVariableData() = default; - VInternalVariableData(const VInternalVariableData &var) - :QSharedData(var), - type(var.type), - value(var.value), - name(var.name), - alias(var.alias) - {} - - virtual ~VInternalVariableData(); - - VarType type{VarType::Unknown}; + VarType type{VarType::Unknown}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief value variable's value */ - qreal value{0}; + qreal value{0}; // NOLINT(misc-non-private-member-variables-in-classes) - QString name{}; - QString alias{}; + QString name{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString alias{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VInternalVariableData) // NOLINT }; -VInternalVariableData::~VInternalVariableData() -{} - QT_WARNING_POP #endif // VINTERNALVARIABLE_P_H diff --git a/src/libs/vpatterndb/variables/vlineangle.cpp b/src/libs/vpatterndb/variables/vlineangle.cpp index bbed20544..eae36ea0d 100644 --- a/src/libs/vpatterndb/variables/vlineangle.cpp +++ b/src/libs/vpatterndb/variables/vlineangle.cpp @@ -80,12 +80,12 @@ auto VLineAngle::operator=(const VLineAngle &var) -> VLineAngle & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VLineAngle::VLineAngle(VLineAngle &&var) Q_DECL_NOTHROW +VLineAngle::VLineAngle(VLineAngle &&var) noexcept :VInternalVariable(std::move(var)), d(std::move(var.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VLineAngle::operator=(VLineAngle &&var) Q_DECL_NOTHROW->VLineAngle & +auto VLineAngle::operator=(VLineAngle &&var) noexcept->VLineAngle & { VInternalVariable::operator=(var); std::swap(d, var.d); diff --git a/src/libs/vpatterndb/variables/vlineangle.h b/src/libs/vpatterndb/variables/vlineangle.h index e1b2edce7..7fdd47381 100644 --- a/src/libs/vpatterndb/variables/vlineangle.h +++ b/src/libs/vpatterndb/variables/vlineangle.h @@ -29,7 +29,6 @@ #ifndef VLINEANGLE_H #define VLINEANGLE_H -#include #include #include #include @@ -39,23 +38,24 @@ class VLineAngleData; class VPointF; -class VLineAngle final :public VInternalVariable +class VLineAngle final : public VInternalVariable { public: VLineAngle(); VLineAngle(const VPointF *p1, const quint32 &p1Id, const VPointF *p2, const quint32 &p2Id); VLineAngle(const VLineAngle &var); - - virtual ~VLineAngle() override; + ~VLineAngle() override; auto operator=(const VLineAngle &var) -> VLineAngle &; #ifdef Q_COMPILER_RVALUE_REFS - VLineAngle(VLineAngle &&var) Q_DECL_NOTHROW; - auto operator=(VLineAngle &&var) Q_DECL_NOTHROW->VLineAngle &; + VLineAngle(VLineAngle &&var) noexcept; + auto operator=(VLineAngle &&var) noexcept -> VLineAngle &; #endif virtual auto Filter(quint32 id) -> bool override; - void SetValue(const VPointF *p1, const VPointF *p2); + + void SetValue(const VPointF *p1, const VPointF *p2); + auto GetP1Id() const -> quint32; auto GetP2Id() const -> quint32; diff --git a/src/libs/vpatterndb/variables/vlineangle_p.h b/src/libs/vpatterndb/variables/vlineangle_p.h index f1d681dde..f5799fd00 100644 --- a/src/libs/vpatterndb/variables/vlineangle_p.h +++ b/src/libs/vpatterndb/variables/vlineangle_p.h @@ -41,31 +41,25 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VLineAngleData final : public QSharedData { public: + VLineAngleData() = default; + VLineAngleData(const quint32 &p1Id, const quint32 &p2Id); + VLineAngleData(const VLineAngleData &var) = default; + ~VLineAngleData() = default; - VLineAngleData() - :p1Id(NULL_ID), p2Id(NULL_ID) - {} - - VLineAngleData(const quint32 &p1Id, const quint32 &p2Id) - :p1Id(p1Id), p2Id(p2Id) - {} - - VLineAngleData(const VLineAngleData &var) - :QSharedData(var), p1Id(var.p1Id), p2Id(var.p2Id) - {} - - virtual ~VLineAngleData(); - - quint32 p1Id; - quint32 p2Id; + quint32 p1Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 p2Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VLineAngleData) // NOLINT }; -VLineAngleData::~VLineAngleData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VLineAngleData::VLineAngleData(const quint32 &p1Id, const quint32 &p2Id) + : p1Id(p1Id), + p2Id(p2Id) +{ +} + #endif // VLINEANGLE_P_H diff --git a/src/libs/vpatterndb/variables/vlinelength.cpp b/src/libs/vpatterndb/variables/vlinelength.cpp index a8f72b48f..5330d5ec4 100644 --- a/src/libs/vpatterndb/variables/vlinelength.cpp +++ b/src/libs/vpatterndb/variables/vlinelength.cpp @@ -77,13 +77,13 @@ auto VLengthLine::operator=(const VLengthLine &var) -> VLengthLine & } //--------------------------------------------------------------------------------------------------------------------- -VLengthLine::VLengthLine(VLengthLine &&var) Q_DECL_NOTHROW +VLengthLine::VLengthLine(VLengthLine &&var) noexcept :VInternalVariable(std::move(var)), d(std::move(var.d)) {} #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -auto VLengthLine::operator=(VLengthLine &&var) Q_DECL_NOTHROW->VLengthLine & +auto VLengthLine::operator=(VLengthLine &&var) noexcept->VLengthLine & { VInternalVariable::operator=(var); std::swap(d, var.d); diff --git a/src/libs/vpatterndb/variables/vlinelength.h b/src/libs/vpatterndb/variables/vlinelength.h index a617fe96f..78facbf70 100644 --- a/src/libs/vpatterndb/variables/vlinelength.h +++ b/src/libs/vpatterndb/variables/vlinelength.h @@ -29,35 +29,34 @@ #ifndef VLINELENGTH_H #define VLINELENGTH_H -#include #include #include #include #include "../vmisc/def.h" -#include "../ifc/ifcdef.h" #include "vinternalvariable.h" class VLengthLineData; class VPointF; -class VLengthLine final :public VInternalVariable +class VLengthLine final : public VInternalVariable { public: VLengthLine(); VLengthLine(const VPointF *p1, const quint32 &p1Id, const VPointF *p2, const quint32 &p2Id, Unit patternUnit); VLengthLine(const VLengthLine &var); - - virtual ~VLengthLine() override; + ~VLengthLine() override; auto operator=(const VLengthLine &var) -> VLengthLine &; #ifdef Q_COMPILER_RVALUE_REFS - VLengthLine(VLengthLine &&var) Q_DECL_NOTHROW; - auto operator=(VLengthLine &&var) Q_DECL_NOTHROW->VLengthLine &; + VLengthLine(VLengthLine &&var) noexcept; + auto operator=(VLengthLine &&var) noexcept -> VLengthLine &; #endif virtual auto Filter(quint32 id) -> bool override; - void SetValue(const VPointF *p1, const VPointF *p2); + + void SetValue(const VPointF *p1, const VPointF *p2); + auto GetP1Id() const -> quint32; auto GetP2Id() const -> quint32; diff --git a/src/libs/vpatterndb/variables/vlinelength_p.h b/src/libs/vpatterndb/variables/vlinelength_p.h index c6554f086..0ef224c2b 100644 --- a/src/libs/vpatterndb/variables/vlinelength_p.h +++ b/src/libs/vpatterndb/variables/vlinelength_p.h @@ -31,8 +31,8 @@ #include -#include "../vmisc/defglobal.h" #include "../vmisc/def.h" +#include "../vmisc/defglobal.h" #include "../vmisc/typedef.h" QT_WARNING_PUSH @@ -42,31 +42,27 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VLengthLineData final : public QSharedData { public: - VLengthLineData() - :p1Id(NULL_ID), p2Id(NULL_ID), patternUnit(Unit::Cm) - {} + VLengthLineData() = default; + VLengthLineData(const quint32 &p1Id, const quint32 &p2Id, Unit patternUnit); + VLengthLineData(const VLengthLineData &var) = default; + ~VLengthLineData() = default; - VLengthLineData(const quint32 &p1Id, const quint32 &p2Id, Unit patternUnit) - :p1Id(p1Id), p2Id(p2Id), patternUnit(patternUnit) - {} - - VLengthLineData(const VLengthLineData &var) - :QSharedData(var), p1Id(var.p1Id), p2Id(var.p2Id), patternUnit(var.patternUnit) - {} - - virtual ~VLengthLineData(); - - quint32 p1Id; - quint32 p2Id; - Unit patternUnit; + quint32 p1Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 p2Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + Unit patternUnit{Unit::Cm}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VLengthLineData) // NOLINT }; -VLengthLineData::~VLengthLineData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VLengthLineData::VLengthLineData(const quint32 &p1Id, const quint32 &p2Id, Unit patternUnit) + : p1Id(p1Id), + p2Id(p2Id), + patternUnit(patternUnit) +{ +} + #endif // VLINELENGTH_P_H diff --git a/src/libs/vpatterndb/variables/vmeasurement.cpp b/src/libs/vpatterndb/variables/vmeasurement.cpp index 99ee962cd..71c5a994f 100644 --- a/src/libs/vpatterndb/variables/vmeasurement.cpp +++ b/src/libs/vpatterndb/variables/vmeasurement.cpp @@ -92,12 +92,12 @@ auto VMeasurement::operator=(const VMeasurement &m) -> VMeasurement & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VMeasurement::VMeasurement(VMeasurement &&m) Q_DECL_NOTHROW +VMeasurement::VMeasurement(VMeasurement &&m) noexcept :VVariable(std::move(m)), d(std::move(m.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VMeasurement::operator=(VMeasurement &&m) Q_DECL_NOTHROW->VMeasurement & +auto VMeasurement::operator=(VMeasurement &&m) noexcept->VMeasurement & { VVariable::operator=(m); std::swap(d, m.d); diff --git a/src/libs/vpatterndb/variables/vmeasurement.h b/src/libs/vpatterndb/variables/vmeasurement.h index 9215b0fae..60c77c85b 100644 --- a/src/libs/vpatterndb/variables/vmeasurement.h +++ b/src/libs/vpatterndb/variables/vmeasurement.h @@ -29,7 +29,6 @@ #ifndef VMULTISIZETABLEROW_H #define VMULTISIZETABLEROW_H -#include #include #include #include @@ -38,7 +37,6 @@ #include #include "../vmisc/def.h" -#include "../ifc/ifcdef.h" #include "vvariable.h" class VContainer; @@ -47,7 +45,7 @@ class VMeasurementData; /** * @brief The VMeasurement class keep data row of multisize table */ -class VMeasurement final :public VVariable +class VMeasurement final : public VVariable { public: VMeasurement(quint32 index, const QString &name); @@ -56,16 +54,16 @@ public: bool ok); VMeasurement(const VMeasurement &m); - virtual ~VMeasurement() override; + ~VMeasurement() override; auto operator=(const VMeasurement &m) -> VMeasurement &; #ifdef Q_COMPILER_RVALUE_REFS - VMeasurement(VMeasurement &&m) Q_DECL_NOTHROW; - auto operator=(VMeasurement &&m) Q_DECL_NOTHROW->VMeasurement &; + VMeasurement(VMeasurement &&m) noexcept; + auto operator=(VMeasurement &&m) noexcept -> VMeasurement &; #endif auto GetGuiText() const -> QString; - void SetGuiText(const QString &guiText); + void SetGuiText(const QString &guiText); auto GetFormula() const -> QString; @@ -76,10 +74,10 @@ public: auto GetMeasurementType() const -> MeasurementType; - virtual auto IsNotUsed() const -> bool override; + auto IsNotUsed() const -> bool override; - virtual auto GetValue() const -> qreal override; - virtual auto GetValue() -> qreal * override; + auto GetValue() const -> qreal override; + auto GetValue() -> qreal * override; auto GetData() -> VContainer *; @@ -88,25 +86,25 @@ public: void SetBaseC(qreal base); auto GetBase() const -> qreal; - void SetBase(qreal value); + void SetBase(qreal value); auto GetShiftA() const -> qreal; - void SetShiftA(qreal value); + void SetShiftA(qreal value); auto GetShiftB() const -> qreal; - void SetShiftB(qreal value); + void SetShiftB(qreal value); auto GetShiftC() const -> qreal; - void SetShiftC(qreal value); + void SetShiftC(qreal value); auto GetStepA() const -> qreal; - void SetStepA(qreal value); + void SetStepA(qreal value); auto GetStepB() const -> qreal; - void SetStepB(qreal value); + void SetStepB(qreal value); auto GetStepC() const -> qreal; - void SetStepC(qreal value); + void SetStepC(qreal value); auto IsSpecialUnits() const -> bool; void SetSpecialUnits(bool special); @@ -117,7 +115,7 @@ public: auto GetCorrection(qreal baseA, qreal baseB, qreal baseC) const -> qreal; auto GetCorrections() const -> QMap; - void SetCorrections(const QMap &corrections); + void SetCorrections(const QMap &corrections); static auto CorrectionHash(qreal baseA, qreal baseB = 0, qreal baseC = 0) -> QString; diff --git a/src/libs/vpatterndb/variables/vmeasurement_p.h b/src/libs/vpatterndb/variables/vmeasurement_p.h index 809abbb89..ccec91a42 100644 --- a/src/libs/vpatterndb/variables/vmeasurement_p.h +++ b/src/libs/vpatterndb/variables/vmeasurement_p.h @@ -43,95 +43,75 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VMeasurementData final : public QSharedData { public: + VMeasurementData(quint32 index, MeasurementType varType); + VMeasurementData(quint32 index, qreal baseA, qreal baseB, qreal baseC, qreal base); + VMeasurementData(VContainer *data, quint32 index, const QString &formula, bool ok, qreal base); + VMeasurementData(const VMeasurementData &m) = default; + ~VMeasurementData() = default; - explicit VMeasurementData(quint32 index, MeasurementType varType) - : index(index), - varType(varType) - {} + QSharedPointer data{}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 index; // NOLINT(misc-non-private-member-variables-in-classes) + QString formula{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString gui_text{}; // NOLINT(misc-non-private-member-variables-in-classes) + bool formulaOk{true}; // NOLINT(misc-non-private-member-variables-in-classes) - VMeasurementData(quint32 index, qreal baseA, qreal baseB, qreal baseC, qreal base) - : index(index), - shiftBase(base), - baseA(baseA), - baseB(baseB), - baseC(baseC) - {} + qreal currentBaseA{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal currentBaseB{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal currentBaseC{0}; // NOLINT(misc-non-private-member-variables-in-classes) - VMeasurementData(VContainer *data, quint32 index, const QString &formula, bool ok, qreal base) - : data(QSharedPointer(new VContainer(*data))), - index(index), - formula(formula), - formulaOk(ok), - shiftBase(base) - {} + qreal shiftBase{0}; // NOLINT(misc-non-private-member-variables-in-classes) - VMeasurementData(const VMeasurementData &m) - : QSharedData(m), - data(m.data), - index(m.index), - formula(m.formula), - gui_text(m.gui_text), - formulaOk(m.formulaOk), - currentBaseA(m.currentBaseA), - currentBaseB(m.currentBaseB), - currentBaseC(m.currentBaseC), - shiftBase(m.shiftBase), - shiftA(m.shiftA), - shiftB(m.shiftB), - shiftC(m.shiftC), - stepA(m.stepA), - stepB(m.stepB), - stepC(m.stepC), - baseA(m.baseA), - baseB(m.baseB), - baseC(m.baseC), - corrections(m.corrections), - specialUnits(m.specialUnits), - dimension(m.dimension), - varType(m.varType) - {} + qreal shiftA{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal shiftB{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal shiftC{0}; // NOLINT(misc-non-private-member-variables-in-classes) - virtual ~VMeasurementData(); + qreal stepA{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal stepB{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal stepC{0}; // NOLINT(misc-non-private-member-variables-in-classes) - QSharedPointer data{}; - quint32 index; - QString formula{}; - QString gui_text{}; - bool formulaOk{true}; + qreal baseA{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal baseB{0}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal baseC{0}; // NOLINT(misc-non-private-member-variables-in-classes) - qreal currentBaseA{0}; - qreal currentBaseB{0}; - qreal currentBaseC{0}; + QMap corrections{}; // NOLINT(misc-non-private-member-variables-in-classes) - qreal shiftBase{0}; + bool specialUnits{false}; // NOLINT(misc-non-private-member-variables-in-classes) - qreal shiftA{0}; - qreal shiftB{0}; - qreal shiftC{0}; + IMD dimension{IMD::N}; // NOLINT(misc-non-private-member-variables-in-classes) - qreal stepA{0}; - qreal stepB{0}; - qreal stepC{0}; - - qreal baseA{0}; - qreal baseB{0}; - qreal baseC{0}; - - QMap corrections{}; - - bool specialUnits{false}; - - IMD dimension{IMD::N}; - - MeasurementType varType{MeasurementType::Measurement}; + MeasurementType varType{MeasurementType::Measurement}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VMeasurementData) // NOLINT }; -VMeasurementData::~VMeasurementData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VMeasurementData::VMeasurementData(quint32 index, MeasurementType varType) + : index(index), + varType(varType) +{ +} + +//--------------------------------------------------------------------------------------------------------------------- +inline VMeasurementData::VMeasurementData(quint32 index, qreal baseA, qreal baseB, qreal baseC, qreal base) + : index(index), + shiftBase(base), + baseA(baseA), + baseB(baseB), + baseC(baseC) +{ +} + +//--------------------------------------------------------------------------------------------------------------------- +inline VMeasurementData::VMeasurementData(VContainer *data, quint32 index, const QString &formula, bool ok, qreal base) + : data(QSharedPointer(new VContainer(*data))), + index(index), + formula(formula), + formulaOk(ok), + shiftBase(base) +{ +} + #endif // VMEASUREMENT_P_H diff --git a/src/libs/vpatterndb/variables/vpiecearea.cpp b/src/libs/vpatterndb/variables/vpiecearea.cpp index 3e201707c..cc0fa82e3 100644 --- a/src/libs/vpatterndb/variables/vpiecearea.cpp +++ b/src/libs/vpatterndb/variables/vpiecearea.cpp @@ -83,7 +83,7 @@ auto VPieceArea::operator=(const VPieceArea &var) -> VPieceArea & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPieceArea::VPieceArea(VPieceArea &&var) Q_DECL_NOTHROW +VPieceArea::VPieceArea(VPieceArea &&var) noexcept :VInternalVariable(std::move(var)), d(std::move(var.d)) {} @@ -92,7 +92,7 @@ VPieceArea::~VPieceArea() // NOLINT(modernize-use-equals-default) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPieceArea::operator=(VPieceArea &&var) Q_DECL_NOTHROW -> VPieceArea & +auto VPieceArea::operator=(VPieceArea &&var) noexcept -> VPieceArea & { VInternalVariable::operator=(var); std::swap(d, var.d); diff --git a/src/libs/vpatterndb/variables/vpiecearea.h b/src/libs/vpatterndb/variables/vpiecearea.h index 481a5ae2b..84d80713b 100644 --- a/src/libs/vpatterndb/variables/vpiecearea.h +++ b/src/libs/vpatterndb/variables/vpiecearea.h @@ -46,8 +46,8 @@ public: auto operator=(const VPieceArea &var) -> VPieceArea &; #ifdef Q_COMPILER_RVALUE_REFS - VPieceArea(VPieceArea &&var) Q_DECL_NOTHROW; - auto operator=(VPieceArea &&var) Q_DECL_NOTHROW -> VPieceArea &; + VPieceArea(VPieceArea &&var) noexcept; + auto operator=(VPieceArea &&var) noexcept -> VPieceArea &; #endif void SetValue(quint32 pieceId, const VPiece &piece, const VContainer *data, Unit unit); diff --git a/src/libs/vpatterndb/variables/vpiecearea_p.h b/src/libs/vpatterndb/variables/vpiecearea_p.h index f2c9a933a..ea970d3dd 100644 --- a/src/libs/vpatterndb/variables/vpiecearea_p.h +++ b/src/libs/vpatterndb/variables/vpiecearea_p.h @@ -41,11 +41,7 @@ class VPieceAreaData final : public QSharedData { public: VPieceAreaData() = default; - - explicit VPieceAreaData(quint32 pieceId) - : m_pieceId(pieceId) - {} - + explicit VPieceAreaData(quint32 pieceId); VPieceAreaData(const VPieceAreaData &var) = default; ~VPieceAreaData() = default; @@ -57,4 +53,10 @@ private: QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VPieceAreaData::VPieceAreaData(quint32 pieceId) + : m_pieceId(pieceId) +{ +} + #endif // VPIECEAREA_P_H diff --git a/src/libs/vpatterndb/variables/vvariable.cpp b/src/libs/vpatterndb/variables/vvariable.cpp index ab561618d..2f776c5a0 100644 --- a/src/libs/vpatterndb/variables/vvariable.cpp +++ b/src/libs/vpatterndb/variables/vvariable.cpp @@ -36,25 +36,28 @@ //--------------------------------------------------------------------------------------------------------------------- VVariable::VVariable() - :VInternalVariable(), d(new VVariableData) -{} + : d(new VVariableData) +{ +} //--------------------------------------------------------------------------------------------------------------------- VVariable::VVariable(const QString &name, const QString &description) - :VInternalVariable(), d(new VVariableData(description)) + : d(new VVariableData(description)) { SetName(name); } //--------------------------------------------------------------------------------------------------------------------- -VVariable::VVariable(const VVariable &var) - :VInternalVariable(var), d(var.d) -{} +VVariable::VVariable(const VVariable &var) // NOLINT(modernize-use-equals-default) + : VInternalVariable(var), + d(var.d) +{ +} //--------------------------------------------------------------------------------------------------------------------- auto VVariable::operator=(const VVariable &var) -> VVariable & { - if ( &var == this ) + if (&var == this) { return *this; } @@ -65,12 +68,14 @@ auto VVariable::operator=(const VVariable &var) -> VVariable & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VVariable::VVariable(VVariable &&var) Q_DECL_NOTHROW - :VInternalVariable(std::move(var)), d(std::move(var.d)) -{} +VVariable::VVariable(VVariable &&var) noexcept + : VInternalVariable(std::move(var)), + d(std::move(var.d)) +{ +} //--------------------------------------------------------------------------------------------------------------------- -auto VVariable::operator=(VVariable &&var) Q_DECL_NOTHROW->VVariable & +auto VVariable::operator=(VVariable &&var) noexcept -> VVariable & { VInternalVariable::operator=(var); std::swap(d, var.d); @@ -79,8 +84,9 @@ auto VVariable::operator=(VVariable &&var) Q_DECL_NOTHROW->VVariable & #endif //--------------------------------------------------------------------------------------------------------------------- -VVariable::~VVariable() -{} +VVariable::~VVariable() // NOLINT(modernize-use-equals-default) +{ +} //--------------------------------------------------------------------------------------------------------------------- auto VVariable::GetDescription() const -> QString @@ -88,7 +94,6 @@ auto VVariable::GetDescription() const -> QString return d->description; } - //--------------------------------------------------------------------------------------------------------------------- void VVariable::SetDescription(const QString &desc) { diff --git a/src/libs/vpatterndb/variables/vvariable.h b/src/libs/vpatterndb/variables/vvariable.h index 3321fb492..77eda8655 100644 --- a/src/libs/vpatterndb/variables/vvariable.h +++ b/src/libs/vpatterndb/variables/vvariable.h @@ -29,35 +29,32 @@ #ifndef VVARIABLE_H #define VVARIABLE_H -#include #include #include #include #include -#include "../vmisc/def.h" -#include "../ifc/ifcdef.h" #include "vinternalvariable.h" class VVariableData; -class VVariable :public VInternalVariable +class VVariable : public VInternalVariable { public: VVariable(); explicit VVariable(const QString &name, const QString &description = QString()); VVariable(const VVariable &var); - virtual ~VVariable() override; + ~VVariable() override; auto operator=(const VVariable &var) -> VVariable &; #ifdef Q_COMPILER_RVALUE_REFS - VVariable(VVariable &&var) Q_DECL_NOTHROW; - auto operator=(VVariable &&var) Q_DECL_NOTHROW->VVariable &; + VVariable(VVariable &&var) noexcept; + auto operator=(VVariable &&var) noexcept -> VVariable &; #endif auto GetDescription() const -> QString; - void SetDescription(const QString &desc); + void SetDescription(const QString &desc); private: QSharedDataPointer d; diff --git a/src/libs/vpatterndb/variables/vvariable_p.h b/src/libs/vpatterndb/variables/vvariable_p.h index 20e7e2591..5c6c2e52d 100644 --- a/src/libs/vpatterndb/variables/vvariable_p.h +++ b/src/libs/vpatterndb/variables/vvariable_p.h @@ -40,32 +40,24 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VVariableData final : public QSharedData { public: - - VVariableData() - : description() - {} - - explicit VVariableData(const QString &description) - : description(description) - {} - - VVariableData(const VVariableData &var) - : QSharedData(var), - description(var.description) - {} - - virtual ~VVariableData(); + VVariableData() = default; + explicit VVariableData(const QString &description); + VVariableData(const VVariableData &var) = default; + ~VVariableData() = default; /** @brief description description of increment */ - QString description; + QString description{}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VVariableData) // NOLINT }; -VVariableData::~VVariableData() -{} - QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VVariableData::VVariableData(const QString &description) + : description(description) +{ +} + #endif // VVARIABLE_P_H diff --git a/src/libs/vpatterndb/vcontainer.cpp b/src/libs/vpatterndb/vcontainer.cpp index 3d3585243..c033b7cec 100644 --- a/src/libs/vpatterndb/vcontainer.cpp +++ b/src/libs/vpatterndb/vcontainer.cpp @@ -119,12 +119,13 @@ auto VContainer::operator=(const VContainer &data) -> VContainer & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VContainer::VContainer(VContainer &&data) Q_DECL_NOTHROW : d(std::move(data.d)) +VContainer::VContainer(VContainer &&data) noexcept + : d(std::move(data.d)) { } //--------------------------------------------------------------------------------------------------------------------- -auto VContainer::operator=(VContainer &&data) Q_DECL_NOTHROW->VContainer & +auto VContainer::operator=(VContainer &&data) noexcept -> VContainer & { std::swap(d, data.d); return *this; @@ -785,6 +786,14 @@ auto VContainer::DataVariables() const -> const QHashvariables; } +//--------------------------------------------------------------------------------------------------------------------- +VContainerData::VContainerData(const VTranslateVars *trVars, const Unit *patternUnit, const QString &nspace) + : trVars(trVars), + patternUnit(patternUnit), + nspace(nspace) +{ +} + //--------------------------------------------------------------------------------------------------------------------- VContainerData::~VContainerData() { diff --git a/src/libs/vpatterndb/vcontainer.h b/src/libs/vpatterndb/vcontainer.h index ca96d4046..e8fec7e2e 100644 --- a/src/libs/vpatterndb/vcontainer.h +++ b/src/libs/vpatterndb/vcontainer.h @@ -42,7 +42,6 @@ #include #include #include -#include #include "../ifc/exception/vexceptionbadid.h" #include "../vgeometry/vabstractcubicbezierpath.h" @@ -76,49 +75,32 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VContainerData final : public QSharedData //-V690 { public: - VContainerData(const VTranslateVars *trVars, const Unit *patternUnit, const QString &nspace) - : calculationObjects(QHash>()), - modelingObjects(QSharedPointer>>::create()), - variables(QHash>()), - pieces(QSharedPointer>::create()), - piecePaths(QSharedPointer>::create()), - trVars(trVars), - patternUnit(patternUnit), - nspace(nspace) - { - } - - VContainerData(const VContainerData &data) - : QSharedData(data), - calculationObjects(data.calculationObjects), - modelingObjects(data.modelingObjects), - variables(data.variables), - pieces(data.pieces), - piecePaths(data.piecePaths), - trVars(data.trVars), - patternUnit(data.patternUnit), - nspace(data.nspace) - { - } - + VContainerData(const VTranslateVars *trVars, const Unit *patternUnit, const QString &nspace); + VContainerData(const VContainerData &data) = default; virtual ~VContainerData(); - QHash> calculationObjects; - QSharedPointer>> modelingObjects; + // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes) + QHash> calculationObjects{}; + // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes) + QSharedPointer>> modelingObjects{ + QSharedPointer>>::create()}; /** * @brief variables container for measurements, increments, lines lengths, lines angles, arcs lengths, curve lengths */ - QHash> variables; + // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes) + QHash> variables{}; - QSharedPointer> pieces; - QSharedPointer> piecePaths; + // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes) + QSharedPointer> pieces{QSharedPointer>::create()}; + // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes) + QSharedPointer> piecePaths{QSharedPointer>::create()}; - const VTranslateVars *trVars; - const Unit *patternUnit; + const VTranslateVars *trVars; // NOLINT(misc-non-private-member-variables-in-classes) + const Unit *patternUnit; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief nspace namespace for static variables */ - QString nspace; + QString nspace; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VContainerData) // NOLINT @@ -142,9 +124,8 @@ public: auto operator=(const VContainer &data) -> VContainer &; #ifdef Q_COMPILER_RVALUE_REFS - VContainer(VContainer &&data) Q_DECL_NOTHROW; - auto operator=(VContainer &&data) Q_DECL_NOTHROW - ->VContainer &; + VContainer(VContainer &&data) noexcept; + auto operator=(VContainer &&data) noexcept -> VContainer &; #endif static auto UniqueNamespace() -> QString; @@ -237,8 +218,7 @@ private: void AddCurve(const QSharedPointer &curve, const quint32 &id, quint32 parentId = NULL_ID); - template - void AddVariable(const QSharedPointer &var, const QString &name); + template void AddVariable(const QSharedPointer &var, const QString &name); #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) template auto qHash(const QSharedPointer &p, uint seed = 0) -> uint; diff --git a/src/libs/vpatterndb/vformula_p.h b/src/libs/vpatterndb/vformula_p.h index da17a82a3..ef4d3be1a 100644 --- a/src/libs/vpatterndb/vformula_p.h +++ b/src/libs/vpatterndb/vformula_p.h @@ -28,15 +28,14 @@ #ifndef VFORMULA_P_H #define VFORMULA_P_H +#include +#include + #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) -#include "../vmisc/typedef.h" -#include "../vmisc/vmath.h" #include "../vmisc/defglobal.h" - -#include -#include +#include "../vmisc/typedef.h" class VContainer; @@ -47,42 +46,23 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VFormulaData : public QSharedData { Q_DECLARE_TR_FUNCTIONS(VFormulaData) // NOLINT + public: - VFormulaData() - {} + VFormulaData() = default; + VFormulaData(const QString &formula, const VContainer *container); + VFormulaData(const VFormulaData &formula) = default; + ~VFormulaData() = default; - VFormulaData(const QString &formula, const VContainer *container) - : formula(formula), - data(container), - reason(tr("Not evaluated")) - {} - - VFormulaData (const VFormulaData& formula) - : QSharedData(formula), - formula(formula.formula), - strValue(formula.strValue), - checkZero(formula.checkZero), - checkLessThanZero(formula.checkLessThanZero), - data(formula.data), - toolId(formula.toolId), - postfix(formula.postfix), - error(formula.error), - dValue(formula.dValue), - reason(formula.reason) - {} - - ~VFormulaData() {} - - QString formula{}; - QString strValue{tr("Error")}; - bool checkZero{true}; - bool checkLessThanZero{false}; - const VContainer *data{nullptr}; - quint32 toolId{NULL_ID}; - QString postfix{}; - bool error{true}; - qreal dValue{NAN}; - QString reason{tr("Formula is empty")}; + QString formula{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString strValue{tr("Error")}; // NOLINT(misc-non-private-member-variables-in-classes) + bool checkZero{true}; // NOLINT(misc-non-private-member-variables-in-classes) + bool checkLessThanZero{false}; // NOLINT(misc-non-private-member-variables-in-classes) + const VContainer *data{nullptr}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 toolId{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + QString postfix{}; // NOLINT(misc-non-private-member-variables-in-classes) + bool error{true}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal dValue{NAN}; // NOLINT(misc-non-private-member-variables-in-classes) + QString reason{tr("Formula is empty")}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VFormulaData) // NOLINT @@ -90,4 +70,12 @@ private: QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VFormulaData::VFormulaData(const QString &formula, const VContainer *container) + : formula(formula), + data(container), + reason(tr("Not evaluated")) +{ +} + #endif // VFORMULA_P_H diff --git a/src/libs/vpatterndb/vnodedetail.cpp b/src/libs/vpatterndb/vnodedetail.cpp index cde1ec92a..41c3fd1e1 100644 --- a/src/libs/vpatterndb/vnodedetail.cpp +++ b/src/libs/vpatterndb/vnodedetail.cpp @@ -122,12 +122,12 @@ auto VNodeDetail::operator=(const VNodeDetail &node) -> VNodeDetail & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VNodeDetail::VNodeDetail(VNodeDetail &&node) Q_DECL_NOTHROW +VNodeDetail::VNodeDetail(VNodeDetail &&node) noexcept :d (std::move(node.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VNodeDetail::operator=(VNodeDetail &&node) Q_DECL_NOTHROW->VNodeDetail & +auto VNodeDetail::operator=(VNodeDetail &&node) noexcept->VNodeDetail & { std::swap(d, node.d); return *this; diff --git a/src/libs/vpatterndb/vnodedetail.h b/src/libs/vpatterndb/vnodedetail.h index 7a2417245..aafea7601 100644 --- a/src/libs/vpatterndb/vnodedetail.h +++ b/src/libs/vpatterndb/vnodedetail.h @@ -74,8 +74,8 @@ public: */ auto operator=(const VNodeDetail &node) -> VNodeDetail &; #ifdef Q_COMPILER_RVALUE_REFS - VNodeDetail(VNodeDetail &&node) Q_DECL_NOTHROW; - auto operator=(VNodeDetail &&node) Q_DECL_NOTHROW->VNodeDetail &; + VNodeDetail(VNodeDetail &&node) noexcept; + auto operator=(VNodeDetail &&node) noexcept->VNodeDetail &; #endif /** diff --git a/src/libs/vpatterndb/vnodedetail_p.h b/src/libs/vpatterndb/vnodedetail_p.h index c1658dd64..271382237 100644 --- a/src/libs/vpatterndb/vnodedetail_p.h +++ b/src/libs/vpatterndb/vnodedetail_p.h @@ -30,11 +30,13 @@ #define VNODEDETAIL_P_H #include -#include "../ifc/ifcdef.h" #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) +#include "../vmisc/def.h" +#include "../vmisc/typedef.h" + QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") @@ -42,45 +44,35 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VNodeDetailData : public QSharedData { public: - VNodeDetailData() - :id(NULL_ID), typeTool(Tool::NodePoint), typeNode(NodeDetail::Contour), mx(0), my(0), reverse(false) - {} + VNodeDetailData() = default; + VNodeDetailData(quint32 id, Tool typeTool, NodeDetail typeNode, qreal mx, qreal my, bool reverse); + VNodeDetailData(const VNodeDetailData &node) = default; + ~VNodeDetailData() = default; - VNodeDetailData(quint32 id, Tool typeTool, NodeDetail typeNode, qreal mx, qreal my, bool reverse) - :id(id), typeTool(typeTool), typeNode(typeNode), mx(mx), my(my), reverse(reverse) - {} - - VNodeDetailData (const VNodeDetailData& node) - :QSharedData(node), id(node.id), typeTool(node.typeTool), typeNode(node.typeNode), mx(node.mx), my(node.my), - reverse(node.reverse) - {} - - ~VNodeDetailData() {} - - /** - * @brief id object id. - */ - quint32 id; - /** - * @brief typeTool type of tool - */ - Tool typeTool; - /** - * @brief typeNode node type. - */ - NodeDetail typeNode; - /** - * @brief mx bias x axis. - */ - qreal mx; - /** - * @brief my bias y axis. - */ - qreal my; - /** - * @brief reverse true if need reverse points list for node. - */ - bool reverse; + /** + * @brief id object id. + */ + quint32 id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + /** + * @brief typeTool type of tool + */ + Tool typeTool{Tool::NodePoint}; // NOLINT(misc-non-private-member-variables-in-classes) + /** + * @brief typeNode node type. + */ + NodeDetail typeNode{NodeDetail::Contour}; // NOLINT(misc-non-private-member-variables-in-classes) + /** + * @brief mx bias x axis. + */ + qreal mx{0}; // NOLINT(misc-non-private-member-variables-in-classes) + /** + * @brief my bias y axis. + */ + qreal my{0}; // NOLINT(misc-non-private-member-variables-in-classes) + /** + * @brief reverse true if need reverse points list for node. + */ + bool reverse{false}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VNodeDetailData) // NOLINT @@ -88,4 +80,16 @@ private: QT_WARNING_POP +//--------------------------------------------------------------------------------------------------------------------- +inline VNodeDetailData::VNodeDetailData(quint32 id, Tool typeTool, NodeDetail typeNode, qreal mx, qreal my, + bool reverse) + : id(id), + typeTool(typeTool), + typeNode(typeNode), + mx(mx), + my(my), + reverse(reverse) +{ +} + #endif // VNODEDETAIL_P_H diff --git a/src/libs/vpatterndb/vpiece.cpp b/src/libs/vpatterndb/vpiece.cpp index f97c59039..9f8127cae 100644 --- a/src/libs/vpatterndb/vpiece.cpp +++ b/src/libs/vpatterndb/vpiece.cpp @@ -138,12 +138,12 @@ auto VPiece::operator=(const VPiece &piece) -> VPiece & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPiece::VPiece(VPiece &&piece) Q_DECL_NOTHROW +VPiece::VPiece(VPiece &&piece) noexcept : VAbstractPiece(std::move(piece)), d (std::move(piece.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPiece::operator=(VPiece &&piece) Q_DECL_NOTHROW->VPiece & +auto VPiece::operator=(VPiece &&piece) noexcept->VPiece & { VAbstractPiece::operator=(piece); std::swap(d, piece.d); diff --git a/src/libs/vpatterndb/vpiece.h b/src/libs/vpatterndb/vpiece.h index 52a772f09..9033d946f 100644 --- a/src/libs/vpatterndb/vpiece.h +++ b/src/libs/vpatterndb/vpiece.h @@ -56,8 +56,8 @@ public: auto operator=(const VPiece &piece) -> VPiece &; #ifdef Q_COMPILER_RVALUE_REFS - VPiece(VPiece &&piece) Q_DECL_NOTHROW; - auto operator=(VPiece &&piece) Q_DECL_NOTHROW->VPiece &; + VPiece(VPiece &&piece) noexcept; + auto operator=(VPiece &&piece) noexcept->VPiece &; #endif auto GetPath() const -> VPiecePath; diff --git a/src/libs/vpatterndb/vpiece_p.h b/src/libs/vpatterndb/vpiece_p.h index ed58e47c8..2f8490a1d 100644 --- a/src/libs/vpatterndb/vpiece_p.h +++ b/src/libs/vpatterndb/vpiece_p.h @@ -36,10 +36,10 @@ #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/def.h" -#include "vpiecepath.h" -#include "floatItemData/vpiecelabeldata.h" -#include "floatItemData/vpatternlabeldata.h" #include "floatItemData/vgrainlinedata.h" +#include "floatItemData/vpatternlabeldata.h" +#include "floatItemData/vpiecelabeldata.h" +#include "vpiecepath.h" QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Weffc++") @@ -48,24 +48,20 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPieceData : public QSharedData { public: - explicit VPieceData(PiecePathType type) - : m_path(type) - {} - + explicit VPieceData(PiecePathType type); VPieceData(const VPieceData &detail) = default; - ~VPieceData() = default; /** @brief nodes list detail nodes. */ VPiecePath m_path; // NOLINT(misc-non-private-member-variables-in-classes) bool m_inLayout{true}; // NOLINT(misc-non-private-member-variables-in-classes) - bool m_united{false}; // NOLINT(misc-non-private-member-variables-in-classes) + bool m_united{false}; // NOLINT(misc-non-private-member-variables-in-classes) QVector m_customSARecords{}; // NOLINT(misc-non-private-member-variables-in-classes) - QVector m_internalPaths{}; // NOLINT(misc-non-private-member-variables-in-classes) - QVector m_pins{}; // NOLINT(misc-non-private-member-variables-in-classes) - QVector m_placeLabels{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_internalPaths{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_pins{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector m_placeLabels{}; // NOLINT(misc-non-private-member-variables-in-classes) /** @brief Pattern piece data */ VPieceLabelData m_ppData{}; // NOLINT(misc-non-private-member-variables-in-classes) @@ -88,5 +84,10 @@ private: QT_WARNING_POP -#endif // VPIECE_P_H +//--------------------------------------------------------------------------------------------------------------------- +inline VPieceData::VPieceData(PiecePathType type) + : m_path(type) +{ +} +#endif // VPIECE_P_H diff --git a/src/libs/vpatterndb/vpiecenode.cpp b/src/libs/vpatterndb/vpiecenode.cpp index 55721da6e..b70f48a28 100644 --- a/src/libs/vpatterndb/vpiecenode.cpp +++ b/src/libs/vpatterndb/vpiecenode.cpp @@ -64,12 +64,12 @@ auto VPieceNode::operator=(const VPieceNode &node) -> VPieceNode & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPieceNode::VPieceNode(VPieceNode &&node) Q_DECL_NOTHROW +VPieceNode::VPieceNode(VPieceNode &&node) noexcept : d (std::move(node.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPieceNode::operator=(VPieceNode &&node) Q_DECL_NOTHROW->VPieceNode & +auto VPieceNode::operator=(VPieceNode &&node) noexcept->VPieceNode & { std::swap(d, node.d); return *this; diff --git a/src/libs/vpatterndb/vpiecenode.h b/src/libs/vpatterndb/vpiecenode.h index 3db38b895..70ee6602f 100644 --- a/src/libs/vpatterndb/vpiecenode.h +++ b/src/libs/vpatterndb/vpiecenode.h @@ -49,8 +49,8 @@ public: auto operator=(const VPieceNode &node) -> VPieceNode &; #ifdef Q_COMPILER_RVALUE_REFS - VPieceNode(VPieceNode &&node) Q_DECL_NOTHROW; - auto operator=(VPieceNode &&node) Q_DECL_NOTHROW->VPieceNode &; + VPieceNode(VPieceNode &&node) noexcept; + auto operator=(VPieceNode &&node) noexcept->VPieceNode &; #endif friend auto operator<<(QDataStream &out, const VPieceNode &p) -> QDataStream &; diff --git a/src/libs/vpatterndb/vpiecenode_p.h b/src/libs/vpatterndb/vpiecenode_p.h index c66d06062..f746decdc 100644 --- a/src/libs/vpatterndb/vpiecenode_p.h +++ b/src/libs/vpatterndb/vpiecenode_p.h @@ -29,17 +29,17 @@ #ifndef VPIECENODE_P_H #define VPIECENODE_P_H -#include -#include #include +#include +#include -#include "../ifc/ifcdef.h" #include "../ifc/exception/vexception.h" +#include "../ifc/ifcdef.h" #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #if QT_VERSION < QT_VERSION_CHECK(5, 14, 0) -# include "../vmisc/vdatastreamenum.h" +#include "../vmisc/vdatastreamenum.h" #endif QT_WARNING_PUSH @@ -49,22 +49,9 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPieceNodeData : public QSharedData { public: - VPieceNodeData() - {} - - VPieceNodeData(quint32 id, Tool typeTool, bool reverse) - : m_id(id), - m_typeTool(typeTool), - m_reverse(reverse) - { - if (m_typeTool == Tool::NodePoint) - { - m_reverse = false; - } - } - - VPieceNodeData (const VPieceNodeData& node) = default; - + VPieceNodeData() = default; + VPieceNodeData(quint32 id, Tool typeTool, bool reverse); + VPieceNodeData(const VPieceNodeData &node) = default; ~VPieceNodeData() = default; friend auto operator<<(QDataStream &out, const VPieceNodeData &p) -> QDataStream &; @@ -124,11 +111,23 @@ private: }; // See https://stackoverflow.com/a/46719572/3045403 -#if __cplusplus < 201703L // C++17 -constexpr quint32 VPieceNodeData::streamHeader; // NOLINT(readability-redundant-declaration) -constexpr quint16 VPieceNodeData::classVersion; // NOLINT(readability-redundant-declaration) +#if __cplusplus < 201703L // C++17 +constexpr quint32 VPieceNodeData::streamHeader; // NOLINT(readability-redundant-declaration) +constexpr quint16 VPieceNodeData::classVersion; // NOLINT(readability-redundant-declaration) #endif +//--------------------------------------------------------------------------------------------------------------------- +inline VPieceNodeData::VPieceNodeData(quint32 id, Tool typeTool, bool reverse) + : m_id(id), + m_typeTool(typeTool), + m_reverse(reverse) +{ + if (m_typeTool == Tool::NodePoint) + { + m_reverse = false; + } +} + // Friend functions //--------------------------------------------------------------------------------------------------------------------- inline auto operator<<(QDataStream &out, const VPieceNodeData &p) -> QDataStream & @@ -154,8 +153,8 @@ inline auto operator>>(QDataStream &in, VPieceNodeData &p) -> QDataStream & { QString message = QCoreApplication::tr("VPieceNodeData prefix mismatch error: actualStreamHeader = 0x%1 " "and streamHeader = 0x%2") - .arg(actualStreamHeader, 8, 0x10, QChar('0')) - .arg(VPieceNodeData::streamHeader, 8, 0x10, QChar('0')); + .arg(actualStreamHeader, 8, 0x10, QChar('0')) + .arg(VPieceNodeData::streamHeader, 8, 0x10, QChar('0')); throw VException(message); } @@ -166,24 +165,14 @@ inline auto operator>>(QDataStream &in, VPieceNodeData &p) -> QDataStream & { QString message = QCoreApplication::tr("VPieceNodeData compatibility error: actualClassVersion = %1 and " "classVersion = %2") - .arg(actualClassVersion).arg(VPieceNodeData::classVersion); + .arg(actualClassVersion) + .arg(VPieceNodeData::classVersion); throw VException(message); } - in >> p.m_id - >> p.m_typeTool - >> p.m_reverse - >> p.m_excluded - >> p.m_isPassmark - >> p.m_formulaWidthBefore - >> p.m_formulaWidthAfter - >> p.m_formulaPassmarkLength - >> p.m_angleType - >> p.m_passmarkLineType - >> p.m_passmarkAngleType - >> p.m_isShowSecondPassmark - >> p.m_checkUniqueness - >> p.m_manualPassmarkLength; + in >> p.m_id >> p.m_typeTool >> p.m_reverse >> p.m_excluded >> p.m_isPassmark >> p.m_formulaWidthBefore >> + p.m_formulaWidthAfter >> p.m_formulaPassmarkLength >> p.m_angleType >> p.m_passmarkLineType >> + p.m_passmarkAngleType >> p.m_isShowSecondPassmark >> p.m_checkUniqueness >> p.m_manualPassmarkLength; if (actualClassVersion >= 2) { @@ -202,4 +191,3 @@ inline auto operator>>(QDataStream &in, VPieceNodeData &p) -> QDataStream & QT_WARNING_POP #endif // VPIECENODE_P_H - diff --git a/src/libs/vpatterndb/vpiecepath.cpp b/src/libs/vpatterndb/vpiecepath.cpp index 23dbdc908..54b67ef89 100644 --- a/src/libs/vpatterndb/vpiecepath.cpp +++ b/src/libs/vpatterndb/vpiecepath.cpp @@ -268,12 +268,12 @@ auto VPiecePath::operator=(const VPiecePath &path) -> VPiecePath & #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPiecePath::VPiecePath(VPiecePath &&path) Q_DECL_NOTHROW +VPiecePath::VPiecePath(VPiecePath &&path) noexcept : d (std::move(path.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPiecePath::operator=(VPiecePath &&path) Q_DECL_NOTHROW->VPiecePath & +auto VPiecePath::operator=(VPiecePath &&path) noexcept->VPiecePath & { std::swap(d, path.d); return *this; diff --git a/src/libs/vpatterndb/vpiecepath.h b/src/libs/vpatterndb/vpiecepath.h index 313da9712..eadad4540 100644 --- a/src/libs/vpatterndb/vpiecepath.h +++ b/src/libs/vpatterndb/vpiecepath.h @@ -55,8 +55,8 @@ public: auto operator=(const VPiecePath &path) -> VPiecePath &; #ifdef Q_COMPILER_RVALUE_REFS - VPiecePath(VPiecePath &&path) Q_DECL_NOTHROW; - auto operator=(VPiecePath &&path) Q_DECL_NOTHROW->VPiecePath &; + VPiecePath(VPiecePath &&path) noexcept; + auto operator=(VPiecePath &&path) noexcept->VPiecePath &; #endif void Append(const VPieceNode &node); diff --git a/src/libs/vpatterndb/vpiecepath_p.h b/src/libs/vpatterndb/vpiecepath_p.h index 7692995ff..f6890730d 100644 --- a/src/libs/vpatterndb/vpiecepath_p.h +++ b/src/libs/vpatterndb/vpiecepath_p.h @@ -44,44 +44,30 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPiecePathData : public QSharedData { public: - VPiecePathData() - {} + VPiecePathData() = default; + explicit VPiecePathData(PiecePathType type); + VPiecePathData(const VPiecePathData &path) = default; + ~VPiecePathData() = default; - explicit VPiecePathData(PiecePathType type) - : m_type(type) - {} - - VPiecePathData(const VPiecePathData &path) - : QSharedData(path), - m_nodes(path.m_nodes), - m_type(path.m_type), - m_name(path.m_name), - m_penType(path.m_penType), - m_cut(path.m_cut), - m_visibilityTrigger(path.m_visibilityTrigger), - m_firstToCuttingContour(path.m_firstToCuttingContour), - m_lastToCuttingContour(path.m_lastToCuttingContour) - {} - - ~VPiecePathData(); - - QVector m_nodes{}; - PiecePathType m_type{PiecePathType::Unknown}; - QString m_name{}; - Qt::PenStyle m_penType{Qt::SolidLine}; - bool m_cut{false}; - QString m_visibilityTrigger{'1'}; - bool m_firstToCuttingContour{false}; - bool m_lastToCuttingContour{false}; + QVector m_nodes{}; // NOLINT(misc-non-private-member-variables-in-classes) + PiecePathType m_type{PiecePathType::Unknown}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_name{}; // NOLINT(misc-non-private-member-variables-in-classes) + Qt::PenStyle m_penType{Qt::SolidLine}; // NOLINT(misc-non-private-member-variables-in-classes) + bool m_cut{false}; // NOLINT(misc-non-private-member-variables-in-classes) + QString m_visibilityTrigger{'1'}; // NOLINT(misc-non-private-member-variables-in-classes) + bool m_firstToCuttingContour{false}; // NOLINT(misc-non-private-member-variables-in-classes) + bool m_lastToCuttingContour{false}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VPiecePathData) // NOLINT }; -VPiecePathData::~VPiecePathData() -{} - QT_WARNING_POP -#endif // VPIECEPATH_P_H +//--------------------------------------------------------------------------------------------------------------------- +inline VPiecePathData::VPiecePathData(PiecePathType type) + : m_type(type) +{ +} +#endif // VPIECEPATH_P_H diff --git a/src/libs/vpatterndb/vtranslatevars.h b/src/libs/vpatterndb/vtranslatevars.h index 0f47ef44c..7a3e0974c 100644 --- a/src/libs/vpatterndb/vtranslatevars.h +++ b/src/libs/vpatterndb/vtranslatevars.h @@ -29,11 +29,10 @@ #ifndef VTRANSLATEVARS_H #define VTRANSLATEVARS_H -#include #include -#include "vtranslatemeasurements.h" #include "../vmisc/defglobal.h" +#include "vtranslatemeasurements.h" class VTranslateVars : public VTranslateMeasurements { @@ -41,10 +40,10 @@ public: explicit VTranslateVars(); ~VTranslateVars() override = default; - auto VariablesFromUser(QString &newFormula, vsizetype position, const QString &token, - vsizetype &bias) const -> bool; - auto FunctionsFromUser(QString &newFormula, vsizetype position, const QString &token, - vsizetype &bias) const -> bool; + auto VariablesFromUser(QString &newFormula, vsizetype position, const QString &token, vsizetype &bias) const + -> bool; + auto FunctionsFromUser(QString &newFormula, vsizetype position, const QString &token, vsizetype &bias) const + -> bool; auto VariablesToUser(QString &newFormula, vsizetype position, const QString &token, vsizetype &bias) const -> bool; auto InternalVarToUser(const QString &var) const -> QString; @@ -73,7 +72,7 @@ public: private: // cppcheck-suppress unknownMacro - Q_DISABLE_COPY_MOVE(VTranslateVars) //NOLINT + Q_DISABLE_COPY_MOVE(VTranslateVars) // NOLINT QMap PMSystemNames{}; QMap PMSystemAuthors{}; QMap PMSystemBooks{}; diff --git a/src/libs/vpropertyexplorer/checkablemessagebox.h b/src/libs/vpropertyexplorer/checkablemessagebox.h index 72935a7d0..16498cbe9 100644 --- a/src/libs/vpropertyexplorer/checkablemessagebox.h +++ b/src/libs/vpropertyexplorer/checkablemessagebox.h @@ -18,7 +18,6 @@ #ifndef CHECKABLEMESSAGEBOX_H #define CHECKABLEMESSAGEBOX_H -#include #include #include #include @@ -99,7 +98,7 @@ public: // See static QMessageBox::standardPixmap() auto iconPixmap() const -> QPixmap; - void setIconPixmap (const QPixmap &p); + void setIconPixmap(const QPixmap &p); // Query the result auto clickedButton() const -> QAbstractButton *; @@ -119,13 +118,16 @@ private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(CheckableMessageBox) // NOLINT CheckableMessageBoxPrivate *d; - enum DoNotAskAgainType{Question, Information}; + enum DoNotAskAgainType + { + Question, + Information + }; static auto askAgain(QSettings *settings, const QString &settingsSubKey) -> bool; - static void initDoNotAskAgainMessageBox(CheckableMessageBox &messageBox, const QString &title, - const QString &text, QDialogButtonBox::StandardButtons buttons, - QDialogButtonBox::StandardButton defaultButton, - DoNotAskAgainType type); + static void initDoNotAskAgainMessageBox(CheckableMessageBox &messageBox, const QString &title, const QString &text, + QDialogButtonBox::StandardButtons buttons, + QDialogButtonBox::StandardButton defaultButton, DoNotAskAgainType type); static void doNotAskAgain(QSettings *settings, const QString &settingsSubKey); }; diff --git a/src/libs/vpropertyexplorer/plugins/Vector3d/vvector3dproperty.h b/src/libs/vpropertyexplorer/plugins/Vector3d/vvector3dproperty.h index 220e480ef..0ebbd0f94 100644 --- a/src/libs/vpropertyexplorer/plugins/Vector3d/vvector3dproperty.h +++ b/src/libs/vpropertyexplorer/plugins/Vector3d/vvector3dproperty.h @@ -21,7 +21,7 @@ #ifndef VVECTOR3DPROPERTY_H #define VVECTOR3DPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vboolproperty.h b/src/libs/vpropertyexplorer/plugins/vboolproperty.h index 29f276f46..91d0a90df 100644 --- a/src/libs/vpropertyexplorer/plugins/vboolproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vboolproperty.h @@ -21,14 +21,13 @@ #ifndef VBOOLPROPERTY_H #define VBOOLPROPERTY_H -#include -#include #include #include #include #include #include #include +#include #include "../vproperty.h" #include "../vpropertyexplorer_global.h" @@ -43,9 +42,10 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") class VPROPERTYEXPLORERSHARED_EXPORT VBoolProperty : public VProperty { Q_OBJECT // NOLINT + public: //! Default constructor - explicit VBoolProperty(const QString& name); + explicit VBoolProperty(const QString &name); //! Destructor ~VBoolProperty() override = default; @@ -58,17 +58,17 @@ public: //! \options Render options //! \delegate A pointer to the QAbstractItemDelegate requesting the editor. This can be used to connect signals and //! slots. - auto createEditor(QWidget* parent, const QStyleOptionViewItem& options, - const QAbstractItemDelegate* delegate) -> QWidget* override; + auto createEditor(QWidget *parent, const QStyleOptionViewItem &options, const QAbstractItemDelegate *delegate) + -> QWidget * override; //! Sets the property's data to the editor (returns false, if the standard delegate should do that) - auto setEditorData(QWidget* editor) -> bool override; + auto setEditorData(QWidget *editor) -> bool override; //! Gets the data from the widget - auto getEditorData(const QWidget* editor) const -> QVariant override; + auto getEditorData(const QWidget *editor) const -> QVariant override; //! Sets the value of the property - void setValue(const QVariant& value) override; + void setValue(const QVariant &value) override; //! Returns item flags auto flags(int column = DPC_Name) const -> Qt::ItemFlags override; @@ -81,7 +81,7 @@ public: //! \param container If a property is being passed here, no new VProperty is being created but instead it is tried //! to fill all the data into container. This can also be used when subclassing this function. //! \return Returns the newly created property (or container, if it was not NULL) - auto clone(bool include_children = true, VProperty* container = NULL) const -> VProperty* override; + auto clone(bool include_children = true, VProperty *container = NULL) const -> VProperty * override; public slots: void StateChanged(); @@ -92,6 +92,6 @@ private: QT_WARNING_POP -} // namespace VPE +} // namespace VPE #endif // VBOOLPROPERTY_H diff --git a/src/libs/vpropertyexplorer/plugins/vcolorproperty.h b/src/libs/vpropertyexplorer/plugins/vcolorproperty.h index 82f5e7ec4..fce23807a 100644 --- a/src/libs/vpropertyexplorer/plugins/vcolorproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vcolorproperty.h @@ -21,8 +21,6 @@ #ifndef VCOLORPROPERTY_H #define VCOLORPROPERTY_H -#include -#include #include #include #include @@ -30,6 +28,7 @@ #include #include #include +#include #include "../vproperty.h" #include "../vpropertyexplorer_global.h" @@ -43,6 +42,7 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") class VPROPERTYEXPLORERSHARED_EXPORT VColorProperty : public VProperty { Q_OBJECT // NOLINT + public: explicit VColorProperty(const QString &name); @@ -79,6 +79,6 @@ private: QT_WARNING_POP -} +} // namespace VPE #endif // VCOLORPROPERTY_H diff --git a/src/libs/vpropertyexplorer/plugins/vcolorpropertyeditor.h b/src/libs/vpropertyexplorer/plugins/vcolorpropertyeditor.h index 8109edf1d..2c550ad68 100644 --- a/src/libs/vpropertyexplorer/plugins/vcolorpropertyeditor.h +++ b/src/libs/vpropertyexplorer/plugins/vcolorpropertyeditor.h @@ -21,7 +21,6 @@ #ifndef VCOLORPROPERTYEDITOR_H #define VCOLORPROPERTYEDITOR_H -#include #include #include #include @@ -50,7 +49,6 @@ public: //! Destructor virtual ~VColorPropertyEditor() override; - //! Returns the color currently set auto GetColor() const -> QColor; @@ -70,7 +68,7 @@ public: signals: //! This is emitted, when the user changes the color - void dataChangedByUser(const QColor &GetColor, VColorPropertyEditor* editor); + void dataChangedByUser(const QColor &GetColor, VColorPropertyEditor *editor); void dataChanged(); @@ -85,12 +83,12 @@ private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(VColorPropertyEditor) // NOLINT QColor Color; - QToolButton* ToolButton; - QLabel* TextLabel; - QLabel* ColorLabel; - QSpacerItem* Spacer; + QToolButton *ToolButton; + QLabel *TextLabel; + QLabel *ColorLabel; + QSpacerItem *Spacer; }; -} +} // namespace VPE #endif // QFILEPROPERTYEDITOR_H diff --git a/src/libs/vpropertyexplorer/plugins/vemptyproperty.h b/src/libs/vpropertyexplorer/plugins/vemptyproperty.h index e478169a6..fc1a68f84 100644 --- a/src/libs/vpropertyexplorer/plugins/vemptyproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vemptyproperty.h @@ -21,7 +21,6 @@ #ifndef VEMPTYPROPERTY_H #define VEMPTYPROPERTY_H -#include #include #include #include @@ -36,7 +35,7 @@ namespace VPE { class VPropertyPrivate; -} // namespace VPE +} // namespace VPE namespace VPE { @@ -47,9 +46,10 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") class VPROPERTYEXPLORERSHARED_EXPORT VEmptyProperty : public VProperty { Q_OBJECT // NOLINT + public: //! Standard constructor, takes a name and a parent property as argument - explicit VEmptyProperty(const QString& name); + explicit VEmptyProperty(const QString &name); //! Destructor virtual ~VEmptyProperty() override; @@ -84,7 +84,7 @@ public: protected: //! Protected constructor - explicit VEmptyProperty(VPropertyPrivate* d); + explicit VEmptyProperty(VPropertyPrivate *d); private: Q_DISABLE_COPY_MOVE(VEmptyProperty) // NOLINT @@ -92,6 +92,6 @@ private: QT_WARNING_POP -} +} // namespace VPE #endif // VEMPTYPROPERTY_H diff --git a/src/libs/vpropertyexplorer/plugins/venumproperty.h b/src/libs/vpropertyexplorer/plugins/venumproperty.h index cce62b2ab..7a3820e0c 100644 --- a/src/libs/vpropertyexplorer/plugins/venumproperty.h +++ b/src/libs/vpropertyexplorer/plugins/venumproperty.h @@ -21,7 +21,6 @@ #ifndef VENUMPROPERTY_H #define VENUMPROPERTY_H -#include #include #include #include @@ -44,9 +43,10 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") class VPROPERTYEXPLORERSHARED_EXPORT VEnumProperty : public VProperty { Q_OBJECT // NOLINT + public: //! Constructor - explicit VEnumProperty(const QString& name); + explicit VEnumProperty(const QString &name); //! Destructor virtual ~VEnumProperty() override {} @@ -72,7 +72,7 @@ public: virtual auto getLiterals() const -> QStringList; //! Sets the value of the property - virtual void setValue(const QVariant& value) override; + virtual void setValue(const QVariant &value) override; //! Returns a string containing the type of the property virtual auto type() const -> QString override; @@ -88,7 +88,7 @@ public: //! Sets the settings. Available settings: //! //! key: "literals" - value: "item1;;item2;;item3" - virtual void setSetting(const QString& key, const QVariant& value) override; + virtual void setSetting(const QString &key, const QVariant &value) override; //! Get the settings. This function has to be implemented in a subclass in order to have an effect virtual auto getSetting(const QString &key) const -> QVariant override; @@ -103,13 +103,14 @@ protected: //! The list of possible options to choose from QStringList EnumerationLiterals; // No use of d-pointer in this case, because it is unlikely this will change. If it does, we can still add other - //members by reimplementing the VPropertyPrivate class without touching this header file. + // members by reimplementing the VPropertyPrivate class without touching this header file. + private: Q_DISABLE_COPY_MOVE(VEnumProperty) // NOLINT }; QT_WARNING_POP -} +} // namespace VPE #endif // VENUMPROPERTY_H diff --git a/src/libs/vpropertyexplorer/plugins/vfileproperty.h b/src/libs/vpropertyexplorer/plugins/vfileproperty.h index 8bc8ea7ec..b80497bdc 100644 --- a/src/libs/vpropertyexplorer/plugins/vfileproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vfileproperty.h @@ -21,7 +21,7 @@ #ifndef VFILEPROPERTY_H #define VFILEPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vfilepropertyeditor.h b/src/libs/vpropertyexplorer/plugins/vfilepropertyeditor.h index e7cace30a..74f4fe9a0 100644 --- a/src/libs/vpropertyexplorer/plugins/vfilepropertyeditor.h +++ b/src/libs/vpropertyexplorer/plugins/vfilepropertyeditor.h @@ -21,7 +21,7 @@ #ifndef VFILEPROPERTYEDITOR_H #define VFILEPROPERTYEDITOR_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vlabelproperty.h b/src/libs/vpropertyexplorer/plugins/vlabelproperty.h index 54d9bc062..af4d8bf24 100644 --- a/src/libs/vpropertyexplorer/plugins/vlabelproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vlabelproperty.h @@ -29,7 +29,7 @@ #ifndef VLABELPROPERTY_H #define VLABELPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vlinecolorproperty.h b/src/libs/vpropertyexplorer/plugins/vlinecolorproperty.h index 21a475eb6..f7136a9f0 100644 --- a/src/libs/vpropertyexplorer/plugins/vlinecolorproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vlinecolorproperty.h @@ -29,7 +29,7 @@ #ifndef VLINECOLORPROPERTY_H #define VLINECOLORPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vlinetypeproperty.h b/src/libs/vpropertyexplorer/plugins/vlinetypeproperty.h index e570c6bb3..1472e402a 100644 --- a/src/libs/vpropertyexplorer/plugins/vlinetypeproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vlinetypeproperty.h @@ -29,7 +29,7 @@ #ifndef VLINETYPEPROPERTY_H #define VLINETYPEPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vobjectproperty.h b/src/libs/vpropertyexplorer/plugins/vobjectproperty.h index 89db330e0..838e234e4 100644 --- a/src/libs/vpropertyexplorer/plugins/vobjectproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vobjectproperty.h @@ -21,7 +21,7 @@ #ifndef VOBJECTPROPERTY_H #define VOBJECTPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vpointfproperty.h b/src/libs/vpropertyexplorer/plugins/vpointfproperty.h index ee149b4fe..152d829a9 100644 --- a/src/libs/vpropertyexplorer/plugins/vpointfproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vpointfproperty.h @@ -21,7 +21,7 @@ #ifndef VPOINTFPROPERTY_H #define VPOINTFPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vshortcutproperty.h b/src/libs/vpropertyexplorer/plugins/vshortcutproperty.h index 322ae83e3..ab1259ad4 100644 --- a/src/libs/vpropertyexplorer/plugins/vshortcutproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vshortcutproperty.h @@ -21,7 +21,7 @@ #ifndef VSHORTCUTROPERTY_H #define VSHORTCUTROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vshortcutpropertyeditor.h b/src/libs/vpropertyexplorer/plugins/vshortcutpropertyeditor.h index b5782a0c5..b7c6e8219 100644 --- a/src/libs/vpropertyexplorer/plugins/vshortcutpropertyeditor.h +++ b/src/libs/vpropertyexplorer/plugins/vshortcutpropertyeditor.h @@ -21,7 +21,7 @@ #ifndef VSHORTCUTPROPERTYEDITOR_H #define VSHORTCUTPROPERTYEDITOR_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vstringproperty.h b/src/libs/vpropertyexplorer/plugins/vstringproperty.h index bd13711cc..7fe52aeb1 100644 --- a/src/libs/vpropertyexplorer/plugins/vstringproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vstringproperty.h @@ -21,7 +21,7 @@ #ifndef VSTRINGPROPERTY_H #define VSTRINGPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vtextproperty.h b/src/libs/vpropertyexplorer/plugins/vtextproperty.h index 74a08f804..254a3779b 100644 --- a/src/libs/vpropertyexplorer/plugins/vtextproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vtextproperty.h @@ -20,7 +20,7 @@ #ifndef VTEXTPROPERTY_H #define VTEXTPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/plugins/vwidgetproperty.h b/src/libs/vpropertyexplorer/plugins/vwidgetproperty.h index 4c48c72bc..cf460d01d 100644 --- a/src/libs/vpropertyexplorer/plugins/vwidgetproperty.h +++ b/src/libs/vpropertyexplorer/plugins/vwidgetproperty.h @@ -21,7 +21,7 @@ #ifndef VWIDGETROPERTY_H #define VWIDGETROPERTY_H -#include + #include #include diff --git a/src/libs/vpropertyexplorer/vproperty.h b/src/libs/vpropertyexplorer/vproperty.h index 2837e8edc..55a6a762d 100644 --- a/src/libs/vpropertyexplorer/vproperty.h +++ b/src/libs/vpropertyexplorer/vproperty.h @@ -21,7 +21,7 @@ #ifndef VPROPERTY_H #define VPROPERTY_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vpropertydelegate.h b/src/libs/vpropertyexplorer/vpropertydelegate.h index b7626387b..442666583 100644 --- a/src/libs/vpropertyexplorer/vpropertydelegate.h +++ b/src/libs/vpropertyexplorer/vpropertydelegate.h @@ -21,7 +21,7 @@ #ifndef VPROPERTYDELEGATE_H #define VPROPERTYDELEGATE_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vpropertyfactorymanager.h b/src/libs/vpropertyexplorer/vpropertyfactorymanager.h index 49b99999d..bacc03c1a 100644 --- a/src/libs/vpropertyexplorer/vpropertyfactorymanager.h +++ b/src/libs/vpropertyexplorer/vpropertyfactorymanager.h @@ -21,7 +21,7 @@ #ifndef VPROPERTYFACTORYMANAGER_H #define VPROPERTYFACTORYMANAGER_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vpropertyformview.h b/src/libs/vpropertyexplorer/vpropertyformview.h index 1eb733a69..659e58059 100644 --- a/src/libs/vpropertyexplorer/vpropertyformview.h +++ b/src/libs/vpropertyexplorer/vpropertyformview.h @@ -21,7 +21,7 @@ #ifndef VPROPERTYFORMVIEW_H #define VPROPERTYFORMVIEW_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vpropertymodel.h b/src/libs/vpropertyexplorer/vpropertymodel.h index 9b4b6db68..a0f37186f 100644 --- a/src/libs/vpropertyexplorer/vpropertymodel.h +++ b/src/libs/vpropertyexplorer/vpropertymodel.h @@ -21,7 +21,7 @@ #ifndef VPROPERTYMODEL_H #define VPROPERTYMODEL_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vpropertyset.h b/src/libs/vpropertyexplorer/vpropertyset.h index 25ce888d9..b8649ee8a 100644 --- a/src/libs/vpropertyexplorer/vpropertyset.h +++ b/src/libs/vpropertyexplorer/vpropertyset.h @@ -21,7 +21,7 @@ #ifndef VPROPERTYSET_H #define VPROPERTYSET_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vpropertytreeview.h b/src/libs/vpropertyexplorer/vpropertytreeview.h index d2a5c12e5..988f24c87 100644 --- a/src/libs/vpropertyexplorer/vpropertytreeview.h +++ b/src/libs/vpropertyexplorer/vpropertytreeview.h @@ -21,7 +21,7 @@ #ifndef VPROPERTYTREEVIEW_H #define VPROPERTYTREEVIEW_H -#include + #include #include #include diff --git a/src/libs/vpropertyexplorer/vstandardpropertyfactory.h b/src/libs/vpropertyexplorer/vstandardpropertyfactory.h index 06b76de43..ad5e5a7ff 100644 --- a/src/libs/vpropertyexplorer/vstandardpropertyfactory.h +++ b/src/libs/vpropertyexplorer/vstandardpropertyfactory.h @@ -21,7 +21,7 @@ #ifndef VASTANDARDPROPERTYFACTORY_H #define VASTANDARDPROPERTYFACTORY_H -#include + #include #include "vabstractpropertyfactory.h" diff --git a/src/libs/vtools/dialogs/support/dialogeditwrongformula.h b/src/libs/vtools/dialogs/support/dialogeditwrongformula.h index 39ede8918..c6ef00e1d 100644 --- a/src/libs/vtools/dialogs/support/dialogeditwrongformula.h +++ b/src/libs/vtools/dialogs/support/dialogeditwrongformula.h @@ -29,16 +29,13 @@ #ifndef DIALOGEDITWRONGFORMULA_H #define DIALOGEDITWRONGFORMULA_H -#include +#include #include #include #include #include #include #include -#include - -#include "../vmisc/defglobal.h" class VMeasurement; struct FormulaData; @@ -59,7 +56,8 @@ class DialogEditWrongFormula; */ class DialogEditWrongFormula final : public QDialog { - Q_OBJECT //NOLINT + Q_OBJECT // NOLINT + public: DialogEditWrongFormula(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogEditWrongFormula() override; @@ -73,6 +71,7 @@ public: void SetIncrementsMode(); void SetPreviewCalculationsMode(); void ShowPieceArea(bool show) const; + public slots: virtual void DialogAccepted(); virtual void DialogRejected(); @@ -80,7 +79,7 @@ public slots: void EvalFormula(); void ValChanged(int row); void PutHere(); - void PutVal(QTableWidgetItem * item); + void PutVal(QTableWidgetItem *item); void Measurements(); void LengthLines(); @@ -93,6 +92,7 @@ public slots: void PreviewCalculations(); void PieceArea(); void Functions(); + signals: /** * @brief DialogClosed signal dialog closed @@ -103,17 +103,20 @@ signals: * @brief DialogApplied emit signal dialog apply changes */ void DialogApplied(); + protected: virtual auto IsValid() const -> bool final; void closeEvent(QCloseEvent *event) override; - void showEvent( QShowEvent *event ) override; + void showEvent(QShowEvent *event) override; void resizeEvent(QResizeEvent *event) override; virtual void CheckState(); + private slots: void FilterVariablesEdited(const QString &filter); + private: // cppcheck-suppress unknownMacro - Q_DISABLE_COPY_MOVE(DialogEditWrongFormula) //NOLINT + Q_DISABLE_COPY_MOVE(DialogEditWrongFormula) // NOLINT Ui::DialogEditWrongFormula *ui; const VContainer *m_data; @@ -140,9 +143,8 @@ private: void InitVariables(); - template - void ShowVariable(const QMap &var); - void ShowMeasurements(const QMap > &var); + template void ShowVariable(const QMap &var); + void ShowMeasurements(const QMap> &var); void ShowFunctions(); void ShowIncrementsInPreviewCalculation(bool show); diff --git a/src/libs/vtools/dialogs/support/dialogundo.h b/src/libs/vtools/dialogs/support/dialogundo.h index eed1f6459..f7bc1e85f 100644 --- a/src/libs/vtools/dialogs/support/dialogundo.h +++ b/src/libs/vtools/dialogs/support/dialogundo.h @@ -29,33 +29,39 @@ #ifndef DIALOGUNDO_H #define DIALOGUNDO_H -#include #include #include #include #include #include -#include "../vmisc/defglobal.h" - namespace Ui { - class DialogUndo; +class DialogUndo; } -enum class UndoButton {Undo, Fix, Cancel}; +enum class UndoButton +{ + Undo, + Fix, + Cancel +}; class DialogUndo : public QDialog { Q_OBJECT // NOLINT + public: explicit DialogUndo(QWidget *parent = nullptr); auto Result() const -> UndoButton; - virtual ~DialogUndo() override; + ~DialogUndo() override; + protected: - virtual void closeEvent ( QCloseEvent *event ) override; + void closeEvent(QCloseEvent *event) override; + private slots: void Cancel(); + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(DialogUndo) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogalongline.h b/src/libs/vtools/dialogs/tools/dialogalongline.h index c6211143e..4ae23e5d4 100644 --- a/src/libs/vtools/dialogs/tools/dialogalongline.h +++ b/src/libs/vtools/dialogs/tools/dialogalongline.h @@ -29,7 +29,6 @@ #ifndef DIALOGALONGLINE_H #define DIALOGALONGLINE_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogAlongLine; +class DialogAlongLine; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogAlongLine final : public DialogTool { Q_OBJECT // NOLINT + public: DialogAlongLine(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogAlongLine() override; @@ -76,6 +76,7 @@ public: void Build(const Tool &type) override; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -86,6 +87,7 @@ public slots: void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -94,6 +96,7 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private: Q_DISABLE_COPY_MOVE(DialogAlongLine) // NOLINT @@ -131,7 +134,7 @@ private: //--------------------------------------------------------------------------------------------------------------------- inline auto DialogAlongLine::IsValid() const -> bool { - return m_flagName &&m_flagFormula && m_flagError; + return m_flagName && m_flagFormula && m_flagError; } #endif // DIALOGALONGLINE_H diff --git a/src/libs/vtools/dialogs/tools/dialogarc.h b/src/libs/vtools/dialogs/tools/dialogarc.h index 7a54fc8cf..bab247059 100644 --- a/src/libs/vtools/dialogs/tools/dialogarc.h +++ b/src/libs/vtools/dialogs/tools/dialogarc.h @@ -29,7 +29,6 @@ #ifndef DIALOGARC_H #define DIALOGARC_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogArc; +class DialogArc; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogArc final : public DialogTool { Q_OBJECT // NOLINT + public: DialogArc(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogArc() override; @@ -81,6 +81,7 @@ public: auto GetAliasSuffix() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -105,6 +106,7 @@ protected: private slots: void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogArc) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogarcwithlength.h b/src/libs/vtools/dialogs/tools/dialogarcwithlength.h index 7d70c8c62..9c6221c5f 100644 --- a/src/libs/vtools/dialogs/tools/dialogarcwithlength.h +++ b/src/libs/vtools/dialogs/tools/dialogarcwithlength.h @@ -29,19 +29,17 @@ #ifndef DIALOGARCWITHLENGTH_H #define DIALOGARCWITHLENGTH_H -#include #include #include #include #include #include "../vmisc/def.h" -#include "../vmisc/defglobal.h" #include "dialogtool.h" namespace Ui { - class DialogArcWithLength; +class DialogArcWithLength; } class DialogArcWithLength final : public DialogTool diff --git a/src/libs/vtools/dialogs/tools/dialogbisector.h b/src/libs/vtools/dialogs/tools/dialogbisector.h index 36eee2c7c..5b9292ef3 100644 --- a/src/libs/vtools/dialogs/tools/dialogbisector.h +++ b/src/libs/vtools/dialogs/tools/dialogbisector.h @@ -29,7 +29,6 @@ #ifndef DIALOGBISECTOR_H #define DIALOGBISECTOR_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogBisector; +class DialogBisector; } /** @@ -49,8 +48,8 @@ namespace Ui class DialogBisector final : public DialogTool { Q_OBJECT // NOLINT -public: +public: DialogBisector(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogBisector() override; @@ -79,6 +78,7 @@ public: auto GetNotes() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -89,6 +89,7 @@ public slots: void PointNameChanged() override; void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -97,6 +98,7 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private: Q_DISABLE_COPY_MOVE(DialogBisector) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogcubicbezier.h b/src/libs/vtools/dialogs/tools/dialogcubicbezier.h index 7661819d5..d904bd2af 100644 --- a/src/libs/vtools/dialogs/tools/dialogcubicbezier.h +++ b/src/libs/vtools/dialogs/tools/dialogcubicbezier.h @@ -29,7 +29,6 @@ #ifndef DIALOGCUBICBEZIER_H #define DIALOGCUBICBEZIER_H -#include #include #include #include @@ -42,7 +41,7 @@ namespace Ui { - class DialogCubicBezier; +class DialogCubicBezier; } class DialogCubicBezier : public DialogTool @@ -51,26 +50,29 @@ class DialogCubicBezier : public DialogTool public: explicit DialogCubicBezier(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogCubicBezier(); + ~DialogCubicBezier() override; auto GetSpline() const -> VCubicBezier; - void SetSpline(const VCubicBezier &spline); + void SetSpline(const VCubicBezier &spline); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void PointNameChanged() override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointNameChanged() override; + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private slots: void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogCubicBezier) // NOLINT Ui::DialogCubicBezier *ui; diff --git a/src/libs/vtools/dialogs/tools/dialogcubicbezierpath.h b/src/libs/vtools/dialogs/tools/dialogcubicbezierpath.h index af131cd39..13fe1d744 100644 --- a/src/libs/vtools/dialogs/tools/dialogcubicbezierpath.h +++ b/src/libs/vtools/dialogs/tools/dialogcubicbezierpath.h @@ -29,7 +29,6 @@ #ifndef DIALOGCUBICBEZIERPATH_H #define DIALOGCUBICBEZIERPATH_H -#include #include #include #include @@ -43,7 +42,7 @@ namespace Ui { - class DialogCubicBezierPath; +class DialogCubicBezierPath; } class DialogCubicBezierPath : public DialogTool @@ -52,20 +51,23 @@ class DialogCubicBezierPath : public DialogTool public: explicit DialogCubicBezierPath(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogCubicBezierPath(); + ~DialogCubicBezierPath() override; auto GetPath() const -> VCubicBezierPath; - void SetPath(const VCubicBezierPath &value); + void SetPath(const VCubicBezierPath &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void ShowDialog(bool click) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void ShowDialog(bool click) override; + protected: - virtual void ShowVisualization() override; - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void ShowVisualization() override; + void SaveData() override; + auto IsValid() const -> bool final; + private slots: void PointChanged(int row); void currentPointChanged(int index); @@ -85,13 +87,13 @@ private: QString originAliasSuffix{}; - void NewItem(const VPointF &point); - void DataPoint(const VPointF &p); - void SavePath(); + void NewItem(const VPointF &point); + void DataPoint(const VPointF &p); + void SavePath(); auto AllPathBackboneIds() const -> QSet; auto IsPathValid() const -> bool; auto ExtractPath() const -> VCubicBezierPath; - void ValidatePath(); + void ValidatePath(); }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.h b/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.h index ef7c9a4fb..83d02b16f 100644 --- a/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.h +++ b/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.h @@ -29,7 +29,6 @@ #ifndef DIALOGCURVEINTERSECTAXIS_H #define DIALOGCURVEINTERSECTAXIS_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogCurveIntersectAxis; +class DialogCurveIntersectAxis; } class DialogCurveIntersectAxis final : public DialogTool @@ -49,57 +48,61 @@ class DialogCurveIntersectAxis final : public DialogTool public: DialogCurveIntersectAxis(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogCurveIntersectAxis() override; + ~DialogCurveIntersectAxis() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetTypeLine() const -> QString; - void SetTypeLine(const QString &value); + void SetTypeLine(const QString &value); auto GetAngle() const -> QString; - void SetAngle(const QString &value); + void SetAngle(const QString &value); auto GetBasePointId() const -> quint32; - void SetBasePointId(quint32 value); + void SetBasePointId(quint32 value); auto getCurveId() const -> quint32; - void setCurveId(quint32 value); + void setCurveId(quint32 value); auto GetLineColor() const -> QString; - void SetLineColor(const QString &value); + void SetLineColor(const QString &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - void SetAliasSuffix1(const QString &alias); + void SetAliasSuffix1(const QString &alias); auto GetAliasSuffix1() const -> QString; - void SetAliasSuffix2(const QString &alias); + void SetAliasSuffix2(const QString &alias); auto GetAliasSuffix2() const -> QString; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - void EvalAngle(); - void DeployAngleTextEdit(); - void FXAngle(); + void ChosenObject(quint32 id, const SceneObject &type) override; + void EvalAngle(); + void DeployAngleTextEdit(); + void FXAngle(); + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; + private slots: void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogCurveIntersectAxis) // NOLINT Ui::DialogCurveIntersectAxis *ui; QString formulaAngle; - int formulaBaseHeightAngle; + int formulaBaseHeightAngle; QString pointName; @@ -116,7 +119,7 @@ private: QString originAliasSuffix2{}; /** @brief number number of handled objects */ - qint32 number{0}; + qint32 number{0}; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogcutarc.h b/src/libs/vtools/dialogs/tools/dialogcutarc.h index babf08a7f..831d09e39 100644 --- a/src/libs/vtools/dialogs/tools/dialogcutarc.h +++ b/src/libs/vtools/dialogs/tools/dialogcutarc.h @@ -29,7 +29,6 @@ #ifndef DIALOGCUTARC_H #define DIALOGCUTARC_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogCutArc; +class DialogCutArc; } /** @@ -49,8 +48,8 @@ namespace Ui class DialogCutArc final : public DialogTool { Q_OBJECT // NOLINT -public: +public: DialogCutArc(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogCutArc() override; @@ -73,6 +72,7 @@ public: auto GetAliasSuffix2() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -82,6 +82,7 @@ public slots: void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -90,13 +91,15 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private slots: void ArcChanged(); void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogCutArc) // NOLINT /** @brief ui keeps information about user interface */ - Ui::DialogCutArc *ui; + Ui::DialogCutArc *ui; /** @brief formula string with formula */ QString m_formula{}; diff --git a/src/libs/vtools/dialogs/tools/dialogcutspline.h b/src/libs/vtools/dialogs/tools/dialogcutspline.h index d731c96fd..6a0db64fe 100644 --- a/src/libs/vtools/dialogs/tools/dialogcutspline.h +++ b/src/libs/vtools/dialogs/tools/dialogcutspline.h @@ -29,7 +29,6 @@ #ifndef DIALOGCUTSPLINE_H #define DIALOGCUTSPLINE_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogCutSpline; +class DialogCutSpline; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogCutSpline final : public DialogTool { Q_OBJECT // NOLINT + public: DialogCutSpline(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogCutSpline() override; @@ -72,6 +72,7 @@ public: auto GetAliasSuffix2() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -80,6 +81,7 @@ public slots: void DeployFormulaTextEdit(); void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -88,9 +90,11 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private slots: void SplineChanged(); void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogCutSpline) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogcutsplinepath.h b/src/libs/vtools/dialogs/tools/dialogcutsplinepath.h index c4bd036cf..1e96d581e 100644 --- a/src/libs/vtools/dialogs/tools/dialogcutsplinepath.h +++ b/src/libs/vtools/dialogs/tools/dialogcutsplinepath.h @@ -29,7 +29,6 @@ #ifndef DIALOGCUTSPLINEPATH_H #define DIALOGCUTSPLINEPATH_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogCutSplinePath; +class DialogCutSplinePath; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogCutSplinePath final : public DialogTool { Q_OBJECT // NOLINT + public: DialogCutSplinePath(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogCutSplinePath() override; @@ -72,6 +72,7 @@ public: auto GetAliasSuffix2() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -80,6 +81,7 @@ public slots: void DeployFormulaTextEdit(); void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -88,9 +90,11 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private slots: void SplinePathChanged(); void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogCutSplinePath) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogellipticalarc.h b/src/libs/vtools/dialogs/tools/dialogellipticalarc.h index 712c9030f..2c6c9e345 100644 --- a/src/libs/vtools/dialogs/tools/dialogellipticalarc.h +++ b/src/libs/vtools/dialogs/tools/dialogellipticalarc.h @@ -29,7 +29,6 @@ #ifndef DIALOGELLIPTICALARC_H #define DIALOGELLIPTICALARC_H -#include #include #include #include @@ -40,12 +39,13 @@ namespace Ui { - class DialogEllipticalArc; +class DialogEllipticalArc; } class DialogEllipticalArc : public DialogTool { Q_OBJECT // NOLINT + public: DialogEllipticalArc(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogEllipticalArc() override; diff --git a/src/libs/vtools/dialogs/tools/dialogendline.h b/src/libs/vtools/dialogs/tools/dialogendline.h index 3ac3f8ca5..f59f575bc 100644 --- a/src/libs/vtools/dialogs/tools/dialogendline.h +++ b/src/libs/vtools/dialogs/tools/dialogendline.h @@ -29,7 +29,6 @@ #ifndef DIALOGENDLINE_H #define DIALOGENDLINE_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogEndLine; +class DialogEndLine; } /** @@ -49,52 +48,55 @@ namespace Ui class DialogEndLine : public DialogTool { Q_OBJECT // NOLINT + public: DialogEndLine(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogEndLine() override; + ~DialogEndLine() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetTypeLine() const -> QString; - void SetTypeLine(const QString &value); + void SetTypeLine(const QString &value); auto GetFormula() const -> QString; - void SetFormula(const QString &value); + void SetFormula(const QString &value); auto GetAngle() const -> QString; - void SetAngle(const QString &value); + void SetAngle(const QString &value); auto GetBasePointId() const -> quint32; - void SetBasePointId(const quint32 &value); + void SetBasePointId(const quint32 &value); auto GetLineColor() const -> QString; - void SetLineColor(const QString &value); + void SetLineColor(const QString &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - virtual void ShowDialog(bool click) override; -public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; + void ShowDialog(bool click) override; - void EvalLength(); - void EvalAngle(); +public slots: + void ChosenObject(quint32 id, const SceneObject &type) override; + + void EvalLength(); + void EvalAngle(); /** @brief DeployFormulaTextEdit grow or shrink formula input */ - void DeployFormulaTextEdit(); - void DeployAngleTextEdit(); + void DeployFormulaTextEdit(); + void DeployAngleTextEdit(); + + void FXAngle(); + void FXLength(); - void FXAngle(); - void FXLength(); protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogEndLine) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogflippingbyaxis.h b/src/libs/vtools/dialogs/tools/dialogflippingbyaxis.h index b4a091914..93bf3e4a3 100644 --- a/src/libs/vtools/dialogs/tools/dialogflippingbyaxis.h +++ b/src/libs/vtools/dialogs/tools/dialogflippingbyaxis.h @@ -31,7 +31,6 @@ #include "dialogtool.h" -#include #include #include #include @@ -39,12 +38,12 @@ #include #include -#include "../vmisc/def.h" #include "../../tools/toolsdef.h" +#include "../vmisc/def.h" namespace Ui { - class DialogFlippingByAxis; +class DialogFlippingByAxis; } class DialogFlippingByAxis : public DialogTool @@ -53,39 +52,39 @@ class DialogFlippingByAxis : public DialogTool public: explicit DialogFlippingByAxis(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogFlippingByAxis(); + ~DialogFlippingByAxis() override; auto GetOriginPointId() const -> quint32; - void SetOriginPointId(quint32 value); + void SetOriginPointId(quint32 value); auto GetAxisType() const -> AxisType; - void SetAxisType(AxisType type); + void SetAxisType(AxisType type); auto GetSuffix() const -> QString; - void SetSuffix(const QString &value); + void SetSuffix(const QString &value); auto GetVisibilityGroupName() const -> QString; - void SetVisibilityGroupName(const QString &name); + void SetVisibilityGroupName(const QString &name); auto HasLinkedVisibilityGroup() const -> bool; void SetHasLinkedVisibilityGroup(bool linked); - void SetVisibilityGroupTags(const QStringList &tags); + void SetVisibilityGroupTags(const QStringList &tags); auto GetVisibilityGroupTags() const -> QStringList; - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - virtual void SetGroupCategories(const QStringList &categories) override; + void SetGroupCategories(const QStringList &categories) override; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; auto GetSourceObjects() const -> QVector; - void SetSourceObjects(const QVector &value); + void SetSourceObjects(const QVector &value); public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void SelectedObject(bool selected, quint32 object, quint32 tool) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void SelectedObject(bool selected, quint32 object, quint32 tool) override; private slots: void SuffixChanged(); @@ -96,11 +95,11 @@ private slots: void ColorChanged(); protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private slots: void PointChanged(); diff --git a/src/libs/vtools/dialogs/tools/dialogflippingbyline.h b/src/libs/vtools/dialogs/tools/dialogflippingbyline.h index 9c0e34259..206ff3226 100644 --- a/src/libs/vtools/dialogs/tools/dialogflippingbyline.h +++ b/src/libs/vtools/dialogs/tools/dialogflippingbyline.h @@ -31,7 +31,6 @@ #include "dialogtool.h" -#include #include #include #include @@ -39,12 +38,12 @@ #include #include -#include "../vmisc/def.h" #include "../../tools/toolsdef.h" +#include "../vmisc/def.h" namespace Ui { - class DialogFlippingByLine; +class DialogFlippingByLine; } class DialogFlippingByLine : public DialogTool @@ -53,39 +52,39 @@ class DialogFlippingByLine : public DialogTool public: explicit DialogFlippingByLine(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogFlippingByLine(); + ~DialogFlippingByLine() override; auto GetFirstLinePointId() const -> quint32; - void SetFirstLinePointId(quint32 value); + void SetFirstLinePointId(quint32 value); auto GetSecondLinePointId() const -> quint32; - void SetSecondLinePointId(quint32 value); + void SetSecondLinePointId(quint32 value); auto GetSuffix() const -> QString; - void SetSuffix(const QString &value); + void SetSuffix(const QString &value); auto GetVisibilityGroupName() const -> QString; - void SetVisibilityGroupName(const QString &name); + void SetVisibilityGroupName(const QString &name); auto HasLinkedVisibilityGroup() const -> bool; void SetHasLinkedVisibilityGroup(bool linked); - void SetVisibilityGroupTags(const QStringList &tags); + void SetVisibilityGroupTags(const QStringList &tags); auto GetVisibilityGroupTags() const -> QStringList; - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - virtual void SetGroupCategories(const QStringList &categories) override; + void SetGroupCategories(const QStringList &categories) override; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; auto GetSourceObjects() const -> QVector; - void SetSourceObjects(const QVector &value); + void SetSourceObjects(const QVector &value); public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void SelectedObject(bool selected, quint32 object, quint32 tool) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void SelectedObject(bool selected, quint32 object, quint32 tool) override; private slots: void SuffixChanged(); @@ -96,11 +95,11 @@ private slots: void ColorChanged(); protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private slots: void PointChanged(); diff --git a/src/libs/vtools/dialogs/tools/dialoggroup.h b/src/libs/vtools/dialogs/tools/dialoggroup.h index de663ae92..016e7d72b 100644 --- a/src/libs/vtools/dialogs/tools/dialoggroup.h +++ b/src/libs/vtools/dialogs/tools/dialoggroup.h @@ -29,7 +29,6 @@ #ifndef DIALOGGROUP_H #define DIALOGGROUP_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogGroup; +class DialogGroup; } class DialogGroup : public DialogTool @@ -49,25 +48,25 @@ class DialogGroup : public DialogTool public: explicit DialogGroup(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - ~DialogGroup(); + ~DialogGroup() override; - void SetName(const QString &name); + void SetName(const QString &name); auto GetName() const -> QString; - void SetTags(const QStringList &tags); + void SetTags(const QStringList &tags); auto GetTags() const -> QStringList; - virtual void SetGroupCategories(const QStringList &categories) override; + void SetGroupCategories(const QStringList &categories) override; auto GetGroup() const -> QMap; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; public slots: - virtual void SelectedObject(bool selected, quint32 object, quint32 tool) override; + void SelectedObject(bool selected, quint32 object, quint32 tool) override; protected: - virtual auto IsValid() const -> bool final; + auto IsValid() const -> bool final; private slots: void NameChanged(); diff --git a/src/libs/vtools/dialogs/tools/dialogheight.h b/src/libs/vtools/dialogs/tools/dialogheight.h index 02d8170f9..ee45d141d 100644 --- a/src/libs/vtools/dialogs/tools/dialogheight.h +++ b/src/libs/vtools/dialogs/tools/dialogheight.h @@ -29,7 +29,6 @@ #ifndef DIALOGHEIGHT_H #define DIALOGHEIGHT_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogHeight; +class DialogHeight; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogHeight final : public DialogTool { Q_OBJECT // NOLINT + public: DialogHeight(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogHeight() override; @@ -73,9 +73,11 @@ public: void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; void PointNameChanged() override; + protected: void ShowVisualization() override; /** @@ -83,6 +85,7 @@ protected: */ void SaveData() override; auto IsValid() const -> bool final; + private: Q_DISABLE_COPY_MOVE(DialogHeight) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogline.h b/src/libs/vtools/dialogs/tools/dialogline.h index 15b52bb52..3c099fe3d 100644 --- a/src/libs/vtools/dialogs/tools/dialogline.h +++ b/src/libs/vtools/dialogs/tools/dialogline.h @@ -29,7 +29,6 @@ #ifndef DIALOGLINE_H #define DIALOGLINE_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogLine; +class DialogLine; } /** @@ -49,34 +48,37 @@ namespace Ui class DialogLine : public DialogTool { Q_OBJECT // NOLINT + public: DialogLine(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogLine() override; + ~DialogLine() override; auto GetFirstPoint() const -> quint32; - void SetFirstPoint(quint32 value); + void SetFirstPoint(quint32 value); auto GetSecondPoint() const -> quint32; - void SetSecondPoint(quint32 value); + void SetSecondPoint(quint32 value); auto GetTypeLine() const -> QString; - void SetTypeLine(const QString &value); + void SetTypeLine(const QString &value); auto GetLineColor() const -> QString; - void SetLineColor(const QString &value); + void SetLineColor(const QString &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void PointNameChanged() override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointNameChanged() override; + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogLine) // NOLINT @@ -87,7 +89,7 @@ private: bool flagError; /** @brief number number of handled objects */ - qint32 number{0}; + qint32 number{0}; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialoglineintersect.h b/src/libs/vtools/dialogs/tools/dialoglineintersect.h index b01273bc1..ae493cecc 100644 --- a/src/libs/vtools/dialogs/tools/dialoglineintersect.h +++ b/src/libs/vtools/dialogs/tools/dialoglineintersect.h @@ -29,7 +29,6 @@ #ifndef DIALOGLINEINTERSECT_H #define DIALOGLINEINTERSECT_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogLineIntersect; +class DialogLineIntersect; } /** @@ -49,38 +48,41 @@ namespace Ui class DialogLineIntersect : public DialogTool { Q_OBJECT // NOLINT + public: DialogLineIntersect(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogLineIntersect() override; + ~DialogLineIntersect() override; auto GetP1Line1() const -> quint32; - void SetP1Line1(quint32 value); + void SetP1Line1(quint32 value); auto GetP2Line1() const -> quint32; - void SetP2Line1(quint32 value); + void SetP2Line1(quint32 value); auto GetP1Line2() const -> quint32; - void SetP1Line2(quint32 value); + void SetP1Line2(quint32 value); auto GetP2Line2() const -> quint32; - void SetP2Line2(quint32 value); + void SetP2Line2(quint32 value); auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - void PointChanged(); - virtual void PointNameChanged() override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointChanged(); + void PointNameChanged() override; + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogLineIntersect) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialoglineintersectaxis.h b/src/libs/vtools/dialogs/tools/dialoglineintersectaxis.h index 5882b589b..bdf086139 100644 --- a/src/libs/vtools/dialogs/tools/dialoglineintersectaxis.h +++ b/src/libs/vtools/dialogs/tools/dialoglineintersectaxis.h @@ -29,7 +29,6 @@ #ifndef DIALOGLINEINTERSECTAXIS_H #define DIALOGLINEINTERSECTAXIS_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogLineIntersectAxis; +class DialogLineIntersectAxis; } class DialogLineIntersectAxis : public DialogTool @@ -49,54 +48,56 @@ class DialogLineIntersectAxis : public DialogTool public: DialogLineIntersectAxis(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogLineIntersectAxis() override; + ~DialogLineIntersectAxis() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetTypeLine() const -> QString; - void SetTypeLine(const QString &value); + void SetTypeLine(const QString &value); auto GetAngle() const -> QString; - void SetAngle(const QString &value); + void SetAngle(const QString &value); auto GetBasePointId() const -> quint32; - void SetBasePointId(quint32 value); + void SetBasePointId(quint32 value); auto GetFirstPointId() const -> quint32; - void SetFirstPointId(quint32 value); + void SetFirstPointId(quint32 value); auto GetSecondPointId() const -> quint32; - void SetSecondPointId(quint32 value); + void SetSecondPointId(quint32 value); auto GetLineColor() const -> QString; - void SetLineColor(const QString &value); + void SetLineColor(const QString &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - void EvalAngle(); - void DeployAngleTextEdit(); - virtual void PointNameChanged() override; - void FXAngle(); + void ChosenObject(quint32 id, const SceneObject &type) override; + void EvalAngle(); + void DeployAngleTextEdit(); + void PointNameChanged() override; + void FXAngle(); + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogLineIntersectAxis) // NOLINT Ui::DialogLineIntersectAxis *ui; QString formulaAngle; - int formulaBaseHeightAngle; + int formulaBaseHeightAngle; QString pointName; diff --git a/src/libs/vtools/dialogs/tools/dialogmove.h b/src/libs/vtools/dialogs/tools/dialogmove.h index a2c634177..cd8a92f35 100644 --- a/src/libs/vtools/dialogs/tools/dialogmove.h +++ b/src/libs/vtools/dialogs/tools/dialogmove.h @@ -29,7 +29,6 @@ #ifndef DIALOGMOVING_H #define DIALOGMOVING_H -#include #include #include #include @@ -37,13 +36,13 @@ #include #include +#include "../../tools/toolsdef.h" #include "../vmisc/def.h" #include "dialogtool.h" -#include "../../tools/toolsdef.h" namespace Ui { - class DialogMove; +class DialogMove; } class DialogMove : public DialogTool @@ -52,45 +51,45 @@ class DialogMove : public DialogTool public: explicit DialogMove(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogMove(); + ~DialogMove() override; auto GetAngle() const -> QString; - void SetAngle(const QString &value); + void SetAngle(const QString &value); auto GetLength() const -> QString; - void SetLength(const QString &value); + void SetLength(const QString &value); auto GetRotationAngle() const -> QString; - void SetRotationAngle(const QString &value); + void SetRotationAngle(const QString &value); auto GetSuffix() const -> QString; - void SetSuffix(const QString &value); + void SetSuffix(const QString &value); auto GetRotationOrigPointId() const -> quint32; - void SetRotationOrigPointId(const quint32 &value); + void SetRotationOrigPointId(const quint32 &value); auto GetVisibilityGroupName() const -> QString; - void SetVisibilityGroupName(const QString &name); + void SetVisibilityGroupName(const QString &name); auto HasLinkedVisibilityGroup() const -> bool; void SetHasLinkedVisibilityGroup(bool linked); - void SetVisibilityGroupTags(const QStringList &tags); + void SetVisibilityGroupTags(const QStringList &tags); auto GetVisibilityGroupTags() const -> QStringList; - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - virtual void SetGroupCategories(const QStringList &categories) override; + void SetGroupCategories(const QStringList &categories) override; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; auto GetSourceObjects() const -> QVector; - void SetSourceObjects(const QVector &value); + void SetSourceObjects(const QVector &value); public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void SelectedObject(bool selected, quint32 object, quint32 tool) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void SelectedObject(bool selected, quint32 object, quint32 tool) override; private slots: /** @brief DeployAngleTextEdit grow or shrink formula input */ @@ -111,21 +110,21 @@ private slots: void ColorChanged(); protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogMove) // NOLINT Ui::DialogMove *ui; /** @brief timerAngle timer of check formula of angle */ - QTimer *timerAngle; - QTimer *timerRotationAngle; - QTimer *timerLength; + QTimer *timerAngle; + QTimer *timerRotationAngle; + QTimer *timerLength; /** @brief angle formula of angle */ QString formulaAngle; @@ -133,9 +132,9 @@ private: QString formulaLength; /** @brief formulaBaseHeightAngle base height defined by dialogui */ - int formulaBaseHeightAngle; - int formulaBaseHeightRotationAngle; - int formulaBaseHeightLength; + int formulaBaseHeightAngle; + int formulaBaseHeightRotationAngle; + int formulaBaseHeightLength; QVector sourceObjects{}; diff --git a/src/libs/vtools/dialogs/tools/dialognormal.h b/src/libs/vtools/dialogs/tools/dialognormal.h index 36153caa9..606be300d 100644 --- a/src/libs/vtools/dialogs/tools/dialognormal.h +++ b/src/libs/vtools/dialogs/tools/dialognormal.h @@ -29,7 +29,6 @@ #ifndef DIALOGNORMAL_H #define DIALOGNORMAL_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogNormal; +class DialogNormal; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogNormal : public DialogTool { Q_OBJECT // NOLINT + public: DialogNormal(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogNormal() override; @@ -78,6 +78,7 @@ public: auto GetNotes() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -87,6 +88,7 @@ public slots: void PointNameChanged() override; void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -95,6 +97,7 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private: Q_DISABLE_COPY_MOVE(DialogNormal) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogpointfromarcandtangent.h b/src/libs/vtools/dialogs/tools/dialogpointfromarcandtangent.h index 728e316c6..75be97cc0 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointfromarcandtangent.h +++ b/src/libs/vtools/dialogs/tools/dialogpointfromarcandtangent.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTFROMARCANDTANGENT_H #define DIALOGPOINTFROMARCANDTANGENT_H -#include #include #include #include @@ -41,7 +40,7 @@ namespace Ui { - class DialogPointFromArcAndTangent; +class DialogPointFromArcAndTangent; } class DialogPointFromArcAndTangent : public DialogTool @@ -50,33 +49,33 @@ class DialogPointFromArcAndTangent : public DialogTool public: DialogPointFromArcAndTangent(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - ~DialogPointFromArcAndTangent(); + ~DialogPointFromArcAndTangent() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetArcId() const -> quint32; - void SetArcId(quint32 value); + void SetArcId(quint32 value); auto GetTangentPointId() const -> quint32; - void SetTangentPointId(quint32 value); + void SetTangentPointId(quint32 value); auto GetCrossCirclesPoint() const -> CrossCirclesPoint; - void SetCrossCirclesPoint(CrossCirclesPoint p); + void SetCrossCirclesPoint(CrossCirclesPoint p); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; + void ChosenObject(quint32 id, const SceneObject &type) override; protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogPointFromArcAndTangent) // NOLINT @@ -88,7 +87,7 @@ private: bool flagName; /** @brief number number of handled objects */ - qint32 number{0}; + qint32 number{0}; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogpointfromcircleandtangent.h b/src/libs/vtools/dialogs/tools/dialogpointfromcircleandtangent.h index 6cbbef731..332e8f1d1 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointfromcircleandtangent.h +++ b/src/libs/vtools/dialogs/tools/dialogpointfromcircleandtangent.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTFROMCIRCLEANDTANGENT_H #define DIALOGPOINTFROMCIRCLEANDTANGENT_H -#include #include #include #include @@ -41,7 +40,7 @@ namespace Ui { - class DialogPointFromCircleAndTangent; +class DialogPointFromCircleAndTangent; } class DialogPointFromCircleAndTangent : public DialogTool @@ -71,6 +70,7 @@ public: auto GetNotes() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; void PointChanged(); @@ -93,16 +93,16 @@ private: Ui::DialogPointFromCircleAndTangent *ui; - QTimer* m_timerCircleRadius{nullptr}; + QTimer *m_timerCircleRadius{nullptr}; QString m_circleRadius{}; - int m_formulaBaseHeightCircleRadius{0}; + int m_formulaBaseHeightCircleRadius{0}; QString m_pointName{}; - bool m_flagCircleRadius{false}; - bool m_flagName{true}; - bool m_flagError{true}; + bool m_flagCircleRadius{false}; + bool m_flagName{true}; + bool m_flagError{true}; /** @brief number number of handled objects */ - qint32 m_number{0}; - bool m_firstRelease{false}; + qint32 m_number{0}; + bool m_firstRelease{false}; void FinishCreating(); }; diff --git a/src/libs/vtools/dialogs/tools/dialogpointofcontact.h b/src/libs/vtools/dialogs/tools/dialogpointofcontact.h index 2da5aec73..a0bf18659 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointofcontact.h +++ b/src/libs/vtools/dialogs/tools/dialogpointofcontact.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTOFCONTACT_H #define DIALOGPOINTOFCONTACT_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogPointOfContact; +class DialogPointOfContact; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogPointOfContact : public DialogTool { Q_OBJECT // NOLINT + public: DialogPointOfContact(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogPointOfContact() override; @@ -72,6 +72,7 @@ public: auto GetNotes() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -81,6 +82,7 @@ public slots: void PointNameChanged() override; void FXRadius(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -89,6 +91,7 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private: Q_DISABLE_COPY_MOVE(DialogPointOfContact) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogpointofintersection.h b/src/libs/vtools/dialogs/tools/dialogpointofintersection.h index d225aebf4..beaf3ca9c 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointofintersection.h +++ b/src/libs/vtools/dialogs/tools/dialogpointofintersection.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTOFINTERSECTION_H #define DIALOGPOINTOFINTERSECTION_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogPointOfIntersection; +class DialogPointOfIntersection; } /** @@ -49,31 +48,34 @@ namespace Ui class DialogPointOfIntersection : public DialogTool { Q_OBJECT // NOLINT + public: DialogPointOfIntersection(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogPointOfIntersection() override; + ~DialogPointOfIntersection() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetFirstPointId() const -> quint32; - void SetFirstPointId(quint32 value); + void SetFirstPointId(quint32 value); auto GetSecondPointId() const -> quint32; - void SetSecondPointId(quint32 value); + void SetSecondPointId(quint32 value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void PointNameChanged() override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointNameChanged() override; + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogPointOfIntersection) // NOLINT @@ -87,7 +89,7 @@ private: bool flagError; /** @brief number number of handled objects */ - qint32 number{0}; + qint32 number{0}; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogpointofintersectionarcs.h b/src/libs/vtools/dialogs/tools/dialogpointofintersectionarcs.h index 440d2c927..df155738d 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointofintersectionarcs.h +++ b/src/libs/vtools/dialogs/tools/dialogpointofintersectionarcs.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTOFINTERSECTIONARCS_H #define DIALOGPOINTOFINTERSECTIONARCS_H -#include #include #include #include @@ -41,7 +40,7 @@ namespace Ui { - class DialogPointOfIntersectionArcs; +class DialogPointOfIntersectionArcs; } class DialogPointOfIntersectionArcs : public DialogTool @@ -50,34 +49,34 @@ class DialogPointOfIntersectionArcs : public DialogTool public: DialogPointOfIntersectionArcs(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogPointOfIntersectionArcs() override; + ~DialogPointOfIntersectionArcs() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetFirstArcId() const -> quint32; - void SetFirstArcId(quint32 value); + void SetFirstArcId(quint32 value); auto GetSecondArcId() const -> quint32; - void SetSecondArcId(quint32 value); + void SetSecondArcId(quint32 value); auto GetCrossArcPoint() const -> CrossCirclesPoint; - void SetCrossArcPoint(CrossCirclesPoint p); + void SetCrossArcPoint(CrossCirclesPoint p); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void ArcChanged(); + void ChosenObject(quint32 id, const SceneObject &type) override; + void ArcChanged(); protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogPointOfIntersectionArcs) // NOLINT @@ -90,7 +89,7 @@ private: bool flagError; /** @brief number number of handled objects */ - qint32 number{0}; + qint32 number{0}; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogpointofintersectioncircles.h b/src/libs/vtools/dialogs/tools/dialogpointofintersectioncircles.h index a46a7753d..7c4277f44 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointofintersectioncircles.h +++ b/src/libs/vtools/dialogs/tools/dialogpointofintersectioncircles.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTOFINTERSECTIONCIRCLES_H #define DIALOGPOINTOFINTERSECTIONCIRCLES_H -#include #include #include #include @@ -41,7 +40,7 @@ namespace Ui { - class DialogPointOfIntersectionCircles; +class DialogPointOfIntersectionCircles; } class DialogPointOfIntersectionCircles : public DialogTool diff --git a/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.h b/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.h index e5f9b1bae..f2914f9d5 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.h +++ b/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.h @@ -29,7 +29,6 @@ #ifndef DIALOGPOINTOFINTERSECTIONCURVES_H #define DIALOGPOINTOFINTERSECTIONCURVES_H -#include #include #include #include @@ -39,7 +38,8 @@ #include "../vmisc/def.h" #include "dialogtool.h" -namespace Ui { +namespace Ui +{ class DialogPointOfIntersectionCurves; } @@ -49,49 +49,49 @@ class DialogPointOfIntersectionCurves : public DialogTool public: explicit DialogPointOfIntersectionCurves(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogPointOfIntersectionCurves() override; + ~DialogPointOfIntersectionCurves() override; auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); auto GetFirstCurveId() const -> quint32; - void SetFirstCurveId(quint32 value); + void SetFirstCurveId(quint32 value); auto GetSecondCurveId() const -> quint32; - void SetSecondCurveId(quint32 value); + void SetSecondCurveId(quint32 value); auto GetVCrossPoint() const -> VCrossCurvesPoint; - void SetVCrossPoint(VCrossCurvesPoint vP); + void SetVCrossPoint(VCrossCurvesPoint vP); auto GetHCrossPoint() const -> HCrossCurvesPoint; - void SetHCrossPoint(HCrossCurvesPoint hP); + void SetHCrossPoint(HCrossCurvesPoint hP); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - void SetCurve1AliasSuffix1(const QString &alias); + void SetCurve1AliasSuffix1(const QString &alias); auto GetCurve1AliasSuffix1() const -> QString; - void SetCurve1AliasSuffix2(const QString &alias); + void SetCurve1AliasSuffix2(const QString &alias); auto GetCurve1AliasSuffix2() const -> QString; - void SetCurve2AliasSuffix1(const QString &alias); + void SetCurve2AliasSuffix1(const QString &alias); auto GetCurve2AliasSuffix1() const -> QString; - void SetCurve2AliasSuffix2(const QString &alias); + void SetCurve2AliasSuffix2(const QString &alias); auto GetCurve2AliasSuffix2() const -> QString; public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; + void ChosenObject(quint32 id, const SceneObject &type) override; protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private slots: void CurveChanged(); diff --git a/src/libs/vtools/dialogs/tools/dialogrotation.h b/src/libs/vtools/dialogs/tools/dialogrotation.h index 6b573b983..ff93a6d02 100644 --- a/src/libs/vtools/dialogs/tools/dialogrotation.h +++ b/src/libs/vtools/dialogs/tools/dialogrotation.h @@ -29,7 +29,6 @@ #ifndef DIALOGROTATION_H #define DIALOGROTATION_H -#include #include #include #include @@ -37,53 +36,54 @@ #include #include +#include "../../tools/toolsdef.h" #include "../vmisc/def.h" #include "dialogtool.h" -#include "../../tools/toolsdef.h" namespace Ui { - class DialogRotation; +class DialogRotation; } class DialogRotation : public DialogTool { Q_OBJECT // NOLINT + public: explicit DialogRotation(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogRotation(); + ~DialogRotation() override; auto GetOrigPointId() const -> quint32; - void SetOrigPointId(quint32 value); + void SetOrigPointId(quint32 value); auto GetAngle() const -> QString; - void SetAngle(const QString &value); + void SetAngle(const QString &value); auto GetSuffix() const -> QString; - void SetSuffix(const QString &value); + void SetSuffix(const QString &value); auto GetVisibilityGroupName() const -> QString; - void SetVisibilityGroupName(const QString &name); + void SetVisibilityGroupName(const QString &name); auto HasLinkedVisibilityGroup() const -> bool; void SetHasLinkedVisibilityGroup(bool linked); - void SetVisibilityGroupTags(const QStringList &tags); + void SetVisibilityGroupTags(const QStringList &tags); auto GetVisibilityGroupTags() const -> QStringList; - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; - virtual void SetGroupCategories(const QStringList &categories) override; + void SetGroupCategories(const QStringList &categories) override; - virtual void ShowDialog(bool click) override; + void ShowDialog(bool click) override; auto GetSourceObjects() const -> QVector; - void SetSourceObjects(const QVector &value); + void SetSourceObjects(const QVector &value); public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void SelectedObject(bool selected, quint32 object, quint32 tool) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void SelectedObject(bool selected, quint32 object, quint32 tool) override; private slots: /** @brief DeployAngleTextEdit grow or shrink formula input */ @@ -98,12 +98,12 @@ private slots: void ColorChanged(); protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; private slots: void PointChanged(); @@ -113,13 +113,13 @@ private: Ui::DialogRotation *ui; /** @brief timerAngle timer of check formula of angle */ - QTimer *timerAngle; + QTimer *timerAngle; /** @brief angle formula of angle */ QString formulaAngle; /** @brief formulaBaseHeightAngle base height defined by dialogui */ - int formulaBaseHeightAngle; + int formulaBaseHeightAngle; QVector sourceObjects{}; diff --git a/src/libs/vtools/dialogs/tools/dialogshoulderpoint.h b/src/libs/vtools/dialogs/tools/dialogshoulderpoint.h index bdee5a3cf..975d8ebd4 100644 --- a/src/libs/vtools/dialogs/tools/dialogshoulderpoint.h +++ b/src/libs/vtools/dialogs/tools/dialogshoulderpoint.h @@ -29,7 +29,6 @@ #ifndef DIALOGSHOULDERPOINT_H #define DIALOGSHOULDERPOINT_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogShoulderPoint; +class DialogShoulderPoint; } /** @@ -49,6 +48,7 @@ namespace Ui class DialogShoulderPoint : public DialogTool { Q_OBJECT // NOLINT + public: DialogShoulderPoint(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); ~DialogShoulderPoint() override; @@ -78,6 +78,7 @@ public: auto GetNotes() const -> QString; void ShowDialog(bool click) override; + public slots: void ChosenObject(quint32 id, const SceneObject &type) override; /** @@ -87,6 +88,7 @@ public slots: void PointNameChanged() override; void FXLength(); void EvalFormula(); + protected: void ShowVisualization() override; /** @@ -95,6 +97,7 @@ protected: void SaveData() override; void closeEvent(QCloseEvent *event) override; auto IsValid() const -> bool final; + private: Q_DISABLE_COPY_MOVE(DialogShoulderPoint) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogsinglepoint.h b/src/libs/vtools/dialogs/tools/dialogsinglepoint.h index 41bcb8380..d9a2d8767 100644 --- a/src/libs/vtools/dialogs/tools/dialogsinglepoint.h +++ b/src/libs/vtools/dialogs/tools/dialogsinglepoint.h @@ -29,7 +29,6 @@ #ifndef DIALOGSINGLEPOINT_H #define DIALOGSINGLEPOINT_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogSinglePoint; +class DialogSinglePoint; } /** @@ -49,26 +48,28 @@ namespace Ui class DialogSinglePoint : public DialogTool { Q_OBJECT // NOLINT + public: DialogSinglePoint(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogSinglePoint() override; + ~DialogSinglePoint() override; - void SetData(const QString &name, const QPointF &point); + void SetData(const QString &name, const QPointF &point); auto GetPoint() const -> QPointF; auto GetPointName() const -> QString; - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; public slots: - void mousePress(const QPointF &scenePos); + void mousePress(const QPointF &scenePos); + protected: /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogSinglePoint) // NOLINT diff --git a/src/libs/vtools/dialogs/tools/dialogspline.cpp b/src/libs/vtools/dialogs/tools/dialogspline.cpp index 032787416..79b745acf 100644 --- a/src/libs/vtools/dialogs/tools/dialogspline.cpp +++ b/src/libs/vtools/dialogs/tools/dialogspline.cpp @@ -40,23 +40,20 @@ #include #include #include -#include -#include -#include "../../tools/vabstracttool.h" -#include "../../visualization/visualization.h" #include "../../visualization/path/vistoolspline.h" -#include "../ifc/xml/vdomdocument.h" +#include "../../visualization/visualization.h" +#include "../qmuparser/qmudef.h" #include "../support/dialogeditwrongformula.h" #include "../vgeometry/vpointf.h" #include "../vgeometry/vspline.h" -#include "../vmisc/vabstractapplication.h" +#include "../vmisc/def.h" +#include "../vmisc/vabstractvalapplication.h" #include "../vmisc/vcommonsettings.h" #include "../vpatterndb/vcontainer.h" +#include "../vpatterndb/vtranslatevars.h" #include "../vwidgets/vmaingraphicsscene.h" #include "ui_dialogspline.h" -#include "../vpatterndb/vtranslatevars.h" -#include "../qmuparser/qmudef.h" //--------------------------------------------------------------------------------------------------------------------- /** @@ -65,23 +62,12 @@ * @param parent parent widget */ DialogSpline::DialogSpline(const VContainer *data, quint32 toolId, QWidget *parent) - : DialogTool(data, toolId, parent), - ui(new Ui::DialogSpline), - spl(), - newDuplicate(-1), - formulaBaseHeightAngle1(0), - formulaBaseHeightAngle2(0), - formulaBaseHeightLength1(0), - formulaBaseHeightLength2(0), - timerAngle1(new QTimer(this)), - timerAngle2(new QTimer(this)), - timerLength1(new QTimer(this)), - timerLength2(new QTimer(this)), - flagAngle1(false), - flagAngle2(false), - flagLength1(false), - flagLength2(false), - flagError(false) + : DialogTool(data, toolId, parent), + ui(new Ui::DialogSpline), + timerAngle1(new QTimer(this)), + timerAngle2(new QTimer(this)), + timerLength1(new QTimer(this)), + timerLength2(new QTimer(this)) { ui->setupUi(this); @@ -114,35 +100,25 @@ DialogSpline::DialogSpline(const VContainer *data, quint32 toolId, QWidget *pare ui->doubleSpinBoxApproximationScale->setMaximum(maxCurveApproximationScale); - connect(ui->comboBoxP1, &QComboBox::currentTextChanged, - this, &DialogSpline::PointNameChanged); - connect(ui->comboBoxP4, &QComboBox::currentTextChanged, - this, &DialogSpline::PointNameChanged); + connect(ui->comboBoxP1, &QComboBox::currentTextChanged, this, &DialogSpline::PointNameChanged); + connect(ui->comboBoxP4, &QComboBox::currentTextChanged, this, &DialogSpline::PointNameChanged); connect(ui->toolButtonExprAngle1, &QPushButton::clicked, this, &DialogSpline::FXAngle1); connect(ui->toolButtonExprAngle2, &QPushButton::clicked, this, &DialogSpline::FXAngle2); connect(ui->toolButtonExprLength1, &QPushButton::clicked, this, &DialogSpline::FXLength1); connect(ui->toolButtonExprLength2, &QPushButton::clicked, this, &DialogSpline::FXLength2); - connect(ui->plainTextEditAngle1F, &QPlainTextEdit::textChanged, this, [this]() - { - timerAngle1->start(formulaTimerTimeout); - }); + connect(ui->plainTextEditAngle1F, &QPlainTextEdit::textChanged, this, + [this]() { timerAngle1->start(formulaTimerTimeout); }); - connect(ui->plainTextEditAngle2F, &QPlainTextEdit::textChanged, this, [this]() - { - timerAngle2->start(formulaTimerTimeout); - }); + connect(ui->plainTextEditAngle2F, &QPlainTextEdit::textChanged, this, + [this]() { timerAngle2->start(formulaTimerTimeout); }); - connect(ui->plainTextEditLength1F, &QPlainTextEdit::textChanged, this, [this]() - { - timerLength1->start(formulaTimerTimeout); - }); + connect(ui->plainTextEditLength1F, &QPlainTextEdit::textChanged, this, + [this]() { timerLength1->start(formulaTimerTimeout); }); - connect(ui->plainTextEditLength2F, &QPlainTextEdit::textChanged, this, [this]() - { - timerLength2->start(formulaTimerTimeout); - }); + connect(ui->plainTextEditLength2F, &QPlainTextEdit::textChanged, this, + [this]() { timerLength2->start(formulaTimerTimeout); }); connect(ui->pushButtonGrowAngle1, &QPushButton::clicked, this, &DialogSpline::DeployAngle1TextEdit); connect(ui->pushButtonGrowAngle2, &QPushButton::clicked, this, &DialogSpline::DeployAngle2TextEdit); @@ -178,7 +154,7 @@ DialogSpline::~DialogSpline() */ void DialogSpline::ChosenObject(quint32 id, const SceneObject &type) { - if (prepare == false)// After first choose we ignore all objects + if (!prepare) // After first choose we ignore all objects { if (type == SceneObject::Point) { @@ -219,7 +195,7 @@ void DialogSpline::ChosenObject(quint32 id, const SceneObject &type) //--------------------------------------------------------------------------------------------------------------------- void DialogSpline::SaveData() { - const quint32 d = spl.GetDuplicate();//Save previous value + const quint32 d = spl.GetDuplicate(); // Save previous value spl = CurrentSpline(); newDuplicate <= -1 ? spl.SetDuplicate(d) : spl.SetDuplicate(static_cast(newDuplicate)); @@ -276,7 +252,7 @@ void DialogSpline::DeployLength2TextEdit() //--------------------------------------------------------------------------------------------------------------------- void DialogSpline::FXAngle1() { - auto* dialog = new DialogEditWrongFormula(data, toolId, this); + auto *dialog = new DialogEditWrongFormula(data, toolId, this); dialog->setWindowTitle(tr("Edit first control point angle")); QString angle1F = VTranslateVars::TryFormulaFromUser(ui->plainTextEditAngle1F->toPlainText(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); @@ -284,8 +260,8 @@ void DialogSpline::FXAngle1() dialog->setPostfix(degreeSymbol); if (dialog->exec() == QDialog::Accepted) { - angle1F = VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + angle1F = VAbstractApplication::VApp()->TrVars()->FormulaToUser( + dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); // increase height if needed. if (angle1F.length() > 80) { @@ -300,7 +276,7 @@ void DialogSpline::FXAngle1() //--------------------------------------------------------------------------------------------------------------------- void DialogSpline::FXAngle2() { - auto* dialog = new DialogEditWrongFormula(data, toolId, this); + auto *dialog = new DialogEditWrongFormula(data, toolId, this); dialog->setWindowTitle(tr("Edit second control point angle")); QString angle2F = VTranslateVars::TryFormulaFromUser(ui->plainTextEditAngle2F->toPlainText(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); @@ -308,8 +284,8 @@ void DialogSpline::FXAngle2() dialog->setPostfix(degreeSymbol); if (dialog->exec() == QDialog::Accepted) { - angle2F = VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + angle2F = VAbstractApplication::VApp()->TrVars()->FormulaToUser( + dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); // increase height if needed. if (angle2F.length() > 80) { @@ -324,7 +300,7 @@ void DialogSpline::FXAngle2() //--------------------------------------------------------------------------------------------------------------------- void DialogSpline::FXLength1() { - auto* dialog = new DialogEditWrongFormula(data, toolId, this); + auto *dialog = new DialogEditWrongFormula(data, toolId, this); dialog->setWindowTitle(tr("Edit first control point length")); QString length1F = VTranslateVars::TryFormulaFromUser(ui->plainTextEditLength1F->toPlainText(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); @@ -332,8 +308,8 @@ void DialogSpline::FXLength1() dialog->setPostfix(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true)); if (dialog->exec() == QDialog::Accepted) { - length1F = VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + length1F = VAbstractApplication::VApp()->TrVars()->FormulaToUser( + dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); // increase height if needed. if (length1F.length() > 80) { @@ -348,7 +324,7 @@ void DialogSpline::FXLength1() //--------------------------------------------------------------------------------------------------------------------- void DialogSpline::FXLength2() { - auto* dialog = new DialogEditWrongFormula(data, toolId, this); + auto *dialog = new DialogEditWrongFormula(data, toolId, this); dialog->setWindowTitle(tr("Edit second control point length")); QString length2F = VTranslateVars::TryFormulaFromUser(ui->plainTextEditLength2F->toPlainText(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); @@ -356,8 +332,8 @@ void DialogSpline::FXLength2() dialog->setPostfix(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true)); if (dialog->exec() == QDialog::Accepted) { - length2F = VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + length2F = VAbstractApplication::VApp()->TrVars()->FormulaToUser( + dialog->GetFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); // increase height if needed. if (length2F.length() > 80) { @@ -471,7 +447,7 @@ auto DialogSpline::CurrentSpline() const -> VSpline QString length1F = ui->plainTextEditLength1F->toPlainText(); QString length2F = ui->plainTextEditLength2F->toPlainText(); - const QHash > *vars = data->DataVariables(); + const QHash> *vars = data->DataVariables(); const qreal angle1 = Visualization::FindValFromUser(angle1F, vars); const qreal angle2 = Visualization::FindValFromUser(angle2F, vars); @@ -485,7 +461,7 @@ auto DialogSpline::CurrentSpline() const -> VSpline length1F = VTranslateVars::TryFormulaFromUser(length1F, separator); length2F = VTranslateVars::TryFormulaFromUser(length2F, separator); - VSpline spline(*GetP1(), *GetP4(), angle1, angle1F, angle2, angle2F, length1, length1F, length2, length2F); + VSpline spline(*GetP1(), *GetP4(), angle1, angle1F, angle2, angle2F, length1, length1F, length2, length2F); spline.SetApproximationScale(ui->doubleSpinBoxApproximationScale->value()); spline.SetPenStyle(GetComboBoxCurrentData(ui->comboBoxPenStyle, TypeLineLine)); spline.SetColor(GetComboBoxCurrentData(ui->comboBoxColor, ColorBlack)); @@ -514,11 +490,13 @@ void DialogSpline::PointNameChanged() flagError = true; color = OkColor(this); + const VTranslateVars *trVars = VAbstractApplication::VApp()->TrVars(); + if (getCurrentObjectId(ui->comboBoxP1) == spl.GetP1().id() && getCurrentObjectId(ui->comboBoxP4) == spl.GetP4().id()) { newDuplicate = -1; - ui->lineEditSplineName->setText(VAbstractApplication::VApp()->TrVars()->VarToUser(spl.name())); + ui->lineEditSplineName->setText(trVars->VarToUser(spl.name())); } else { @@ -531,7 +509,7 @@ void DialogSpline::PointNameChanged() newDuplicate = static_cast(DNumber(spline.name())); spline.SetDuplicate(static_cast(newDuplicate)); } - ui->lineEditSplineName->setText(VAbstractApplication::VApp()->TrVars()->VarToUser(spline.name())); + ui->lineEditSplineName->setText(trVars->VarToUser(spline.name())); } catch (const VExceptionBadId &) { @@ -556,28 +534,23 @@ void DialogSpline::ShowDialog(bool click) spl = VSpline(*GetP1(), path->GetP2(), path->GetP3(), *GetP4()); - const QString angle1F = VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(spl.GetStartAngleFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); - const QString angle2F = VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(spl.GetEndAngleFormula(), VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + const bool osSeparator = VAbstractApplication::VApp()->Settings()->GetOsSeparator(); + const VTranslateVars *trVars = VAbstractApplication::VApp()->TrVars(); + + const QString angle1F = trVars->FormulaToUser(spl.GetStartAngleFormula(), osSeparator); + const QString angle2F = trVars->FormulaToUser(spl.GetEndAngleFormula(), osSeparator); ui->plainTextEditAngle1F->setPlainText(angle1F); ui->plainTextEditAngle2F->setPlainText(angle2F); - ui->plainTextEditLength1F->setPlainText( - VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(spl.GetC1LengthFormula(), - VAbstractApplication::VApp()->Settings()->GetOsSeparator())); - ui->plainTextEditLength2F->setPlainText( - VAbstractApplication::VApp()->TrVars() - ->FormulaToUser(spl.GetC2LengthFormula(), - VAbstractApplication::VApp()->Settings()->GetOsSeparator())); + ui->plainTextEditLength1F->setPlainText(trVars->FormulaToUser(spl.GetC1LengthFormula(), osSeparator)); + ui->plainTextEditLength2F->setPlainText(trVars->FormulaToUser(spl.GetC2LengthFormula(), osSeparator)); if (not data->IsUnique(spl.name())) { spl.SetDuplicate(DNumber(spl.name())); } - ui->lineEditSplineName->setText(VAbstractApplication::VApp()->TrVars()->VarToUser(spl.name())); + ui->lineEditSplineName->setText(trVars->VarToUser(spl.name())); DialogAccepted(); } @@ -607,22 +580,21 @@ void DialogSpline::SetSpline(const VSpline &spline) setCurrentPointId(ui->comboBoxP1, spl.GetP1().id()); setCurrentPointId(ui->comboBoxP4, spl.GetP4().id()); - const QString angle1F = VAbstractApplication::VApp()->TrVars()->FormulaToUser(spl.GetStartAngleFormula(), - VAbstractApplication::VApp()->Settings()->GetOsSeparator()); - const QString angle2F = VAbstractApplication::VApp()->TrVars()->FormulaToUser(spl.GetEndAngleFormula(), - VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + const bool osSeparator = VAbstractApplication::VApp()->Settings()->GetOsSeparator(); + const VTranslateVars *trVars = VAbstractApplication::VApp()->TrVars(); + + const QString angle1F = trVars->FormulaToUser(spl.GetStartAngleFormula(), osSeparator); + const QString angle2F = trVars->FormulaToUser(spl.GetEndAngleFormula(), osSeparator); ui->plainTextEditAngle1F->setPlainText(angle1F); ui->plainTextEditAngle2F->setPlainText(angle2F); - const QString length1F = VAbstractApplication::VApp()->TrVars()->FormulaToUser(spl.GetC1LengthFormula(), - VAbstractApplication::VApp()->Settings()->GetOsSeparator()); - const QString length2F = VAbstractApplication::VApp()->TrVars()->FormulaToUser(spl.GetC2LengthFormula(), - VAbstractApplication::VApp()->Settings()->GetOsSeparator()); + const QString length1F = trVars->FormulaToUser(spl.GetC1LengthFormula(), osSeparator); + const QString length2F = trVars->FormulaToUser(spl.GetC2LengthFormula(), osSeparator); ui->plainTextEditLength1F->setPlainText(length1F); ui->plainTextEditLength2F->setPlainText(length2F); - ui->lineEditSplineName->setText(VAbstractApplication::VApp()->TrVars()->VarToUser(spl.name())); + ui->lineEditSplineName->setText(trVars->VarToUser(spl.name())); originAliasSuffix = spl.GetAliasSuffix(); ui->lineEditAlias->setText(originAliasSuffix); diff --git a/src/libs/vtools/dialogs/tools/dialogspline.h b/src/libs/vtools/dialogs/tools/dialogspline.h index daf3ffe1f..30e508942 100644 --- a/src/libs/vtools/dialogs/tools/dialogspline.h +++ b/src/libs/vtools/dialogs/tools/dialogspline.h @@ -29,7 +29,6 @@ #ifndef DIALOGSPLINE_H #define DIALOGSPLINE_H -#include #include #include #include @@ -42,7 +41,7 @@ namespace Ui { - class DialogSpline; +class DialogSpline; } /** @@ -51,28 +50,31 @@ namespace Ui class DialogSpline : public DialogTool { Q_OBJECT // NOLINT + public: DialogSpline(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogSpline() override; + ~DialogSpline() override; auto GetSpline() const -> VSpline; - void SetSpline(const VSpline &spline); + void SetSpline(const VSpline &spline); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void PointNameChanged() override; - virtual void ShowDialog(bool click) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointNameChanged() override; + void ShowDialog(bool click) override; + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; + private slots: void DeployAngle1TextEdit(); void DeployAngle2TextEdit(); @@ -90,6 +92,7 @@ private slots: void EvalLength2(); void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogSpline) // NOLINT @@ -97,15 +100,15 @@ private: Ui::DialogSpline *ui; /** @brief spl spline */ - VSpline spl; + VSpline spl{}; - qint32 newDuplicate; + qint32 newDuplicate{-1}; /** @brief formulaBaseHeight base height defined by dialogui */ - int formulaBaseHeightAngle1; - int formulaBaseHeightAngle2; - int formulaBaseHeightLength1; - int formulaBaseHeightLength2; + int formulaBaseHeightAngle1{0}; + int formulaBaseHeightAngle2{0}; + int formulaBaseHeightLength1{0}; + int formulaBaseHeightLength2{0}; /** @brief timerAngle1 timer of check first angle formula */ QTimer *timerAngle1; @@ -114,11 +117,11 @@ private: QTimer *timerLength2; /** @brief flagAngle1 true if value of first angle is correct */ - bool flagAngle1; - bool flagAngle2; - bool flagLength1; - bool flagLength2; - bool flagError; + bool flagAngle1{false}; + bool flagAngle2{false}; + bool flagLength1{false}; + bool flagLength2{false}; + bool flagError{false}; bool flagAlias{true}; QString originAliasSuffix{}; diff --git a/src/libs/vtools/dialogs/tools/dialogsplinepath.h b/src/libs/vtools/dialogs/tools/dialogsplinepath.h index 084329da6..acca8c78a 100644 --- a/src/libs/vtools/dialogs/tools/dialogsplinepath.h +++ b/src/libs/vtools/dialogs/tools/dialogsplinepath.h @@ -29,7 +29,6 @@ #ifndef DIALOGSPLINEPATH_H #define DIALOGSPLINEPATH_H -#include #include #include #include @@ -43,7 +42,7 @@ namespace Ui { - class DialogSplinePath; +class DialogSplinePath; } /** @@ -52,26 +51,30 @@ namespace Ui class DialogSplinePath : public DialogTool { Q_OBJECT // NOLINT + public: DialogSplinePath(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogSplinePath() override; + ~DialogSplinePath() override; auto GetPath() const -> VSplinePath; - void SetPath(const VSplinePath &value); + void SetPath(const VSplinePath &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void ShowDialog(bool click) override; - void PathUpdated(const VSplinePath &path); + void ChosenObject(quint32 id, const SceneObject &type) override; + void ShowDialog(bool click) override; + void PathUpdated(const VSplinePath &path); + protected: - virtual void ShowVisualization() override; - virtual void SaveData() override; - virtual void closeEvent(QCloseEvent *event) override; - virtual auto IsValid() const -> bool final; - void showEvent( QShowEvent *event ) override; + void ShowVisualization() override; + void SaveData() override; + void closeEvent(QCloseEvent *event) override; + auto IsValid() const -> bool final; + void showEvent(QShowEvent *event) override; void resizeEvent(QResizeEvent *event) override; + private slots: void PointChanged(int row); void currentPointChanged(int index); @@ -92,6 +95,7 @@ private slots: void FXLength2(); void ValidateAlias(); + private: Q_DISABLE_COPY_MOVE(DialogSplinePath) // NOLINT @@ -124,13 +128,13 @@ private: void EvalLength1(); void EvalLength2(); - void NewItem(const VSplinePoint &point); - void DataPoint(const VSplinePoint &p); - void SavePath(); + void NewItem(const VSplinePoint &point); + void DataPoint(const VSplinePoint &p); + void SavePath(); auto AllIds() const -> QSet; auto IsPathValid() const -> bool; auto ExtractPath() const -> VSplinePath; - void ShowPointIssue(const QString &pName); + void ShowPointIssue(const QString &pName); }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogtool.h b/src/libs/vtools/dialogs/tools/dialogtool.h index cd6285ea1..aa6b6b588 100644 --- a/src/libs/vtools/dialogs/tools/dialogtool.h +++ b/src/libs/vtools/dialogs/tools/dialogtool.h @@ -29,7 +29,6 @@ #ifndef DIALOGTOOL_H #define DIALOGTOOL_H -#include #include #include #include @@ -49,15 +48,15 @@ #include #include -#include "../vtools/visualization/visualization.h" // Issue on Windows -#include "../ifc/xml/vabstractpattern.h" +#include "../dialogtoolbox.h" #include "../ifc/ifcdef.h" +#include "../ifc/xml/vabstractpattern.h" #include "../vgeometry/vgeometrydef.h" #include "../vmisc/def.h" #include "../vmisc/vabstractapplication.h" #include "../vmisc/vcommonsettings.h" +#include "../vtools/visualization/visualization.h" // Issue on Windows #include "../vwidgets/vmaingraphicsscene.h" -#include "../dialogtoolbox.h" template class QSharedPointer; @@ -68,7 +67,11 @@ class QLabel; class QPlainTextEdit; class VAbstractTool; -enum class FillComboBox : qint8 { Whole, NoChildren}; +enum class FillComboBox : qint8 +{ + Whole, + NoChildren +}; QT_WARNING_PUSH QT_WARNING_DISABLE_GCC("-Wsuggest-final-types") @@ -80,20 +83,21 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") class DialogTool : public QDialog { Q_OBJECT // NOLINT + public: DialogTool(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogTool() override; + ~DialogTool() override; auto GetAssociatedTool() -> VAbstractTool *; - void SetAssociatedTool(VAbstractTool* tool); + void SetAssociatedTool(VAbstractTool *tool); - virtual void ShowDialog(bool click); - virtual void Build(const Tool &type); - virtual void SetPiecesList(const QVector &list); - virtual void SetPatternDoc(VAbstractPattern *doc); + virtual void ShowDialog(bool click); + virtual void Build(const Tool &type); + virtual void SetPiecesList(const QVector &list); + virtual void SetPatternDoc(VAbstractPattern *doc); auto GetToolId() const -> quint32; - void SetToolId(const quint32 &value); + void SetToolId(const quint32 &value); virtual void SetGroupCategories(const QStringList &categories); @@ -106,87 +110,86 @@ signals: * @brief DialogClosed signal dialog closed * @param result keep result */ - void DialogClosed(int result); + void DialogClosed(int result); /** * @brief DialogApplied emit signal dialog apply changes */ - void DialogApplied(); + void DialogApplied(); /** * @brief ToolTip emit tooltipe for tool * @param toolTip text tooltipe */ - void ToolTip(const QString &toolTip); + void ToolTip(const QString &toolTip); public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type); - virtual void SelectedObject(bool selected, quint32 object, quint32 tool); - virtual void DialogAccepted(); + virtual void ChosenObject(quint32 id, const SceneObject &type); + virtual void SelectedObject(bool selected, quint32 object, quint32 tool); + virtual void DialogAccepted(); /** * @brief DialogApply save data and emit signal DialogApplied. */ - virtual void DialogApply(); - virtual void DialogRejected(); - virtual void PointNameChanged() {} + virtual void DialogApply(); + virtual void DialogRejected(); + virtual void PointNameChanged() {} + protected: /** @brief data container with data */ const VContainer *data; /** @brief isInitialized true if window is initialized */ - bool isInitialized; + bool isInitialized; /** @brief bOk button ok */ - QPushButton *bOk; + QPushButton *bOk; /** @brief bApply button apply */ - QPushButton *bApply; + QPushButton *bApply; /** * @brief associatedTool vdrawtool associated with opened dialog. */ - VAbstractTool *associatedTool; - quint32 toolId; + VAbstractTool *associatedTool; + quint32 toolId; /** @brief prepare show if we prepare. Show dialog after finish working with visual part of tool*/ - bool prepare; + bool prepare; QPointer vis; - virtual void closeEvent ( QCloseEvent * event ) override; - virtual void showEvent( QShowEvent *event ) override; - virtual void keyPressEvent(QKeyEvent *event) override; - virtual auto eventFilter(QObject *object, QEvent *event) -> bool override; + void closeEvent(QCloseEvent *event) override; + void showEvent(QShowEvent *event) override; + void keyPressEvent(QKeyEvent *event) override; + auto eventFilter(QObject *object, QEvent *event) -> bool override; virtual auto IsValid() const -> bool = 0; - virtual void CheckState(); + virtual void CheckState(); - void FillComboBoxPiecesList(QComboBox *box, const QVector &list); - void FillComboBoxPoints(QComboBox *box, FillComboBox rule = FillComboBox::Whole, - quint32 ch1 = NULL_ID, quint32 ch2 = NULL_ID) const; - void FillComboBoxArcs(QComboBox *box, FillComboBox rule = FillComboBox::Whole, - quint32 ch1 = NULL_ID, quint32 ch2 = NULL_ID) const; - void FillComboBoxSplines(QComboBox *box)const; - void FillComboBoxSplinesPath(QComboBox *box)const; - void FillComboBoxCurves(QComboBox *box)const; - void FillComboBoxTypeLine(QComboBox *box, const QMap &stylesPics, - const QString &def=TypeLineLine) const; - void FillComboBoxLineColors(QComboBox *box)const; - void FillComboBoxLineColors(QComboBox *box, const QMap &lineColors)const; - void FillComboBoxCrossCirclesPoints(QComboBox *box) const; - void FillComboBoxVCrossCurvesPoint(QComboBox *box) const; - void FillComboBoxHCrossCurvesPoint(QComboBox *box) const; + void FillComboBoxPiecesList(QComboBox *box, const QVector &list); + void FillComboBoxPoints(QComboBox *box, FillComboBox rule = FillComboBox::Whole, quint32 ch1 = NULL_ID, + quint32 ch2 = NULL_ID) const; + void FillComboBoxArcs(QComboBox *box, FillComboBox rule = FillComboBox::Whole, quint32 ch1 = NULL_ID, + quint32 ch2 = NULL_ID) const; + void FillComboBoxSplines(QComboBox *box) const; + void FillComboBoxSplinesPath(QComboBox *box) const; + void FillComboBoxCurves(QComboBox *box) const; + void FillComboBoxTypeLine(QComboBox *box, const QMap &stylesPics, + const QString &def = TypeLineLine) const; + void FillComboBoxLineColors(QComboBox *box) const; + void FillComboBoxLineColors(QComboBox *box, const QMap &lineColors) const; + void FillComboBoxCrossCirclesPoints(QComboBox *box) const; + void FillComboBoxVCrossCurvesPoint(QComboBox *box) const; + void FillComboBoxHCrossCurvesPoint(QComboBox *box) const; auto GetComboBoxCurrentData(const QComboBox *box, const QString &def) const -> QString; - void ChangeCurrentData(QComboBox *box, const QVariant &value) const; + void ChangeCurrentData(QComboBox *box, const QVariant &value) const; auto Eval(const FormulaData &formulaData, bool &flag) -> qreal; - void setCurrentPointId(QComboBox *box, const quint32 &value, - FillComboBox rule = FillComboBox::NoChildren, - const quint32 &ch1 = NULL_ID, const quint32 &ch2 = NULL_ID) const; - void setCurrentSplineId(QComboBox *box, const quint32 &value) const; - void setCurrentArcId(QComboBox *box, const quint32 &value, - FillComboBox rule = FillComboBox::NoChildren, - const quint32 &ch1 = NULL_ID, const quint32 &ch2 = NULL_ID) const; - void setCurrentSplinePathId(QComboBox *box, const quint32 &value) const; - void setCurrentCurveId(QComboBox *box, const quint32 &value) const; + void setCurrentPointId(QComboBox *box, const quint32 &value, FillComboBox rule = FillComboBox::NoChildren, + const quint32 &ch1 = NULL_ID, const quint32 &ch2 = NULL_ID) const; + void setCurrentSplineId(QComboBox *box, const quint32 &value) const; + void setCurrentArcId(QComboBox *box, const quint32 &value, FillComboBox rule = FillComboBox::NoChildren, + const quint32 &ch1 = NULL_ID, const quint32 &ch2 = NULL_ID) const; + void setCurrentSplinePathId(QComboBox *box, const quint32 &value) const; + void setCurrentCurveId(QComboBox *box, const quint32 &value) const; auto getCurrentObjectId(QComboBox *box) const -> quint32; @@ -194,40 +197,37 @@ protected: auto SetObject(const quint32 &id, QComboBox *box, const QString &toolTip) -> bool; - template - void InitOkCancelApply(T *ui); + template void InitOkCancelApply(T *ui); - template - void InitOkCancel(T *ui); + template void InitOkCancel(T *ui); - template - void AddVisualization(); + template void AddVisualization(); template auto GetListInternals(const QListWidget *list) const -> QVector; - virtual void ShowVisualization() {} + virtual void ShowVisualization() {} /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() {} + virtual void SaveData() {} auto DNumber(const QString &baseName) const -> quint32; - void NewNodeItem(QListWidget *listWidget, const VPieceNode &node, bool showPassmark = true, + void NewNodeItem(QListWidget *listWidget, const VPieceNode &node, bool showPassmark = true, bool showExclusion = true); - void InitNodeAngles(QComboBox *box); + void InitNodeAngles(QComboBox *box); + private: Q_DISABLE_COPY_MOVE(DialogTool) // NOLINT - void FillList(QComboBox *box, const QMap &list)const; + void FillList(QComboBox *box, const QMap &list) const; - template - void PrepareList(QMap &list, quint32 id) const; + template void PrepareList(QMap &list, quint32 id) const; auto IsSpline(const QSharedPointer &obj) const -> bool; auto IsSplinePath(const QSharedPointer &obj) const -> bool; template - void FillCombo(QComboBox *box, GOType gType, FillComboBox rule = FillComboBox::Whole, - const quint32 &ch1 = NULL_ID, const quint32 &ch2 = NULL_ID) const; + void FillCombo(QComboBox *box, GOType gType, FillComboBox rule = FillComboBox::Whole, const quint32 &ch1 = NULL_ID, + const quint32 &ch2 = NULL_ID) const; }; // cppcheck-suppress unknownMacro @@ -286,13 +286,12 @@ inline void DialogTool::InitOkCancel(T *ui) } //--------------------------------------------------------------------------------------------------------------------- -template -inline void DialogTool::AddVisualization() +template inline void DialogTool::AddVisualization() { if (prepare == false) { VMainGraphicsScene *scene = - qobject_cast(VAbstractValApplication::VApp()->getCurrentScene()); + qobject_cast(VAbstractValApplication::VApp()->getCurrentScene()); SCASSERT(scene != nullptr) T *toolVis = qobject_cast(vis); @@ -320,7 +319,7 @@ template inline auto DialogTool::getCurrentCrossPoint(QComboBox *bo return static_cast(1); } - switch(value) + switch (value) { case 1: case 2: diff --git a/src/libs/vtools/dialogs/tools/dialogtriangle.h b/src/libs/vtools/dialogs/tools/dialogtriangle.h index 10d99a0fc..6f35f9a06 100644 --- a/src/libs/vtools/dialogs/tools/dialogtriangle.h +++ b/src/libs/vtools/dialogs/tools/dialogtriangle.h @@ -29,7 +29,6 @@ #ifndef DIALOGTRIANGLE_H #define DIALOGTRIANGLE_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogTriangle; +class DialogTriangle; } /** @@ -49,37 +48,40 @@ namespace Ui class DialogTriangle : public DialogTool { Q_OBJECT // NOLINT + public: DialogTriangle(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogTriangle() override; + ~DialogTriangle() override; auto GetAxisP1Id() const -> quint32; - void SetAxisP1Id(const quint32 &value); + void SetAxisP1Id(const quint32 &value); auto GetAxisP2Id() const -> quint32; - void SetAxisP2Id(const quint32 &value); + void SetAxisP2Id(const quint32 &value); auto GetFirstPointId() const -> quint32; - void SetFirstPointId(const quint32 &value); + void SetFirstPointId(const quint32 &value); auto GetSecondPointId() const -> quint32; - void SetSecondPointId(const quint32 &value); + void SetSecondPointId(const quint32 &value); auto GetPointName() const -> QString; - void SetPointName(const QString &value); + void SetPointName(const QString &value); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void PointNameChanged() override; + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointNameChanged() override; + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogTriangle) // NOLINT @@ -93,7 +95,7 @@ private: bool flagError; /** @brief number number of handled objects */ - qint32 number{0}; + qint32 number{0}; }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/dialogs/tools/dialogtruedarts.h b/src/libs/vtools/dialogs/tools/dialogtruedarts.h index b175b9955..79bf8c4fd 100644 --- a/src/libs/vtools/dialogs/tools/dialogtruedarts.h +++ b/src/libs/vtools/dialogs/tools/dialogtruedarts.h @@ -29,7 +29,6 @@ #ifndef DIALOGTRUEDARTS_H #define DIALOGTRUEDARTS_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogTrueDarts; +class DialogTrueDarts; } class DialogTrueDarts : public DialogTool @@ -49,43 +48,45 @@ class DialogTrueDarts : public DialogTool public: DialogTrueDarts(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - ~DialogTrueDarts(); + ~DialogTrueDarts() override; auto GetFirstNewDartPointName() -> QString; auto GetSecondNewDartPointName() -> QString; - void SetNewDartPointNames(const QString &firstPoint, const QString &secondPoint); + void SetNewDartPointNames(const QString &firstPoint, const QString &secondPoint); auto GetFirstBasePointId() const -> quint32; - void SetFirstBasePointId(const quint32 &value); + void SetFirstBasePointId(const quint32 &value); auto GetSecondBasePointId() const -> quint32; - void SetSecondBasePointId(const quint32 &value); + void SetSecondBasePointId(const quint32 &value); auto GetFirstDartPointId() const -> quint32; - void SetFirstDartPointId(const quint32 &value); + void SetFirstDartPointId(const quint32 &value); auto GetSecondDartPointId() const -> quint32; - void SetSecondDartPointId(const quint32 &value); + void SetSecondDartPointId(const quint32 &value); auto GetThirdDartPointId() const -> quint32; - void SetThirdDartPointId(const quint32 &value); + void SetThirdDartPointId(const quint32 &value); - void SetChildrenId(const quint32 &ch1, const quint32 &ch2); + void SetChildrenId(const quint32 &ch1, const quint32 &ch2); - void SetNotes(const QString ¬es); + void SetNotes(const QString ¬es); auto GetNotes() const -> QString; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; - virtual void PointNameChanged() override; - void NameDartPoint1Changed(); - void NameDartPoint2Changed(); + void ChosenObject(quint32 id, const SceneObject &type) override; + void PointNameChanged() override; + void NameDartPoint1Changed(); + void NameDartPoint2Changed(); + protected: - virtual void ShowVisualization() override; + void ShowVisualization() override; /** * @brief SaveData Put dialog data in local variables */ - virtual void SaveData() override; - virtual auto IsValid() const -> bool final; + void SaveData() override; + auto IsValid() const -> bool final; private: Q_DISABLE_COPY_MOVE(DialogTrueDarts) // NOLINT @@ -109,7 +110,7 @@ private: void FillComboBoxs(const quint32 &ch1, const quint32 &ch2); - void CheckName(QLineEdit* edit, QLabel *labelEditNamePoint, const QString &pointD1Name, const QString &pointD2Name, + void CheckName(QLineEdit *edit, QLabel *labelEditNamePoint, const QString &pointD1Name, const QString &pointD2Name, QLineEdit *secondPointName, bool &flagName); }; diff --git a/src/libs/vtools/dialogs/tools/dialoguniondetails.h b/src/libs/vtools/dialogs/tools/dialoguniondetails.h index 62055ddf3..4b735d189 100644 --- a/src/libs/vtools/dialogs/tools/dialoguniondetails.h +++ b/src/libs/vtools/dialogs/tools/dialoguniondetails.h @@ -29,7 +29,6 @@ #ifndef DIALOGUNIONDETAILS_H #define DIALOGUNIONDETAILS_H -#include #include #include #include @@ -40,7 +39,7 @@ namespace Ui { - class DialogUnionDetails; +class DialogUnionDetails; } /** @@ -49,9 +48,10 @@ namespace Ui class DialogUnionDetails : public DialogTool { Q_OBJECT // NOLINT + public: DialogUnionDetails(const VContainer *data, quint32 toolId, QWidget *parent = nullptr); - virtual ~DialogUnionDetails() override; + ~DialogUnionDetails() override; auto getD1() const -> quint32; auto getD2() const -> quint32; @@ -59,10 +59,12 @@ public: auto getIndexD2() const -> vsizetype; auto RetainPieces() const -> bool; + public slots: - virtual void ChosenObject(quint32 id, const SceneObject &type) override; + void ChosenObject(quint32 id, const SceneObject &type) override; + protected: - virtual auto IsValid() const -> bool final { return true; } + auto IsValid() const -> bool final { return true; } private: Q_DISABLE_COPY_MOVE(DialogUnionDetails) // NOLINT @@ -77,28 +79,27 @@ private: vsizetype indexD2; /** @brief d1 id first detail */ - quint32 d1; + quint32 d1; /** @brief d2 id second detail */ - quint32 d2; + quint32 d2; /** @brief numberD number of detail, what we already have */ - qint32 numberD; + qint32 numberD; /** @brief numberP number of points, what we already have */ - qint32 numberP; + qint32 numberP; /** @brief p1 id first point of detail */ - quint32 p1; + quint32 p1; /** @brief p2 id second point of detail */ - quint32 p2; + quint32 p2; auto CheckObject(const quint32 &id, const quint32 &idDetail) const -> bool; auto CheckDetail(const quint32 &idDetail) const -> bool; - void ChoosedDetail(const quint32 &id, const SceneObject &type, quint32 &idDetail, - vsizetype &index); + void ChoosedDetail(const quint32 &id, const SceneObject &type, quint32 &idDetail, vsizetype &index); }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h index 9c0f7e4d2..35f063cdf 100644 --- a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h +++ b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.h @@ -29,19 +29,18 @@ #ifndef VABSTRACTOPERATION_H #define VABSTRACTOPERATION_H -#include -#include +#include #include #include #include #include #include -#include +#include +#include "../../toolsdef.h" #include "../vdrawtool.h" #include "../vwidgets/vsimplecurve.h" #include "../vwidgets/vsimplepoint.h" -#include "../../toolsdef.h" struct DestinationItem { @@ -54,8 +53,9 @@ struct DestinationItem struct VAbstractOperationInitData : VDrawToolInitData { VAbstractOperationInitData() - : VDrawToolInitData() - {} + : VDrawToolInitData() + { + } QString suffix{}; QVector source{}; @@ -74,6 +74,7 @@ class VAbstractOperation : public VDrawTool, public QGraphicsLineItem // Fix warning "Class implements the interface QGraphicsItem but does not list it // in Q_INTERFACES. qobject_cast to QGraphicsItem will not work!" Q_INTERFACES(QGraphicsItem) + public: virtual ~VAbstractOperation() = default; @@ -84,7 +85,7 @@ public: virtual auto getTagName() const -> QString override; auto Suffix() const -> QString; - void SetSuffix(const QString &suffix); + void SetSuffix(const QString &suffix); virtual void SetNotes(const QString ¬es) override; @@ -109,29 +110,30 @@ public slots: virtual void AllowSelecting(bool enabled) override; virtual void EnableToolMove(bool move) override; - void AllowPointHover(bool enabled); - void AllowPointSelecting(bool enabled); + void AllowPointHover(bool enabled); + void AllowPointSelecting(bool enabled); - void AllowPointLabelHover(bool enabled); - void AllowPointLabelSelecting(bool enabled); + void AllowPointLabelHover(bool enabled); + void AllowPointLabelSelecting(bool enabled); - void AllowSplineHover(bool enabled); - void AllowSplineSelecting(bool enabled); + void AllowSplineHover(bool enabled); + void AllowSplineSelecting(bool enabled); - void AllowSplinePathHover(bool enabled); - void AllowSplinePathSelecting(bool enabled); + void AllowSplinePathHover(bool enabled); + void AllowSplinePathSelecting(bool enabled); - void AllowArcHover(bool enabled); - void AllowArcSelecting(bool enabled); + void AllowArcHover(bool enabled); + void AllowArcSelecting(bool enabled); - void AllowElArcHover(bool enabled); - void AllowElArcSelecting(bool enabled); + void AllowElArcHover(bool enabled); + void AllowElArcSelecting(bool enabled); virtual void ToolSelectionType(const SelectionType &type) override; virtual void Disable(bool disable, const QString &namePP) override; - void ObjectSelected(bool selected, quint32 objId); - void DeleteFromLabel(); - void LabelChangePosition(const QPointF &pos, quint32 labelId); + void ObjectSelected(bool selected, quint32 objId); + void DeleteFromLabel(); + void LabelChangePosition(const QPointF &pos, quint32 labelId); + protected: QString suffix; @@ -157,19 +159,15 @@ protected: virtual void UpdateNamePosition(quint32 id, const QPointF &pos) override; void SaveSourceDestination(QDomElement &tag); - template - void ShowToolVisualization(bool show); + template void ShowToolVisualization(bool show); - template - void SetDialogVisibilityGroupData(QPointer dialogTool); + template void SetDialogVisibilityGroupData(QPointer dialogTool); - template - void SaveVisibilityGroupData(QPointer dialogTool); + template void SaveVisibilityGroupData(QPointer dialogTool); void InitCurve(quint32 id, VContainer *data, GOType curveType, SceneObject sceneType); - template - static void InitOperationToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitOperationToolConnections(VMainGraphicsScene *scene, T *tool); void InitOperatedObjects(); @@ -177,7 +175,8 @@ protected: auto ComplexCurveToolTip(quint32 itemId) const -> QString; auto VisibilityGroupToolTip() const -> QString; - static void CreateVisibilityGroup(const VAbstractOperationInitData & initData); + static void CreateVisibilityGroup(const VAbstractOperationInitData &initData); + private: Q_DISABLE_COPY_MOVE(VAbstractOperation) // NOLINT @@ -188,8 +187,7 @@ private: }; //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractOperation::SetDialogVisibilityGroupData(QPointer dialogTool) +template void VAbstractOperation::SetDialogVisibilityGroupData(QPointer dialogTool) { SCASSERT(not dialogTool.isNull()) @@ -208,8 +206,7 @@ void VAbstractOperation::SetDialogVisibilityGroupData(QPointer dialogTool) } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractOperation::SaveVisibilityGroupData(QPointer dialogTool) +template void VAbstractOperation::SaveVisibilityGroupData(QPointer dialogTool) { SCASSERT(not dialogTool.isNull()) @@ -220,8 +217,7 @@ void VAbstractOperation::SaveVisibilityGroupData(QPointer dialogTool) } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractOperation::ShowToolVisualization(bool show) +template void VAbstractOperation::ShowToolVisualization(bool show) { if (show) { @@ -245,8 +241,7 @@ void VAbstractOperation::ShowToolVisualization(bool show) } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractOperation::InitOperationToolConnections(VMainGraphicsScene *scene, T *tool) +template void VAbstractOperation::InitOperationToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) diff --git a/src/libs/vtools/tools/drawTools/operation/vtoolmove.h b/src/libs/vtools/tools/drawTools/operation/vtoolmove.h index a8789bea2..e0b613eb0 100644 --- a/src/libs/vtools/tools/drawTools/operation/vtoolmove.h +++ b/src/libs/vtools/tools/drawTools/operation/vtoolmove.h @@ -29,7 +29,7 @@ #ifndef VTOOLMOVING_H #define VTOOLMOVING_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h b/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h index 51d2bd017..b9586ee06 100644 --- a/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h +++ b/src/libs/vtools/tools/drawTools/operation/vtoolrotation.h @@ -29,7 +29,7 @@ #ifndef VTOOLROTATION_H #define VTOOLROTATION_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.cpp index 4df2bcda6..04bf64ad1 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.cpp @@ -37,34 +37,27 @@ #include #include #include -#include -#include +#include "../../../visualization/line/visline.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" #include "../ifc/xml/vabstractpattern.h" -#include "../qmuparser/qmutokenparser.h" #include "../qmuparser/qmudef.h" +#include "../qmuparser/qmutokenparser.h" +#include "../vdrawtool.h" +#include "../vgeometry/vabstractarc.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" #include "../vgeometry/vspline.h" -#include "../vgeometry/vabstractarc.h" #include "../vpatterndb/vcontainer.h" -#include "../vwidgets/vcontrolpointspline.h" #include "../vwidgets/global.h" -#include "../../../visualization/line/visline.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" //--------------------------------------------------------------------------------------------------------------------- VAbstractSpline::VAbstractSpline(VAbstractPattern *doc, VContainer *data, quint32 id, const QString ¬es, QGraphicsItem *parent) - :VDrawTool(doc, data, id, notes), - QGraphicsPathItem(parent), - controlPoints(), - sceneType(SceneObject::Unknown), - m_isHovered(false), - detailsMode(VAbstractApplication::VApp()->Settings()->IsShowCurveDetails()), - m_acceptHoverEvents(true) + : VDrawTool(doc, data, id, notes), + QGraphicsPathItem(parent), + m_detailsMode(VAbstractApplication::VApp()->Settings()->IsShowCurveDetails()) { InitDefShape(); setAcceptHoverEvents(m_acceptHoverEvents); @@ -77,17 +70,16 @@ auto VAbstractSpline::shape() const -> QPainterPath const QVector points = curve->GetPoints(); QPainterPath path; - for (qint32 i = 0; i < points.count()-1; ++i) + for (qint32 i = 0; i < points.count() - 1; ++i) { path.moveTo(points.at(i)); - path.lineTo(points.at(i+1)); + path.lineTo(points.at(i + 1)); } - if (m_isHovered || detailsMode) + if (m_isHovered || m_detailsMode) { - path.addPath(VAbstractCurve::ShowDirection(curve->DirectionArrows(), - ScaleWidth(VAbstractCurve::LengthCurveDirectionArrow(), - SceneScale(scene())))); + path.addPath(VAbstractCurve::ShowDirection( + curve->DirectionArrows(), ScaleWidth(VAbstractCurve::LengthCurveDirectionArrow(), SceneScale(scene())))); } path.setFillRule(Qt::WindingFill); return ItemShapeFromPath(path, pen()); @@ -105,7 +97,7 @@ void VAbstractSpline::paint(QPainter *painter, const QStyleOptionGraphicsItem *o auto PaintSpline = [this, curve](QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) { - if (m_isHovered || detailsMode) + if (m_isHovered || m_detailsMode) { painter->save(); @@ -115,9 +107,9 @@ void VAbstractSpline::paint(QPainter *painter, const QStyleOptionGraphicsItem *o painter->setPen(arrowPen); painter->setBrush(brush()); - painter->drawPath(VAbstractCurve::ShowDirection(curve->DirectionArrows(), - ScaleWidth(VAbstractCurve::LengthCurveDirectionArrow(), - SceneScale(scene())))); + painter->drawPath(VAbstractCurve::ShowDirection( + curve->DirectionArrows(), + ScaleWidth(VAbstractCurve::LengthCurveDirectionArrow(), SceneScale(scene())))); painter->restore(); } @@ -134,6 +126,13 @@ auto VAbstractSpline::getTagName() const -> QString return VAbstractPattern::TagSpline; } +//--------------------------------------------------------------------------------------------------------------------- +void VAbstractSpline::ShowHandles(bool show) +{ + Q_UNUSED(show); + update(); // Show direction +} + //--------------------------------------------------------------------------------------------------------------------- /** * @brief FullUpdateFromFile update tool data form file. @@ -153,34 +152,24 @@ void VAbstractSpline::Disable(bool disable, const QString &namePP) } //--------------------------------------------------------------------------------------------------------------------- -void VAbstractSpline::DetailsMode(bool mode) +void VAbstractSpline::SetDetailsMode(bool mode) { - detailsMode = mode; + m_detailsMode = mode; RefreshGeometry(); - ShowHandles(detailsMode); + ShowHandles(m_detailsMode); } //--------------------------------------------------------------------------------------------------------------------- void VAbstractSpline::AllowHover(bool enabled) { // Manually handle hover events. Need for setting cursor for not selectable paths. - m_acceptHoverEvents = enabled; - - for (auto *point : qAsConst(controlPoints)) - { - point->setAcceptHoverEvents(enabled); - } + SetAcceptHoverEvents(enabled); } //--------------------------------------------------------------------------------------------------------------------- void VAbstractSpline::AllowSelecting(bool enabled) { setFlag(QGraphicsItem::ItemIsSelectable, enabled); - - for (auto *point : qAsConst(controlPoints)) - { - point->setFlag(QGraphicsItem::ItemIsSelectable, enabled); - } } //--------------------------------------------------------------------------------------------------------------------- @@ -188,10 +177,11 @@ auto VAbstractSpline::MakeToolTip() const -> QString { const QSharedPointer curve = VAbstractTool::data.GeometricObject(m_id); - const QString toolTip = QString("" - "" - "" - "
%4: %5
%1: %2 %3
") + const QString toolTip = + QString("" + "" + "" + "
%4: %5
%1: %2 %3
") .arg(tr("Length")) .arg(VAbstractValApplication::VApp()->fromPixel(curve->GetLength())) .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), tr("Label"), curve->ObjectName()); @@ -273,16 +263,16 @@ void VAbstractSpline::keyReleaseEvent(QKeyEvent *event) { DeleteToolWithConfirm(); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } break; default: break; } - QGraphicsPathItem::keyReleaseEvent ( event ); + QGraphicsPathItem::keyReleaseEvent(event); } //--------------------------------------------------------------------------------------------------------------------- @@ -292,12 +282,12 @@ void VAbstractSpline::mousePressEvent(QGraphicsSceneMouseEvent *event) QGraphicsPathItem::mousePressEvent(event); // Somehow clicking on notselectable object do not clean previous selections. - if (not (flags() & ItemIsSelectable) && scene()) + if (not(flags() & ItemIsSelectable) && scene()) { scene()->clearSelection(); } - event->accept();// Special for not selectable item first need to call standard mousePressEvent then accept event + event->accept(); // Special for not selectable item first need to call standard mousePressEvent then accept event } //--------------------------------------------------------------------------------------------------------------------- @@ -324,7 +314,7 @@ void VAbstractSpline::SaveOptions(QDomElement &tag, QSharedPointer &ob doc->SetAttribute(tag, AttrPenStyle, curve->GetPenStyle()); doc->SetAttribute(tag, AttrAScale, curve->GetApproximationScale()); doc->SetAttributeOrRemoveIf(tag, AttrAlias, curve->GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); } //--------------------------------------------------------------------------------------------------------------------- @@ -340,8 +330,8 @@ void VAbstractSpline::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) } //--------------------------------------------------------------------------------------------------------------------- -auto VAbstractSpline::CorrectedSpline(const VSpline &spline, const SplinePointPosition &position, - const QPointF &pos) const -> VSpline +auto VAbstractSpline::CorrectedSpline(const VSpline &spline, const SplinePointPosition &position, const QPointF &pos) + -> VSpline { VSpline spl; if (position == SplinePointPosition::FirstPoint) @@ -399,27 +389,13 @@ auto VAbstractSpline::CorrectedSpline(const VSpline &spline, const SplinePointPo newLength2 = spline.GetC2Length(); newLength2F = spline.GetC2LengthFormula(); } - spl = VSpline(spline.GetP1(), spline.GetP4(), spline.GetStartAngle(), spline.GetStartAngleFormula(), - newAngle2, newAngle2F, spline.GetC1Length(), spline.GetC1LengthFormula(), - newLength2, newLength2F); + spl = VSpline(spline.GetP1(), spline.GetP4(), spline.GetStartAngle(), spline.GetStartAngleFormula(), newAngle2, + newAngle2F, spline.GetC1Length(), spline.GetC1LengthFormula(), newLength2, newLength2F); } return spl; } -//--------------------------------------------------------------------------------------------------------------------- -void VAbstractSpline::CurveSelected(bool selected) -{ - setSelected(selected); - - for (auto *point : qAsConst(controlPoints)) - { - point->blockSignals(true); - point->setSelected(selected); - point->blockSignals(false); - } -} - //--------------------------------------------------------------------------------------------------------------------- void VAbstractSpline::InitDefShape() { @@ -427,16 +403,6 @@ void VAbstractSpline::InitDefShape() this->setPath(curve->GetPath()); } -//--------------------------------------------------------------------------------------------------------------------- -void VAbstractSpline::ShowHandles(bool show) -{ - for (auto *point : qAsConst(controlPoints)) - { - point->setVisible(show); - } - update();// Show direction -} - //--------------------------------------------------------------------------------------------------------------------- auto VAbstractSpline::GetLineColor() const -> QString { @@ -526,8 +492,9 @@ void VAbstractSpline::GroupVisibility(quint32 object, bool visible) //--------------------------------------------------------------------------------------------------------------------- VToolAbstractArc::VToolAbstractArc(VAbstractPattern *doc, VContainer *data, quint32 id, const QString ¬es, QGraphicsItem *parent) - : VAbstractSpline(doc, data, id, notes, parent) -{} + : VAbstractSpline(doc, data, id, notes, parent) +{ +} //--------------------------------------------------------------------------------------------------------------------- auto VToolAbstractArc::CenterPointName() const -> QString diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h b/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h index 127050146..f316a835d 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vabstractspline.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTSPLINE_H #define VABSTRACTSPLINE_H -#include #include #include #include @@ -42,11 +41,8 @@ #include #include -#include "../../../visualization/line/visline.h" #include "../vdrawtool.h" -#include "../vgeometry/vabstractcurve.h" #include "../vgeometry/vgeometrydef.h" -#include "../vmisc/vabstractapplication.h" #include "../vmisc/def.h" #include "../vwidgets/vmaingraphicsscene.h" #include "../vwidgets/vmaingraphicsview.h" @@ -56,39 +52,39 @@ template class QSharedPointer; struct VAbstractSplineInitData : VDrawToolInitData { - VAbstractSplineInitData() - : VDrawToolInitData(), - color(ColorBlack), - penStyle(TypeLineLine), - approximationScale(defCurveApproximationScale) - {} + VAbstractSplineInitData() = default; - QString color; - QString penStyle; - qreal approximationScale; - QString aliasSuffix{}; + QString color{ColorBlack}; // NOLINT(misc-non-private-member-variables-in-classes) + QString penStyle{TypeLineLine}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal approximationScale{defCurveApproximationScale}; // NOLINT(misc-non-private-member-variables-in-classes) + QString aliasSuffix{}; // NOLINT(misc-non-private-member-variables-in-classes) }; -class VAbstractSpline:public VDrawTool, public QGraphicsPathItem +class VAbstractSpline : public VDrawTool, public QGraphicsPathItem { Q_OBJECT // NOLINT + public: VAbstractSpline(VAbstractPattern *doc, VContainer *data, quint32 id, const QString ¬es, - QGraphicsItem * parent = nullptr); - virtual ~VAbstractSpline() = default; + QGraphicsItem *parent = nullptr); + ~VAbstractSpline() override = default; - virtual auto shape() const -> QPainterPath override; - virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::AbstractSpline)}; - virtual auto getTagName() const -> QString override; - void ShowHandles(bool show); + auto shape() const -> QPainterPath override; + void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::AbstractSpline) + }; + auto getTagName() const -> QString override; + + virtual void ShowHandles(bool show); auto GetLineColor() const -> QString; - void SetLineColor(const QString &value); + void SetLineColor(const QString &value); auto GetPenStyle() const -> QString; - void SetPenStyle(const QString &value); + void SetPenStyle(const QString &value); auto name() const -> QString; @@ -97,75 +93,72 @@ public: auto GetDuplicate() const -> quint32; auto GetAliasSuffix() const -> QString; - void SetAliasSuffix(QString alias); + void SetAliasSuffix(QString alias); + + void GroupVisibility(quint32 object, bool visible) override; - virtual void GroupVisibility(quint32 object, bool visible) override; public slots: - virtual void FullUpdateFromFile () override; - virtual void Disable(bool disable, const QString &namePP) override; - virtual void DetailsMode(bool mode) override; - virtual void AllowHover(bool enabled) override; - virtual void AllowSelecting(bool enabled) override; + void FullUpdateFromFile() override; + void Disable(bool disable, const QString &namePP) override; + void SetDetailsMode(bool mode) override; + void AllowHover(bool enabled) override; + void AllowSelecting(bool enabled) override; + signals: /** * @brief setEnabledPoint disable control points. * @param enable enable or diasable points. */ - void setEnabledPoint(bool enable); -protected slots: - void CurveSelected(bool selected); + void setEnabledPoint(bool enable); + protected: - /** - * @brief controlPoints list pointers of control points. - */ - QVector controlPoints; - SceneObject sceneType; - bool m_isHovered; - bool detailsMode; - bool m_acceptHoverEvents; /** * @brief RefreshGeometry refresh item on scene. */ - virtual void RefreshGeometry(); - virtual void ShowTool(quint32 id, bool enable) override; - virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent * event ) override; - virtual void hoverLeaveEvent ( QGraphicsSceneHoverEvent * event ) override; - virtual auto itemChange(GraphicsItemChange change, const QVariant &value) -> QVariant override; - virtual void keyReleaseEvent(QKeyEvent * event) override; - virtual void mousePressEvent(QGraphicsSceneMouseEvent *event) override; - virtual void mouseReleaseEvent ( QGraphicsSceneMouseEvent * event ) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void RefreshCtrlPoints(); - virtual void contextMenuEvent ( QGraphicsSceneContextMenuEvent * event ) override; - virtual auto MakeToolTip() const -> QString override; + virtual void RefreshGeometry(); + void ShowTool(quint32 id, bool enable) override; + void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override; + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override; + auto itemChange(GraphicsItemChange change, const QVariant &value) -> QVariant override; + void keyReleaseEvent(QKeyEvent *event) override; + void mousePressEvent(QGraphicsSceneMouseEvent *event) override; + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + virtual void RefreshCtrlPoints(); + void contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override; + auto MakeToolTip() const -> QString override; - auto CorrectedSpline(const VSpline &spline, const SplinePointPosition &position, const QPointF &pos) const + auto IsDetailsMode() const -> bool; + + auto GetAcceptHoverEvents() const -> bool; + void SetAcceptHoverEvents(bool newAcceptHoverEvents); + + auto GetSceneType() const -> SceneObject; + void SetSceneType(SceneObject newSceneType); + + static auto CorrectedSpline(const VSpline &spline, const SplinePointPosition &position, const QPointF &pos) -> VSpline; - template - void ShowToolVisualization(bool show); + template void ShowToolVisualization(bool show); - template - static void InitSplineToolConnections(VMainGraphicsScene *scene, T *tool); - - template - static void InitSplinePathToolConnections(VMainGraphicsScene *scene, T *tool); - - template - static void InitArcToolConnections(VMainGraphicsScene *scene, T *tool); - - template - static void InitElArcToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitSplineToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitSplinePathToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitArcToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitElArcToolConnections(VMainGraphicsScene *scene, T *tool); private: Q_DISABLE_COPY_MOVE(VAbstractSpline) // NOLINT + bool m_isHovered{false}; + bool m_detailsMode{false}; + bool m_acceptHoverEvents{true}; + SceneObject sceneType{SceneObject::Unknown}; + void InitDefShape(); }; //--------------------------------------------------------------------------------------------------------------------- -template -inline void VAbstractSpline::ShowToolVisualization(bool show) +template inline void VAbstractSpline::ShowToolVisualization(bool show) { if (show) { @@ -187,9 +180,9 @@ inline void VAbstractSpline::ShowToolVisualization(bool show) delete vis; } - if (detailsMode) + if (m_detailsMode) { - ShowHandles(detailsMode); + ShowHandles(m_detailsMode); } else { @@ -203,8 +196,7 @@ inline void VAbstractSpline::ShowToolVisualization(bool show) } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractSpline::InitSplineToolConnections(VMainGraphicsScene *scene, T *tool) +template inline void VAbstractSpline::InitSplineToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) @@ -215,8 +207,7 @@ void VAbstractSpline::InitSplineToolConnections(VMainGraphicsScene *scene, T *to } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractSpline::InitSplinePathToolConnections(VMainGraphicsScene *scene, T *tool) +template inline void VAbstractSpline::InitSplinePathToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) @@ -227,8 +218,7 @@ void VAbstractSpline::InitSplinePathToolConnections(VMainGraphicsScene *scene, T } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractSpline::InitArcToolConnections(VMainGraphicsScene *scene, T *tool) +template inline void VAbstractSpline::InitArcToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) @@ -239,8 +229,7 @@ void VAbstractSpline::InitArcToolConnections(VMainGraphicsScene *scene, T *tool) } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractSpline::InitElArcToolConnections(VMainGraphicsScene *scene, T *tool) +template inline void VAbstractSpline::InitElArcToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) @@ -250,12 +239,44 @@ void VAbstractSpline::InitElArcToolConnections(VMainGraphicsScene *scene, T *too QObject::connect(scene, &VMainGraphicsScene::EnableElArcItemSelection, tool, &T::AllowSelecting); } -class VToolAbstractArc:public VAbstractSpline +//--------------------------------------------------------------------------------------------------------------------- +inline auto VAbstractSpline::IsDetailsMode() const -> bool { + return m_detailsMode; +} + +//--------------------------------------------------------------------------------------------------------------------- +inline auto VAbstractSpline::GetAcceptHoverEvents() const -> bool +{ + return m_acceptHoverEvents; +} + +//--------------------------------------------------------------------------------------------------------------------- +inline auto VAbstractSpline::GetSceneType() const -> SceneObject +{ + return sceneType; +} + +//--------------------------------------------------------------------------------------------------------------------- +inline void VAbstractSpline::SetSceneType(SceneObject newSceneType) +{ + sceneType = newSceneType; +} + +//--------------------------------------------------------------------------------------------------------------------- +inline void VAbstractSpline::SetAcceptHoverEvents(bool newAcceptHoverEvents) +{ + m_acceptHoverEvents = newAcceptHoverEvents; +} + +class VToolAbstractArc : public VAbstractSpline +{ + Q_OBJECT // NOLINT + public: VToolAbstractArc(VAbstractPattern *doc, VContainer *data, quint32 id, const QString ¬es, QGraphicsItem *parent = nullptr); - virtual ~VToolAbstractArc() = default; + ~VToolAbstractArc() override = default; auto CenterPointName() const -> QString; diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.cpp index 1f4a3d053..5a9356838 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.cpp @@ -30,16 +30,16 @@ #include #include -#include -#include -#include "../../../dialogs/tools/dialogtool.h" #include "../../../dialogs/tools/dialogarc.h" +#include "../../../dialogs/tools/dialogtool.h" #include "../../../visualization/path/vistoolarc.h" #include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" -#include "../ifc/xml/vdomdocument.h" #include "../ifc/ifcdef.h" +#include "../ifc/xml/vdomdocument.h" +#include "../vdrawtool.h" #include "../vgeometry/varc.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" @@ -49,11 +49,9 @@ #include "../vpatterndb/vformula.h" #include "../vpatterndb/vtranslatevars.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" -const QString VToolArc::ToolType = QStringLiteral("simple"); +const QString VToolArc::ToolType = QStringLiteral("simple"); // NOLINT //--------------------------------------------------------------------------------------------------------------------- /** @@ -61,11 +59,11 @@ const QString VToolArc::ToolType = QStringLiteral("simple"); * @param initData init data */ VToolArc::VToolArc(const VToolArcInitData &initData, QGraphicsItem *parent) - : VToolAbstractArc(initData.doc, initData.data, initData.id, initData.notes, parent) + : VToolAbstractArc(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::Arc; + SetSceneType(SceneObject::Arc); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus ToolCreation(initData.typeCreation); } @@ -122,7 +120,7 @@ auto VToolArc::Create(const QPointer &dialog, VMainGraphicsScene *sc initData.notes = dialogTool->GetNotes(); initData.aliasSuffix = dialogTool->GetAliasSuffix(); - VToolArc* point = Create(initData); + VToolArc *point = Create(initData); if (point != nullptr) { point->m_dialog = dialog; @@ -145,7 +143,7 @@ auto VToolArc::Create(VToolArcInitData &initData) -> VToolArc * calcF2 = CheckFormula(initData.id, initData.f2, initData.data); const VPointF c = *initData.data->GeometricObject(initData.center); - VArc *arc = new VArc(c, calcRadius, initData.radius, calcF1, initData.f1, calcF2, initData.f2 ); + VArc *arc = new VArc(c, calcRadius, initData.radius, calcF1, initData.f1, calcF2, initData.f2); arc->SetColor(initData.color); arc->SetPenStyle(initData.penStyle); arc->SetApproximationScale(initData.approximationScale); @@ -169,7 +167,7 @@ auto VToolArc::Create(VToolArcInitData &initData) -> VToolArc * if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::Arc, initData.doc); - VToolArc *toolArc = new VToolArc(initData); + auto *toolArc = new VToolArc(initData); initData.scene->addItem(toolArc); InitArcToolConnections(initData.scene, toolArc); VAbstractPattern::AddTool(initData.id, toolArc); @@ -202,9 +200,9 @@ auto VToolArc::GetFormulaRadius() const -> VFormula //--------------------------------------------------------------------------------------------------------------------- void VToolArc::SetFormulaRadius(const VFormula &value) { - if (value.error() == false) + if (!value.error()) { - if (value.getDoubleValue() > 0)// Formula don't check this, but radius can't be 0 or negative + if (value.getDoubleValue() > 0) // Formula don't check this, but radius can't be 0 or negative { QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer arc = qSharedPointerDynamicCast(obj); @@ -231,7 +229,7 @@ auto VToolArc::GetFormulaF1() const -> VFormula //--------------------------------------------------------------------------------------------------------------------- void VToolArc::SetFormulaF1(const VFormula &value) { - if (value.error() == false) + if (!value.error()) { QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer arc = qSharedPointerDynamicCast(obj); @@ -258,7 +256,7 @@ auto VToolArc::GetFormulaF2() const -> VFormula //--------------------------------------------------------------------------------------------------------------------- void VToolArc::SetFormulaF2(const VFormula &value) { - if (value.error() == false) + if (!value.error()) { QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer arc = qSharedPointerDynamicCast(obj); @@ -299,10 +297,10 @@ void VToolArc::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } @@ -339,9 +337,9 @@ void VToolArc::SaveDialog(QDomElement &domElement, QList &oldDependenci doc->SetAttribute(domElement, AttrPenStyle, dialogTool->GetPenStyle()); doc->SetAttribute(domElement, AttrAScale, dialogTool->GetApproximationScale()); doc->SetAttributeOrRemoveIf(domElement, AttrAlias, dialogTool->GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); } //--------------------------------------------------------------------------------------------------------------------- @@ -394,14 +392,14 @@ auto VToolArc::MakeToolTip() const -> QString " %6: %7° " " %8: %9° " "") - .arg(tr("Length")) - .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetLength())) - .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), tr("Radius")) - .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetRadius())) - .arg(tr("Start angle")) - .arg(arc->GetStartAngle()) - .arg(tr("End angle")) - .arg(arc->GetEndAngle()) - .arg(tr("Label"), arc->ObjectName()); + .arg(tr("Length")) + .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetLength())) + .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), tr("Radius")) + .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetRadius())) + .arg(tr("Start angle")) + .arg(arc->GetStartAngle()) + .arg(tr("End angle")) + .arg(arc->GetEndAngle()) + .arg(tr("Label"), arc->ObjectName()); return toolTip; } diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.h index e5b209a76..e1034e842 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarc.h @@ -29,7 +29,6 @@ #ifndef VTOOLARC_H #define VTOOLARC_H -#include #include #include #include @@ -45,65 +44,64 @@ template class QSharedPointer; struct VToolArcInitData : VAbstractSplineInitData { - VToolArcInitData() - : VAbstractSplineInitData(), - center(NULL_ID), - radius('0'), - f1('0'), - f2('0') - {} + VToolArcInitData() = default; - quint32 center; - QString radius; - QString f1; - QString f2; + quint32 center{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + QString radius{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString f1{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString f2{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) }; /** * @brief The VToolArc class tool for creation arc. */ -class VToolArc :public VToolAbstractArc +class VToolArc : public VToolAbstractArc { Q_OBJECT // NOLINT + public: - virtual void SetDialog() override; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolArc *; static auto Create(VToolArcInitData &initData) -> VToolArc *; static const QString ToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::Arc)}; - virtual auto getTagName() const -> QString override; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::Arc) + }; + auto getTagName() const -> QString override; auto GetFormulaRadius() const -> VFormula; - void SetFormulaRadius(const VFormula &value); + void SetFormulaRadius(const VFormula &value); auto GetFormulaF1() const -> VFormula; - void SetFormulaF1(const VFormula &value); + void SetFormulaF1(const VFormula &value); auto GetFormulaF2() const -> VFormula; - void SetFormulaF2(const VFormula &value); + void SetFormulaF2(const VFormula &value); auto GetApproximationScale() const -> qreal; - void SetApproximationScale(qreal value); + void SetApproximationScale(qreal value); + + void ShowVisualization(bool show) override; - virtual void ShowVisualization(bool show) override; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void SetVisualization() override; - virtual auto MakeToolTip() const -> QString override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void SetVisualization() override; + auto MakeToolTip() const -> QString override; private: Q_DISABLE_COPY_MOVE(VToolArc) // NOLINT - VToolArc(const VToolArcInitData &initData, QGraphicsItem * parent = nullptr); - virtual ~VToolArc()=default; + explicit VToolArc(const VToolArcInitData &initData, QGraphicsItem *parent = nullptr); + ~VToolArc() override = default; }; #endif // VTOOLARC_H diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.cpp index 4d416f681..99c71d5a4 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.cpp @@ -33,13 +33,15 @@ #include #include -#include "../../../dialogs/tools/dialogtool.h" #include "../../../dialogs/tools/dialogarcwithlength.h" -#include "../../../visualization/visualization.h" +#include "../../../dialogs/tools/dialogtool.h" #include "../../../visualization/path/vistoolarcwithlength.h" +#include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" -#include "../ifc/xml/vdomdocument.h" #include "../ifc/ifcdef.h" +#include "../ifc/xml/vdomdocument.h" +#include "../vdrawtool.h" #include "../vgeometry/varc.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" @@ -49,19 +51,17 @@ #include "../vpatterndb/vformula.h" #include "../vpatterndb/vtranslatevars.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" const QString VToolArcWithLength::ToolType = QStringLiteral("arcWithLength"); //--------------------------------------------------------------------------------------------------------------------- VToolArcWithLength::VToolArcWithLength(const VToolArcWithLengthInitData &initData, QGraphicsItem *parent) - :VToolAbstractArc(initData.doc, initData.data, initData.id, initData.notes, parent) + : VToolAbstractArc(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::Arc; + SetSceneType(SceneObject::Arc); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus ToolCreation(initData.typeCreation); } @@ -108,7 +108,7 @@ auto VToolArcWithLength::Create(const QPointer &dialog, VMainGraphic initData.notes = dialogTool->GetNotes(); initData.aliasSuffix = dialogTool->GetAliasSuffix(); - VToolArcWithLength* point = Create(initData); + VToolArcWithLength *point = Create(initData); if (point != nullptr) { point->m_dialog = dialog; @@ -185,7 +185,7 @@ void VToolArcWithLength::SetFormulaRadius(const VFormula &value) { if (value.error() == false) { - if (value.getDoubleValue() > 0)// Formula don't check this, but radius can't be 0 or negative + if (value.getDoubleValue() > 0) // Formula don't check this, but radius can't be 0 or negative { QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer arc = qSharedPointerDynamicCast(obj); @@ -217,7 +217,7 @@ void VToolArcWithLength::SetFormulaF1(const VFormula &value) QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer arc = qSharedPointerDynamicCast(obj); - if (not VFuzzyComparePossibleNulls(value.getDoubleValue(), arc->GetEndAngle()))// Angles can't be equal + if (not VFuzzyComparePossibleNulls(value.getDoubleValue(), arc->GetEndAngle())) // Angles can't be equal { arc->SetFormulaF1(value.GetFormula(FormulaType::FromUser), value.getDoubleValue()); SaveOption(obj); @@ -283,10 +283,10 @@ void VToolArcWithLength::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } @@ -318,9 +318,9 @@ void VToolArcWithLength::SaveDialog(QDomElement &domElement, QList &old doc->SetAttribute(domElement, AttrPenStyle, dialogTool->GetPenStyle()); doc->SetAttribute(domElement, AttrAScale, dialogTool->GetApproximationScale()); doc->SetAttributeOrRemoveIf(domElement, AttrAlias, dialogTool->GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); } //--------------------------------------------------------------------------------------------------------------------- @@ -373,14 +373,14 @@ auto VToolArcWithLength::MakeToolTip() const -> QString " %6: %7° " " %8: %9° " "") - .arg(tr("Length")) - .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetLength())) - .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), tr("Radius")) - .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetRadius())) - .arg(tr("Start angle")) - .arg(arc->GetStartAngle()) - .arg(tr("End angle")) - .arg(arc->GetEndAngle()) - .arg(tr("Label"), arc->ObjectName()); + .arg(tr("Length")) + .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetLength())) + .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), tr("Radius")) + .arg(VAbstractValApplication::VApp()->fromPixel(arc->GetRadius())) + .arg(tr("Start angle")) + .arg(arc->GetStartAngle()) + .arg(tr("End angle")) + .arg(arc->GetEndAngle()) + .arg(tr("Label"), arc->ObjectName()); return toolTip; } diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.h index 70f2c7303..4dfbe595d 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolarcwithlength.h @@ -29,13 +29,13 @@ #ifndef VTOOLARCWITHLENGTH_H #define VTOOLARCWITHLENGTH_H -#include #include #include #include #include #include + #include "../ifc/xml/vabstractpattern.h" #include "../vmisc/def.h" #include "vabstractspline.h" @@ -45,62 +45,61 @@ template class QSharedPointer; struct VToolArcWithLengthInitData : VAbstractSplineInitData { - VToolArcWithLengthInitData() - : VAbstractSplineInitData(), - center(NULL_ID), - radius('0'), - f1('0'), - length('0') - {} + VToolArcWithLengthInitData() = default; - quint32 center; - QString radius; - QString f1; - QString length; + quint32 center{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + QString radius{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString f1{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString length{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) }; class VToolArcWithLength : public VToolAbstractArc { Q_OBJECT // NOLINT + public: - virtual void SetDialog() override; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolArcWithLength *; static auto Create(VToolArcWithLengthInitData &initData) -> VToolArcWithLength *; static const QString ToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::ArcWithLength)}; - virtual auto getTagName() const -> QString override; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::ArcWithLength) + }; + auto getTagName() const -> QString override; auto GetFormulaRadius() const -> VFormula; - void SetFormulaRadius(const VFormula &value); + void SetFormulaRadius(const VFormula &value); auto GetFormulaF1() const -> VFormula; - void SetFormulaF1(const VFormula &value); + void SetFormulaF1(const VFormula &value); auto GetFormulaLength() const -> VFormula; - void SetFormulaLength(const VFormula &value); + void SetFormulaLength(const VFormula &value); auto GetApproximationScale() const -> qreal; - void SetApproximationScale(qreal value); + void SetApproximationScale(qreal value); + + void ShowVisualization(bool show) override; - virtual void ShowVisualization(bool show) override; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void SetVisualization() override; - virtual auto MakeToolTip() const -> QString override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void SetVisualization() override; + auto MakeToolTip() const -> QString override; private: Q_DISABLE_COPY_MOVE(VToolArcWithLength) // NOLINT - VToolArcWithLength(const VToolArcWithLengthInitData &initData, QGraphicsItem *parent = nullptr); - virtual ~VToolArcWithLength()=default; + explicit VToolArcWithLength(const VToolArcWithLengthInitData &initData, QGraphicsItem *parent = nullptr); + ~VToolArcWithLength() override = default; }; #endif // VTOOLARCWITHLENGTH_H diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.cpp index 4b0782aa1..6e30d709a 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.cpp @@ -34,11 +34,13 @@ #include #include -#include "../../../dialogs/tools/dialogtool.h" #include "../../../dialogs/tools/dialogcubicbezier.h" -#include "../../../visualization/visualization.h" +#include "../../../dialogs/tools/dialogtool.h" #include "../../../visualization/path/vistoolcubicbezier.h" +#include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" +#include "../vdrawtool.h" #include "../vgeometry/../ifc/ifcdef.h" #include "../vgeometry/vabstractcurve.h" #include "../vgeometry/vcubicbezier.h" @@ -46,19 +48,17 @@ #include "../vgeometry/vpointf.h" #include "../vpatterndb/vcontainer.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" const QString VToolCubicBezier::ToolType = QStringLiteral("cubicBezier"); //--------------------------------------------------------------------------------------------------------------------- VToolCubicBezier::VToolCubicBezier(const VToolCubicBezierInitData &initData, QGraphicsItem *parent) - :VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent) + : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::Spline; + SetSceneType(SceneObject::Spline); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus ToolCreation(initData.typeCreation); } @@ -91,7 +91,7 @@ auto VToolCubicBezier::Create(const QPointer &dialog, VMainGraphicsS initData.spline = new VCubicBezier(dialogTool->GetSpline()); initData.notes = dialogTool->GetNotes(); - auto* spl = Create(initData); + auto *spl = Create(initData); if (spl != nullptr) { @@ -121,7 +121,7 @@ auto VToolCubicBezier::Create(VToolCubicBezierInitData initData) -> VToolCubicBe if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::CubicBezier, initData.doc); - auto* _spl = new VToolCubicBezier(initData); + auto *_spl = new VToolCubicBezier(initData); initData.scene->addItem(_spl); InitSplineToolConnections(initData.scene, _spl); VAbstractPattern::AddTool(initData.id, _spl); @@ -192,10 +192,10 @@ void VToolCubicBezier::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, qu { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } @@ -229,7 +229,7 @@ void VToolCubicBezier::SaveDialog(QDomElement &domElement, QList &oldDe AddDependence(newDependencies, spl.GetP3().id()); AddDependence(newDependencies, spl.GetP4().id()); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); SetSplineAttributes(domElement, spl); } @@ -278,16 +278,16 @@ void VToolCubicBezier::SetSplineAttributes(QDomElement &domElement, const VCubic { SCASSERT(doc != nullptr) - doc->SetAttribute(domElement, AttrType, ToolType); - doc->SetAttribute(domElement, AttrPoint1, spl.GetP1().id()); - doc->SetAttribute(domElement, AttrPoint2, spl.GetP2().id()); - doc->SetAttribute(domElement, AttrPoint3, spl.GetP3().id()); - doc->SetAttribute(domElement, AttrPoint4, spl.GetP4().id()); - doc->SetAttribute(domElement, AttrColor, spl.GetColor()); + doc->SetAttribute(domElement, AttrType, ToolType); + doc->SetAttribute(domElement, AttrPoint1, spl.GetP1().id()); + doc->SetAttribute(domElement, AttrPoint2, spl.GetP2().id()); + doc->SetAttribute(domElement, AttrPoint3, spl.GetP3().id()); + doc->SetAttribute(domElement, AttrPoint4, spl.GetP4().id()); + doc->SetAttribute(domElement, AttrColor, spl.GetColor()); doc->SetAttribute(domElement, AttrPenStyle, spl.GetPenStyle()); - doc->SetAttribute(domElement, AttrAScale, spl.GetApproximationScale()); + doc->SetAttribute(domElement, AttrAScale, spl.GetApproximationScale()); doc->SetAttributeOrRemoveIf(domElement, AttrDuplicate, spl.GetDuplicate(), - [](quint32 duplicate) noexcept {return duplicate == 0;}); + [](quint32 duplicate) noexcept { return duplicate == 0; }); doc->SetAttributeOrRemoveIf(domElement, AttrAlias, spl.GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); } diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.h index 6f31c3d68..673a9f090 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezier.h @@ -29,15 +29,14 @@ #ifndef VTOOLCUBICBEZIER_H #define VTOOLCUBICBEZIER_H -#include #include #include #include #include #include -#include "../vmisc/def.h" #include "../ifc/xml/vabstractpattern.h" +#include "../vmisc/def.h" #include "vabstractspline.h" class VCubicBezier; @@ -48,12 +47,9 @@ QT_WARNING_DISABLE_GCC("-Weffc++") struct VToolCubicBezierInitData : VDrawToolInitData { - VToolCubicBezierInitData() - : VDrawToolInitData(), - spline(nullptr) - {} + VToolCubicBezierInitData() = default; - VCubicBezier *spline; + VCubicBezier *spline{nullptr}; // NOLINT(misc-non-private-member-variables-in-classes) }; QT_WARNING_POP @@ -61,15 +57,19 @@ QT_WARNING_POP class VToolCubicBezier : public VAbstractSpline { Q_OBJECT // NOLINT + public: - virtual ~VToolCubicBezier() = default; - virtual void SetDialog() override; + ~VToolCubicBezier() override = default; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolCubicBezier *; static auto Create(VToolCubicBezierInitData initData) -> VToolCubicBezier *; static const QString ToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::CubicBezier)}; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::CubicBezier) + }; auto FirstPointName() const -> QString; auto SecondPointName() const -> QString; @@ -77,22 +77,24 @@ public: auto ForthPointName() const -> QString; auto getSpline() const -> VCubicBezier; - void setSpline(const VCubicBezier &spl); + void setSpline(const VCubicBezier &spl); + + void ShowVisualization(bool show) override; - virtual void ShowVisualization(bool show) override; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void SetVisualization() override; - virtual void RefreshGeometry() override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void SetVisualization() override; + void RefreshGeometry() override; + private: Q_DISABLE_COPY_MOVE(VToolCubicBezier) // NOLINT - VToolCubicBezier(const VToolCubicBezierInitData &initData, QGraphicsItem *parent = nullptr); + explicit VToolCubicBezier(const VToolCubicBezierInitData &initData, QGraphicsItem *parent = nullptr); void SetSplineAttributes(QDomElement &domElement, const VCubicBezier &spl); }; diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.cpp index be5b9f15d..c56404aea 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.cpp @@ -34,34 +34,33 @@ #include #include -#include "../../../dialogs/tools/dialogtool.h" #include "../../../dialogs/tools/dialogcubicbezierpath.h" -#include "../../../visualization/visualization.h" +#include "../../../dialogs/tools/dialogtool.h" #include "../../../visualization/path/vistoolcubicbezierpath.h" +#include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" -#include "../ifc/xml/vdomdocument.h" #include "../ifc/ifcdef.h" +#include "../ifc/xml/vdomdocument.h" +#include "../vdrawtool.h" #include "../vgeometry/vabstractcubicbezierpath.h" #include "../vgeometry/vabstractcurve.h" #include "../vgeometry/vcubicbezierpath.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" -#include "../vmisc/vabstractapplication.h" #include "../vpatterndb/vcontainer.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" const QString VToolCubicBezierPath::ToolType = QStringLiteral("cubicBezierPath"); //--------------------------------------------------------------------------------------------------------------------- VToolCubicBezierPath::VToolCubicBezierPath(const VToolCubicBezierPathInitData &initData, QGraphicsItem *parent) - : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent) + : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::SplinePath; + SetSceneType(SceneObject::SplinePath); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus ToolCreation(initData.typeCreation); } @@ -99,7 +98,7 @@ auto VToolCubicBezierPath::Create(const QPointer &dialog, VMainGraph doc->IncrementReferens((*initData.path)[i].getIdTool()); } - VToolCubicBezierPath* spl = Create(initData); + VToolCubicBezierPath *spl = Create(initData); if (spl != nullptr) { spl->m_dialog = dialog; @@ -130,7 +129,7 @@ auto VToolCubicBezierPath::Create(VToolCubicBezierPathInitData initData) -> VToo if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::CubicBezierPath, initData.doc); - VToolCubicBezierPath *spl = new VToolCubicBezierPath(initData); + auto *spl = new VToolCubicBezierPath(initData); initData.scene->addItem(spl); InitSplinePathToolConnections(initData.scene, spl); VAbstractPattern::AddTool(initData.id, spl); @@ -179,10 +178,10 @@ void VToolCubicBezierPath::ShowContextMenu(QGraphicsSceneContextMenuEvent *event { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } @@ -217,7 +216,7 @@ void VToolCubicBezierPath::SaveDialog(QDomElement &domElement, QList &o } doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); SetSplinePathAttributes(domElement, splPath); } @@ -272,7 +271,7 @@ void VToolCubicBezierPath::SetSplinePathAttributes(QDomElement &domElement, cons { doc->SetAttribute(domElement, AttrType, ToolType); doc->SetAttributeOrRemoveIf(domElement, AttrDuplicate, path.GetDuplicate(), - [](quint32 duplicate) noexcept {return duplicate <= 0;}); + [](quint32 duplicate) noexcept { return duplicate <= 0; }); doc->SetAttribute(domElement, AttrColor, path.GetColor()); doc->SetAttribute(domElement, AttrPenStyle, path.GetPenStyle()); doc->SetAttribute(domElement, AttrAScale, path.GetApproximationScale()); diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.h index f9b0c33b7..9fffb296d 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolcubicbezierpath.h @@ -29,7 +29,6 @@ #ifndef VTOOLCUBICBEZIERPATH_H #define VTOOLCUBICBEZIERPATH_H -#include #include #include #include @@ -48,51 +47,54 @@ QT_WARNING_DISABLE_GCC("-Weffc++") struct VToolCubicBezierPathInitData : VDrawToolInitData { - VToolCubicBezierPathInitData() - : VDrawToolInitData(), - path(nullptr) - {} + VToolCubicBezierPathInitData() = default; - VCubicBezierPath *path; + VCubicBezierPath *path{nullptr}; // NOLINT(misc-non-private-member-variables-in-classes) }; QT_WARNING_POP -class VToolCubicBezierPath:public VAbstractSpline +class VToolCubicBezierPath : public VAbstractSpline { Q_OBJECT // NOLINT + public: - virtual ~VToolCubicBezierPath() = default; - virtual void SetDialog() override; + ~VToolCubicBezierPath() override = default; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolCubicBezierPath *; static auto Create(VToolCubicBezierPathInitData initData) -> VToolCubicBezierPath *; static const QString ToolType; - static void UpdatePathPoints(VAbstractPattern *doc, QDomElement &element, const VCubicBezierPath &path); - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::CubicBezierPath)}; + static void UpdatePathPoints(VAbstractPattern *doc, QDomElement &element, const VCubicBezierPath &path); + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::CubicBezierPath) + }; auto getSplinePath() const -> VCubicBezierPath; - void setSplinePath(const VCubicBezierPath &splPath); + void setSplinePath(const VCubicBezierPath &splPath); + + void ShowVisualization(bool show) override; - virtual void ShowVisualization(bool show) override; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void SetVisualization() override; - virtual void RefreshGeometry() override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void SetVisualization() override; + void RefreshGeometry() override; + private: Q_DISABLE_COPY_MOVE(VToolCubicBezierPath) // NOLINT - VToolCubicBezierPath(const VToolCubicBezierPathInitData &initData, QGraphicsItem * parent = nullptr); + explicit VToolCubicBezierPath(const VToolCubicBezierPathInitData &initData, QGraphicsItem *parent = nullptr); - static void AddPathPoint(VAbstractPattern *doc, QDomElement &domElement, const VPointF &splPoint); - void SetSplinePathAttributes(QDomElement &domElement, const VCubicBezierPath &path); + static void AddPathPoint(VAbstractPattern *doc, QDomElement &domElement, const VPointF &splPoint); + void SetSplinePathAttributes(QDomElement &domElement, const VCubicBezierPath &path); }; #endif // VTOOLCUBICBEZIERPATH_H diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp index 31c80c853..2656a566f 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp @@ -33,13 +33,15 @@ #include #include -#include "../../../dialogs/tools/dialogtool.h" #include "../../../dialogs/tools/dialogellipticalarc.h" +#include "../../../dialogs/tools/dialogtool.h" #include "../../../visualization/path/vistoolellipticalarc.h" #include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" -#include "../ifc/xml/vdomdocument.h" #include "../ifc/ifcdef.h" +#include "../ifc/xml/vdomdocument.h" +#include "../vdrawtool.h" #include "../vgeometry/vellipticalarc.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" @@ -49,8 +51,6 @@ #include "../vpatterndb/vformula.h" #include "../vpatterndb/vtranslatevars.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" const QString VToolEllipticalArc::ToolType = QStringLiteral("simple"); @@ -62,11 +62,11 @@ const QString VToolEllipticalArc::ToolType = QStringLiteral("simple"); * @param parent parent object */ VToolEllipticalArc::VToolEllipticalArc(const VToolEllipticalArcInitData &initData, QGraphicsItem *parent) - :VToolAbstractArc(initData.doc, initData.data, initData.id, initData.notes, parent) + : VToolAbstractArc(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::ElArc; + SetSceneType(SceneObject::ElArc); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus ToolCreation(initData.typeCreation); } @@ -125,9 +125,9 @@ auto VToolEllipticalArc::Create(const QPointer &dialog, VMainGraphic initData.approximationScale = dialogTool->GetApproximationScale(); initData.notes = dialogTool->GetNotes(); initData.aliasSuffix = dialogTool->GetAliasSuffix(); - //initData.approximationScale = dialogTool->GetApproximationScale(); // For future use + // initData.approximationScale = dialogTool->GetApproximationScale(); // For future use - VToolEllipticalArc* point = Create(initData); + VToolEllipticalArc *point = Create(initData); if (point != nullptr) { point->m_dialog = dialog; @@ -135,7 +135,6 @@ auto VToolEllipticalArc::Create(const QPointer &dialog, VMainGraphic return point; } - //--------------------------------------------------------------------------------------------------------------------- /** * @brief Create help create tool form GUI. @@ -153,9 +152,9 @@ auto VToolEllipticalArc::Create(VToolEllipticalArcInitData &initData) -> VToolEl calcRotationAngle = CheckFormula(initData.id, initData.rotationAngle, initData.data); const VPointF c = *initData.data->GeometricObject(initData.center); - VEllipticalArc *elArc = new VEllipticalArc(c, calcRadius1, calcRadius2, initData.radius1, initData.radius2, calcF1, - initData.f1, calcF2, initData.f2, calcRotationAngle, - initData.rotationAngle); + VEllipticalArc *elArc = + new VEllipticalArc(c, calcRadius1, calcRadius2, initData.radius1, initData.radius2, calcF1, initData.f1, calcF2, + initData.f2, calcRotationAngle, initData.rotationAngle); elArc->SetColor(initData.color); elArc->SetPenStyle(initData.penStyle); elArc->SetApproximationScale(initData.approximationScale); @@ -179,7 +178,7 @@ auto VToolEllipticalArc::Create(VToolEllipticalArcInitData &initData) -> VToolEl if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::EllipticalArc, initData.doc); - VToolEllipticalArc *toolEllipticalArc = new VToolEllipticalArc(initData); + auto *toolEllipticalArc = new VToolEllipticalArc(initData); initData.scene->addItem(toolEllipticalArc); InitElArcToolConnections(initData.scene, toolEllipticalArc); VAbstractPattern::AddTool(initData.id, toolEllipticalArc); @@ -214,7 +213,7 @@ void VToolEllipticalArc::SetFormulaRadius1(const VFormula &value) { if (value.error() == false) { - if (value.getDoubleValue() > 0)// Formula don't check this, but radius1 can't be 0 or negative + if (value.getDoubleValue() > 0) // Formula don't check this, but radius1 can't be 0 or negative { QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer elArc = qSharedPointerDynamicCast(obj); @@ -243,7 +242,7 @@ void VToolEllipticalArc::SetFormulaRadius2(const VFormula &value) { if (value.error() == false) { - if (value.getDoubleValue() > 0)// Formula don't check this, but radius2 can't be 0 or negative + if (value.getDoubleValue() > 0) // Formula don't check this, but radius2 can't be 0 or negative { QSharedPointer obj = VAbstractTool::data.GetGObject(m_id); QSharedPointer elArc = qSharedPointerDynamicCast(obj); @@ -363,10 +362,10 @@ void VToolEllipticalArc::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } @@ -406,9 +405,9 @@ void VToolEllipticalArc::SaveDialog(QDomElement &domElement, QList &old doc->SetAttribute(domElement, AttrPenStyle, dialogTool->GetPenStyle()); doc->SetAttribute(domElement, AttrAScale, dialogTool->GetApproximationScale()); doc->SetAttributeOrRemoveIf(domElement, AttrAlias, dialogTool->GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); } //--------------------------------------------------------------------------------------------------------------------- @@ -467,20 +466,20 @@ auto VToolEllipticalArc::MakeToolTip() const -> QString " %10: %11° " " %14: %15° " "") - .arg(tr("Length")) // 1 - .arg(VAbstractValApplication::VApp()->fromPixel(elArc->GetLength())) // 2 - .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), // 3 - tr("Radius") + QLatin1Char('1')) // 4 - .arg(VAbstractValApplication::VApp()->fromPixel(elArc->GetRadius1())) // 5 - .arg(tr("Radius") + QLatin1Char('2')) // 6 - .arg(VAbstractValApplication::VApp()->fromPixel(elArc->GetRadius2())) // 7 - .arg(tr("Start angle")) // 8 - .arg(elArc->GetStartAngle()) // 9 - .arg(tr("End angle")) // 10 - .arg(elArc->GetEndAngle()) // 11 - .arg(tr("Label"), // 12 - elArc->ObjectName(), // 13 - tr("Rotation")) // 14 - .arg(elArc->GetRotationAngle()); // 15 + .arg(tr("Length")) // 1 + .arg(VAbstractValApplication::VApp()->fromPixel(elArc->GetLength())) // 2 + .arg(UnitsToStr(VAbstractValApplication::VApp()->patternUnits(), true), // 3 + tr("Radius") + QLatin1Char('1')) // 4 + .arg(VAbstractValApplication::VApp()->fromPixel(elArc->GetRadius1())) // 5 + .arg(tr("Radius") + QLatin1Char('2')) // 6 + .arg(VAbstractValApplication::VApp()->fromPixel(elArc->GetRadius2())) // 7 + .arg(tr("Start angle")) // 8 + .arg(elArc->GetStartAngle()) // 9 + .arg(tr("End angle")) // 10 + .arg(elArc->GetEndAngle()) // 11 + .arg(tr("Label"), // 12 + elArc->ObjectName(), // 13 + tr("Rotation")) // 14 + .arg(elArc->GetRotationAngle()); // 15 return toolTip; } diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.h index f2fed46de..4c32eee0e 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.h @@ -29,7 +29,6 @@ #ifndef VTOOLELLIPTICALARC_H #define VTOOLELLIPTICALARC_H -#include #include #include #include @@ -45,22 +44,14 @@ template class QSharedPointer; struct VToolEllipticalArcInitData : VAbstractSplineInitData { - VToolEllipticalArcInitData() - : VAbstractSplineInitData(), - center(NULL_ID), - radius1('0'), - radius2('0'), - f1('0'), - f2('0'), - rotationAngle('0') - {} + VToolEllipticalArcInitData() = default; - quint32 center; - QString radius1; - QString radius2; - QString f1; - QString f2; - QString rotationAngle; + quint32 center{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + QString radius1{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString radius2{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString f1{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString f2{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) + QString rotationAngle{'0'}; // NOLINT(misc-non-private-member-variables-in-classes) }; /** @@ -69,49 +60,54 @@ struct VToolEllipticalArcInitData : VAbstractSplineInitData class VToolEllipticalArc : public VToolAbstractArc { Q_OBJECT // NOLINT + public: - virtual void SetDialog() override; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolEllipticalArc *; static auto Create(VToolEllipticalArcInitData &initData) -> VToolEllipticalArc *; static const QString ToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::EllipticalArc)}; - virtual auto getTagName() const -> QString override; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::EllipticalArc) + }; + auto getTagName() const -> QString override; auto GetFormulaRadius1() const -> VFormula; - void SetFormulaRadius1(const VFormula &value); + void SetFormulaRadius1(const VFormula &value); auto GetFormulaRadius2() const -> VFormula; - void SetFormulaRadius2(const VFormula &value); + void SetFormulaRadius2(const VFormula &value); auto GetFormulaF1() const -> VFormula; - void SetFormulaF1(const VFormula &value); + void SetFormulaF1(const VFormula &value); auto GetFormulaF2() const -> VFormula; - void SetFormulaF2(const VFormula &value); + void SetFormulaF2(const VFormula &value); auto GetFormulaRotationAngle() const -> VFormula; - void SetFormulaRotationAngle(const VFormula &value); + void SetFormulaRotationAngle(const VFormula &value); auto GetApproximationScale() const -> qreal; - void SetApproximationScale(qreal value); + void SetApproximationScale(qreal value); + + void ShowVisualization(bool show) override; - virtual void ShowVisualization(bool show) override; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void SetVisualization() override; - virtual auto MakeToolTip() const -> QString override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void SetVisualization() override; + auto MakeToolTip() const -> QString override; private: Q_DISABLE_COPY_MOVE(VToolEllipticalArc) // NOLINT - VToolEllipticalArc(const VToolEllipticalArcInitData &initData, QGraphicsItem *parent = nullptr); - virtual ~VToolEllipticalArc()=default; + explicit VToolEllipticalArc(const VToolEllipticalArcInitData &initData, QGraphicsItem *parent = nullptr); + ~VToolEllipticalArc() = default; }; #endif // VTOOLELLIPTICALARC_H diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.cpp index 654906ded..a5edbcfdc 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.cpp @@ -41,32 +41,30 @@ #include #include #include -#include -#include #include #include "../../../dialogs/tools/dialogspline.h" #include "../../../dialogs/tools/dialogtool.h" #include "../../../undocommands/movespline.h" -#include "../../../visualization/visualization.h" #include "../../../visualization/path/vistoolspline.h" +#include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" #include "../ifc/ifcdef.h" #include "../qmuparser/qmutokenparser.h" +#include "../vdrawtool.h" #include "../vgeometry/vabstractcurve.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" #include "../vmisc/vabstractapplication.h" #include "../vpatterndb/vcontainer.h" +#include "../vwidgets/global.h" #include "../vwidgets/vcontrolpointspline.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../vwidgets/global.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" -const QString VToolSpline::ToolType = QStringLiteral("simpleInteractive"); -const QString VToolSpline::OldToolType = QStringLiteral("simple"); +const QString VToolSpline::ToolType = QStringLiteral("simpleInteractive"); // NOLINT +const QString VToolSpline::OldToolType = QStringLiteral("simple"); // NOLINT //--------------------------------------------------------------------------------------------------------------------- /** @@ -75,20 +73,16 @@ const QString VToolSpline::OldToolType = QStringLiteral("simple"); * @param parent parent object. */ VToolSpline::VToolSpline(const VToolSplineInitData &initData, QGraphicsItem *parent) - : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent), - oldPosition(), - moved(false), - oldMoveSpline(), - newMoveSpline() + : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::Spline; + SetSceneType(SceneObject::Spline); this->setFlag(QGraphicsItem::ItemIsMovable, true); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus const auto spl = VAbstractTool::data.GeometricObject(initData.id); - auto InitControlPoint = [this](VControlPointSpline* cPoint) + auto InitControlPoint = [this](VControlPointSpline *cPoint) { connect(cPoint, &VControlPointSpline::ControlPointChangePosition, this, &VToolSpline::ControlPointChangePosition); @@ -109,13 +103,13 @@ VToolSpline::VToolSpline(const VToolSplineInitData &initData, QGraphicsItem *par const bool freeAngle2 = qmu::QmuTokenParser::IsSingle(spl->GetEndAngleFormula()); const bool freeLength2 = qmu::QmuTokenParser::IsSingle(spl->GetC2LengthFormula()); - auto *controlPoint2 = new VControlPointSpline(1, SplinePointPosition::LastPoint, - static_cast(spl->GetP3()), freeAngle2, freeLength2, this); + auto *controlPoint2 = new VControlPointSpline(1, SplinePointPosition::LastPoint, static_cast(spl->GetP3()), + freeAngle2, freeLength2, this); InitControlPoint(controlPoint2); VToolSpline::RefreshCtrlPoints(); - ShowHandles(detailsMode); + VToolSpline::ShowHandles(IsDetailsMode()); ToolCreation(initData.typeCreation); } @@ -194,7 +188,7 @@ auto VToolSpline::Create(VToolSplineInitData &initData, VSpline *spline) -> VToo if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::Spline, initData.doc); - auto* _spl = new VToolSpline(initData); + auto *_spl = new VToolSpline(initData); initData.scene->addItem(_spl); InitSplineToolConnections(initData.scene, _spl); VAbstractPattern::AddTool(initData.id, _spl); @@ -212,14 +206,14 @@ auto VToolSpline::Create(VToolSplineInitData &initData) -> VToolSpline * const qreal calcAngle2 = CheckFormula(initData.id, initData.a2, initData.data); const qreal calcLength1 = - VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l1, initData.data)); + VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l1, initData.data)); const qreal calcLength2 = - VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l2, initData.data)); + VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l2, initData.data)); auto p1 = initData.data->GeometricObject(initData.point1); auto p4 = initData.data->GeometricObject(initData.point4); - auto* spline = new VSpline(*p1, *p4, calcAngle1, initData.a1, calcAngle2, initData.a2, calcLength1, initData.l1, + auto *spline = new VSpline(*p1, *p4, calcAngle1, initData.a1, calcAngle2, initData.a2, calcLength1, initData.l1, calcLength2, initData.l2); if (initData.duplicate > 0) { @@ -256,6 +250,16 @@ void VToolSpline::ShowVisualization(bool show) ShowToolVisualization(show); } +//--------------------------------------------------------------------------------------------------------------------- +void VToolSpline::ShowHandles(bool show) +{ + for (auto *point : qAsConst(controlPoints)) + { + point->setVisible(show); + } + VAbstractSpline::ShowHandles(show); +} + //--------------------------------------------------------------------------------------------------------------------- /** * @brief ControlPointChangePosition handle change position control point. @@ -299,12 +303,34 @@ void VToolSpline::EnableToolMove(bool move) { this->setFlag(QGraphicsItem::ItemIsMovable, move); - for (auto point : qAsConst(controlPoints)) + for (auto *point : qAsConst(controlPoints)) { point->setFlag(QGraphicsItem::ItemIsMovable, move); } } +//--------------------------------------------------------------------------------------------------------------------- +void VToolSpline::AllowHover(bool enabled) +{ + VAbstractSpline::AllowHover(enabled); + + for (auto *point : qAsConst(controlPoints)) + { + point->setAcceptHoverEvents(enabled); + } +} + +//--------------------------------------------------------------------------------------------------------------------- +void VToolSpline::AllowSelecting(bool enabled) +{ + VAbstractSpline::AllowSelecting(enabled); + + for (auto *point : qAsConst(controlPoints)) + { + point->setFlag(QGraphicsItem::ItemIsSelectable, enabled); + } +} + //--------------------------------------------------------------------------------------------------------------------- /** * @brief RemoveReferens decrement value of reference. @@ -323,7 +349,7 @@ void VToolSpline::RemoveReferens() void VToolSpline::SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) { SCASSERT(not m_dialog.isNull()) - auto *dialogTool = qobject_cast(m_dialog); + auto *dialogTool = qobject_cast(m_dialog); SCASSERT(dialogTool != nullptr) const auto oldSpl = VAbstractTool::data.GeometricObject(m_id); @@ -344,7 +370,7 @@ void VToolSpline::SaveDialog(QDomElement &domElement, QList &oldDepende controlPoints[1]->blockSignals(false); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); SetSplineAttributes(domElement, spl); } @@ -398,106 +424,108 @@ void VToolSpline::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) //--------------------------------------------------------------------------------------------------------------------- void VToolSpline::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { - if (IsMovable()) + if (!IsMovable()) { - // Don't need check if left mouse button was pressed. According to the Qt documentation "If you do receive this - // event, you can be certain that this item also received a mouse press event, and that this item is the current - // mouse grabber.". + return; + } - // Magic Bezier Drag Equations follow! - // "weight" describes how the influence of the drag should be distributed - // among the handles; 0 = front handle only, 1 = back handle only. + // Don't need check if left mouse button was pressed. According to the Qt documentation "If you do receive this + // event, you can be certain that this item also received a mouse press event, and that this item is the current + // mouse grabber.". - const auto spline = VAbstractTool::data.GeometricObject(m_id); + // Magic Bezier Drag Equations follow! + // "weight" describes how the influence of the drag should be distributed + // among the handles; 0 = front handle only, 1 = back handle only. - if (VAbstractApplication::VApp()->Settings()->IsFreeCurveMode() && not moved) + const auto spline = VAbstractTool::data.GeometricObject(m_id); + + if (VAbstractApplication::VApp()->Settings()->IsFreeCurveMode() && not moved) + { + oldMoveSpline = QSharedPointer::create(*spline); + moved = true; + } + + const qreal t = spline->ParamT(oldPosition); + + if (qFloor(t) == -1) + { + moved = false; + return; + } + + double weight; + if (t <= 1.0 / 6.0) + { + weight = 0; + } + else if (t <= 0.5) + { + weight = (pow((6 * t - 1) / 2.0, 3)) / 2; + } + else if (t <= 5.0 / 6.0) + { + weight = (1 - pow((6 * (1 - t) - 1) / 2.0, 3)) / 2 + 0.5; + } + else + { + weight = 1; + } + + const QPointF delta = event->scenePos() - oldPosition; + const QPointF offset0 = ((1 - weight) / (3 * t * (1 - t) * (1 - t))) * delta; + const QPointF offset1 = (weight / (3 * t * t * (1 - t))) * delta; + + const QPointF p2 = static_cast(spline->GetP2()) + offset0; + const QPointF p3 = static_cast(spline->GetP3()) + offset1; + + oldPosition = event->scenePos(); // Now mouse here + + newMoveSpline = QSharedPointer::create(spline->GetP1(), p2, p3, spline->GetP4()); + + if (not VAbstractApplication::VApp()->Settings()->IsFreeCurveMode()) + { + UndoCommandMove(*spline, *newMoveSpline); + } + else + { + VAbstractTool::data.UpdateGObject(m_id, newMoveSpline); + RefreshGeometry(); + + if (QGraphicsScene *sc = scene()) { - oldMoveSpline = QSharedPointer::create(*spline); - moved = true; + VMainGraphicsView::NewSceneRect(sc, VAbstractValApplication::VApp()->getSceneView(), this); } + } - const qreal t = spline->ParamT(oldPosition); + // Each time we move something we call recalculation scene rect. In some cases this can cause moving + // objects positions. And this cause infinite redrawing. That's why we wait the finish of saving the last move. + static bool changeFinished = true; + if (changeFinished) + { + changeFinished = false; - if (qFloor(t) == -1) + const QList viewList = scene()->views(); + if (not viewList.isEmpty()) { - moved = false; - return; - } - - double weight; - if (t <= 1.0 / 6.0) - { - weight = 0; - } - else if (t <= 0.5) - { - weight = (pow((6 * t - 1) / 2.0, 3)) / 2; - } - else if (t <= 5.0 / 6.0) - { - weight = (1 - pow((6 * (1-t) - 1) / 2.0, 3)) / 2 + 0.5; - } - else - { - weight = 1; - } - - const QPointF delta = event->scenePos() - oldPosition; - const QPointF offset0 = ((1-weight)/(3*t*(1-t)*(1-t))) * delta; - const QPointF offset1 = (weight/(3*t*t*(1-t))) * delta; - - const QPointF p2 = static_cast(spline->GetP2()) + offset0; - const QPointF p3 = static_cast(spline->GetP3()) + offset1; - - oldPosition = event->scenePos(); // Now mouse here - - newMoveSpline = QSharedPointer::create(spline->GetP1(), p2, p3, spline->GetP4()); - - if (not VAbstractApplication::VApp()->Settings()->IsFreeCurveMode()) - { - UndoCommandMove(*spline, *newMoveSpline); - } - else - { - VAbstractTool::data.UpdateGObject(m_id, newMoveSpline); - RefreshGeometry(); - - if (QGraphicsScene *sc = scene()) + if (auto *view = qobject_cast(viewList.at(0))) { - VMainGraphicsView::NewSceneRect(sc, VAbstractValApplication::VApp()->getSceneView(), this); + auto *currentScene = qobject_cast(scene()); + SCASSERT(currentScene) + const QPointF cursorPosition = currentScene->getScenePos(); + const qreal scale = SceneScale(scene()); + view->EnsureVisibleWithDelay( + QRectF(cursorPosition.x() - 5 / scale, cursorPosition.y() - 5 / scale, 10 / scale, 10 / scale), + VMainGraphicsView::scrollDelay); } } - - // Each time we move something we call recalculation scene rect. In some cases this can cause moving - // objects positions. And this cause infinite redrawing. That's why we wait the finish of saving the last move. - static bool changeFinished = true; - if (changeFinished) - { - changeFinished = false; - - const QList viewList = scene()->views(); - if (not viewList.isEmpty()) - { - if (VMainGraphicsView *view = qobject_cast(viewList.at(0))) - { - VMainGraphicsScene *currentScene = qobject_cast(scene()); - SCASSERT(currentScene) - const QPointF cursorPosition = currentScene->getScenePos(); - const qreal scale = SceneScale(scene()); - view->EnsureVisibleWithDelay(QRectF(cursorPosition.x()-5/scale, cursorPosition.y()-5/scale, 10/scale, - 10/scale), - VMainGraphicsView::scrollDelay); - } - } - changeFinished = true; - } + changeFinished = true; } } //--------------------------------------------------------------------------------------------------------------------- void VToolSpline::hoverEnterEvent(QGraphicsSceneHoverEvent *event) { - if (m_acceptHoverEvents) + if (GetAcceptHoverEvents()) { if (flags() & QGraphicsItem::ItemIsMovable) { @@ -526,7 +554,7 @@ void VToolSpline::hoverEnterEvent(QGraphicsSceneHoverEvent *event) //--------------------------------------------------------------------------------------------------------------------- void VToolSpline::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) { - if (m_acceptHoverEvents) + if (GetAcceptHoverEvents()) { VAbstractSpline::hoverLeaveEvent(event); } @@ -585,7 +613,7 @@ void VToolSpline::RefreshCtrlPoints() const bool freeLength1 = qmu::QmuTokenParser::IsSingle(spl->GetC1LengthFormula()); const QPointF splinePoint = - static_cast(*VAbstractTool::data.GeometricObject(spl->GetP1().id())); + static_cast(*VAbstractTool::data.GeometricObject(spl->GetP1().id())); controlPoints[0]->RefreshCtrlPoint(1, SplinePointPosition::FirstPoint, static_cast(spl->GetP2()), static_cast(splinePoint), freeAngle1, freeLength1); } @@ -595,7 +623,7 @@ void VToolSpline::RefreshCtrlPoints() const bool freeLength2 = qmu::QmuTokenParser::IsSingle(spl->GetC2LengthFormula()); const QPointF splinePoint = - static_cast(*VAbstractTool::data.GeometricObject(spl->GetP4().id())); + static_cast(*VAbstractTool::data.GeometricObject(spl->GetP4().id())); controlPoints[1]->RefreshCtrlPoint(1, SplinePointPosition::LastPoint, static_cast(spl->GetP3()), static_cast(splinePoint), freeAngle2, freeLength2); } @@ -631,10 +659,23 @@ void VToolSpline::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! + } +} + +//--------------------------------------------------------------------------------------------------------------------- +void VToolSpline::CurveSelected(bool selected) +{ + setSelected(selected); + + for (auto *point : qAsConst(controlPoints)) + { + point->blockSignals(true); + point->setSelected(selected); + point->blockSignals(false); } } @@ -643,20 +684,20 @@ void VToolSpline::SetSplineAttributes(QDomElement &domElement, const VSpline &sp { SCASSERT(doc != nullptr) - doc->SetAttribute(domElement, AttrType, ToolType); - doc->SetAttribute(domElement, AttrPoint1, spl.GetP1().id()); - doc->SetAttribute(domElement, AttrPoint4, spl.GetP4().id()); - doc->SetAttribute(domElement, AttrAngle1, spl.GetStartAngleFormula()); - doc->SetAttribute(domElement, AttrAngle2, spl.GetEndAngleFormula()); + doc->SetAttribute(domElement, AttrType, ToolType); + doc->SetAttribute(domElement, AttrPoint1, spl.GetP1().id()); + doc->SetAttribute(domElement, AttrPoint4, spl.GetP4().id()); + doc->SetAttribute(domElement, AttrAngle1, spl.GetStartAngleFormula()); + doc->SetAttribute(domElement, AttrAngle2, spl.GetEndAngleFormula()); doc->SetAttribute(domElement, AttrLength1, spl.GetC1LengthFormula()); doc->SetAttribute(domElement, AttrLength2, spl.GetC2LengthFormula()); - doc->SetAttribute(domElement, AttrColor, spl.GetColor()); + doc->SetAttribute(domElement, AttrColor, spl.GetColor()); doc->SetAttribute(domElement, AttrPenStyle, spl.GetPenStyle()); doc->SetAttribute(domElement, AttrAScale, spl.GetApproximationScale()); doc->SetAttributeOrRemoveIf(domElement, AttrDuplicate, spl.GetDuplicate(), - [](quint32 duplicate) noexcept {return duplicate == 0;}); + [](quint32 duplicate) noexcept { return duplicate == 0; }); doc->SetAttributeOrRemoveIf(domElement, AttrAlias, spl.GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); if (domElement.hasAttribute(AttrKCurve)) { @@ -677,7 +718,7 @@ void VToolSpline::SetSplineAttributes(QDomElement &domElement, const VSpline &sp //--------------------------------------------------------------------------------------------------------------------- void VToolSpline::UndoCommandMove(const VSpline &oldSpl, const VSpline &newSpl) { - MoveSpline *moveSpl = new MoveSpline(doc, oldSpl, newSpl, m_id); + auto *moveSpl = new MoveSpline(doc, oldSpl, newSpl, m_id); connect(moveSpl, &MoveSpline::NeedLiteParsing, doc, &VAbstractPattern::LiteParseTree); VAbstractApplication::VApp()->getUndoStack()->push(moveSpl); } diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.h index 515239959..b436c5765 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolspline.h @@ -29,7 +29,6 @@ #ifndef VTOOLSPLINE_H #define VTOOLSPLINE_H -#include #include #include #include @@ -37,87 +36,93 @@ #include #include -#include "../vgeometry/vgeometrydef.h" -#include "../vmisc/def.h" #include "../ifc/xml/vabstractpattern.h" -#include "vabstractspline.h" +#include "../vgeometry/vgeometrydef.h" #include "../vgeometry/vspline.h" +#include "../vmisc/def.h" +#include "vabstractspline.h" template class QSharedPointer; struct VToolSplineInitData : VAbstractSplineInitData { - VToolSplineInitData() - : VAbstractSplineInitData(), - point1(NULL_ID), - point4(NULL_ID), - a1(), - a2(), - l1(), - l2(), - duplicate(0) - {} + VToolSplineInitData() = default; - quint32 point1; - quint32 point4; - QString a1; - QString a2; - QString l1; - QString l2; - quint32 duplicate; + quint32 point1{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 point4{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + QString a1{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString a2{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString l1{}; // NOLINT(misc-non-private-member-variables-in-classes) + QString l2{}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 duplicate{0}; // NOLINT(misc-non-private-member-variables-in-classes) }; /** * @brief The VToolSpline class tool for creation spline. I mean bezier curve. */ -class VToolSpline:public VAbstractSpline +class VToolSpline : public VAbstractSpline { Q_OBJECT // NOLINT + public: - virtual ~VToolSpline() =default; - virtual void SetDialog() override; + ~VToolSpline() override = default; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolSpline *; static auto Create(VToolSplineInitData &initData, VSpline *spline) -> VToolSpline *; static auto Create(VToolSplineInitData &initData) -> VToolSpline *; static const QString ToolType; static const QString OldToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::Spline)}; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::Spline) + }; auto getSpline() const -> VSpline; - void setSpline(const VSpline &spl); + void setSpline(const VSpline &spl); + + void ShowVisualization(bool show) override; + + void ShowHandles(bool show) override; - virtual void ShowVisualization(bool show) override; public slots: - void ControlPointChangePosition (const qint32 &indexSpline, const SplinePointPosition &position, - const QPointF &pos); - virtual void EnableToolMove(bool move) override; + void ControlPointChangePosition(const qint32 &indexSpline, const SplinePointPosition &position, const QPointF &pos); + void EnableToolMove(bool move) override; + void AllowHover(bool enabled) override; + void AllowSelecting(bool enabled) override; + protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + void CurveSelected(bool selected); + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void mousePressEvent(QGraphicsSceneMouseEvent * event) override; - virtual void mouseReleaseEvent ( QGraphicsSceneMouseEvent * event ) override; - virtual void mouseMoveEvent(QGraphicsSceneMouseEvent * event) override; - virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent * event ) override; - virtual void hoverLeaveEvent ( QGraphicsSceneHoverEvent * event ) override; - virtual void SetVisualization() override; - virtual void RefreshCtrlPoints() override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void mousePressEvent(QGraphicsSceneMouseEvent *event) override; + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override; + void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override; + void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override; + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override; + void SetVisualization() override; + void RefreshCtrlPoints() override; + private slots: void CurveReleased(); + private: Q_DISABLE_COPY_MOVE(VToolSpline) // NOLINT - QPointF oldPosition; + QPointF oldPosition{}; + bool moved{false}; + QSharedPointer oldMoveSpline{}; + QSharedPointer newMoveSpline{}; + /** + * @brief controlPoints list pointers of control points. + */ + QVector controlPoints{}; - bool moved; - QSharedPointer oldMoveSpline; - QSharedPointer newMoveSpline; - - VToolSpline (const VToolSplineInitData &initData, QGraphicsItem *parent = nullptr ); + explicit VToolSpline(const VToolSplineInitData &initData, QGraphicsItem *parent = nullptr); auto IsMovable() const -> bool; void SetSplineAttributes(QDomElement &domElement, const VSpline &spl); diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.cpp index 3d0e679d6..b241a6433 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.cpp @@ -41,20 +41,20 @@ #include #include #include -#include -#include #include -#include "../../../dialogs/tools/dialogtool.h" #include "../../../dialogs/tools/dialogsplinepath.h" +#include "../../../dialogs/tools/dialogtool.h" #include "../../../undocommands/movesplinepath.h" #include "../../../undocommands/vundocommand.h" -#include "../../../visualization/visualization.h" #include "../../../visualization/path/vistoolsplinepath.h" +#include "../../../visualization/visualization.h" +#include "../../vabstracttool.h" #include "../ifc/exception/vexception.h" -#include "../ifc/xml/vdomdocument.h" #include "../ifc/ifcdef.h" +#include "../ifc/xml/vdomdocument.h" #include "../qmuparser/qmutokenparser.h" +#include "../vdrawtool.h" #include "../vgeometry/vabstractcubicbezierpath.h" #include "../vgeometry/vabstractcurve.h" #include "../vgeometry/vgobject.h" @@ -64,11 +64,9 @@ #include "../vmisc/vabstractapplication.h" #include "../vpatterndb/vcontainer.h" #include "../vwidgets/../vgeometry/vsplinepath.h" +#include "../vwidgets/global.h" #include "../vwidgets/vcontrolpointspline.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../vwidgets/global.h" -#include "../../vabstracttool.h" -#include "../vdrawtool.h" #include "vabstractspline.h" const QString VToolSplinePath::ToolType = QStringLiteral("pathInteractive"); @@ -81,19 +79,14 @@ const QString VToolSplinePath::OldToolType = QStringLiteral("path"); * @param parent parent object. */ VToolSplinePath::VToolSplinePath(const VToolSplinePathInitData &initData, QGraphicsItem *parent) - : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent), - oldPosition(), - splIndex(-1), - moved(false), - oldMoveSplinePath(), - newMoveSplinePath() + : VAbstractSpline(initData.doc, initData.data, initData.id, initData.notes, parent) { - sceneType = SceneObject::SplinePath; + SetSceneType(SceneObject::SplinePath); this->setFlag(QGraphicsItem::ItemIsMovable, true); - this->setFlag(QGraphicsItem::ItemIsFocusable, true);// For keyboard input focus + this->setFlag(QGraphicsItem::ItemIsFocusable, true); // For keyboard input focus - auto InitControlPoint = [this](VControlPointSpline* cPoint) + auto InitControlPoint = [this](VControlPointSpline *cPoint) { connect(cPoint, &VControlPointSpline::ControlPointChangePosition, this, &VToolSplinePath::ControlPointChangePosition); @@ -105,7 +98,7 @@ VToolSplinePath::VToolSplinePath(const VToolSplinePathInitData &initData, QGraph }; const QSharedPointer splPath = initData.data->GeometricObject(initData.id); - for (qint32 i = 1; i<=splPath->CountSubSpl(); ++i) + for (qint32 i = 1; i <= splPath->CountSubSpl(); ++i) { const VSpline spl = splPath->GetSpline(i); @@ -113,7 +106,7 @@ VToolSplinePath::VToolSplinePath(const VToolSplinePathInitData &initData, QGraph if (i > 1) { - const VSpline prevSpl = splPath->GetSpline(i-1); + const VSpline prevSpl = splPath->GetSpline(i - 1); freeAngle1 = qmu::QmuTokenParser::IsSingle(spl.GetStartAngleFormula()) && qmu::QmuTokenParser::IsSingle(prevSpl.GetEndAngleFormula()); } @@ -132,7 +125,7 @@ VToolSplinePath::VToolSplinePath(const VToolSplinePathInitData &initData, QGraph if (i < splPath->CountSubSpl()) { - const VSpline nextSpl = splPath->GetSpline(i+1); + const VSpline nextSpl = splPath->GetSpline(i + 1); freeAngle2 = qmu::QmuTokenParser::IsSingle(nextSpl.GetStartAngleFormula()) && qmu::QmuTokenParser::IsSingle(spl.GetEndAngleFormula()); } @@ -150,7 +143,7 @@ VToolSplinePath::VToolSplinePath(const VToolSplinePathInitData &initData, QGraph VToolSplinePath::RefreshCtrlPoints(); - ShowHandles(detailsMode); + ShowHandles(IsDetailsMode()); ToolCreation(initData.typeCreation); } @@ -198,7 +191,7 @@ auto VToolSplinePath::Create(const QPointer &dialog, VMainGraphicsSc doc->IncrementReferens((*path)[i].P().getIdTool()); } - VToolSplinePath* spl = Create(initData, path); + VToolSplinePath *spl = Create(initData, path); if (spl != nullptr) { spl->m_dialog = dialog; @@ -246,7 +239,7 @@ auto VToolSplinePath::Create(VToolSplinePathInitData &initData, VSplinePath *pat //--------------------------------------------------------------------------------------------------------------------- auto VToolSplinePath::Create(VToolSplinePathInitData &initData) -> VToolSplinePath * { - auto* path = new VSplinePath(); + auto *path = new VSplinePath(); if (initData.duplicate > 0) { @@ -259,9 +252,9 @@ auto VToolSplinePath::Create(VToolSplinePathInitData &initData) -> VToolSplinePa const qreal calcAngle2 = CheckFormula(initData.id, initData.a2[i], initData.data); const qreal calcLength1 = - VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l1[i], initData.data)); + VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l1[i], initData.data)); const qreal calcLength2 = - VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l2[i], initData.data)); + VAbstractValApplication::VApp()->toPixel(CheckFormula(initData.id, initData.l2[i], initData.data)); const auto p = *initData.data->GeometricObject(initData.points.at(i)); @@ -328,6 +321,28 @@ void VToolSplinePath::EnableToolMove(bool move) } } +//--------------------------------------------------------------------------------------------------------------------- +void VToolSplinePath::AllowHover(bool enabled) +{ + VAbstractSpline::AllowHover(enabled); + + for (auto *point : qAsConst(controlPoints)) + { + point->setAcceptHoverEvents(enabled); + } +} + +//--------------------------------------------------------------------------------------------------------------------- +void VToolSplinePath::AllowSelecting(bool enabled) +{ + VAbstractSpline::AllowSelecting(enabled); + + for (auto *point : qAsConst(controlPoints)) + { + point->setFlag(QGraphicsItem::ItemIsSelectable, enabled); + } +} + //--------------------------------------------------------------------------------------------------------------------- void VToolSplinePath::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id) { @@ -336,10 +351,23 @@ void VToolSplinePath::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, qui { ContextMenu(event); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! + } +} + +//--------------------------------------------------------------------------------------------------------------------- +void VToolSplinePath::CurveSelected(bool selected) +{ + setSelected(selected); + + for (auto *point : qAsConst(controlPoints)) + { + point->blockSignals(true); + point->setSelected(selected); + point->blockSignals(false); } } @@ -355,9 +383,9 @@ void VToolSplinePath::UpdateControlPoints(const VSpline &spl, QSharedPointerGetSplinePoint(indexSpline, SplinePointPosition::FirstPoint); - if (indexSpline >1) + if (indexSpline > 1) { - VSpline prevSpline = splPath->GetSpline(indexSpline-1); + VSpline prevSpline = splPath->GetSpline(indexSpline - 1); if (qmu::QmuTokenParser::IsSingle(prevSpline.GetEndAngleFormula())) { p.SetAngle2(spl.GetStartAngle(), spl.GetStartAngleFormula()); @@ -368,7 +396,6 @@ void VToolSplinePath::UpdateControlPoints(const VSpline &spl, QSharedPointerUpdatePoint(indexSpline, SplinePointPosition::FirstPoint, p); @@ -376,7 +403,7 @@ void VToolSplinePath::UpdateControlPoints(const VSpline &spl, QSharedPointerCountSubSpl()) { - VSpline nextSpline = splPath->GetSpline(indexSpline+1); + VSpline nextSpline = splPath->GetSpline(indexSpline + 1); if (qmu::QmuTokenParser::IsSingle(nextSpline.GetStartAngleFormula())) { p.SetAngle1(spl.GetEndAngle(), spl.GetEndAngleFormula()); @@ -396,7 +423,7 @@ void VToolSplinePath::SetSplinePathAttributes(QDomElement &domElement, const VSp { doc->SetAttribute(domElement, AttrType, ToolType); doc->SetAttributeOrRemoveIf(domElement, AttrDuplicate, path.GetDuplicate(), - [](quint32 duplicate) noexcept {return duplicate == 0;}); + [](quint32 duplicate) noexcept { return duplicate == 0; }); if (domElement.hasAttribute(AttrKCurve)) { @@ -407,7 +434,7 @@ void VToolSplinePath::SetSplinePathAttributes(QDomElement &domElement, const VSp doc->SetAttribute(domElement, AttrPenStyle, path.GetPenStyle()); doc->SetAttribute(domElement, AttrAScale, path.GetApproximationScale()); doc->SetAttributeOrRemoveIf(domElement, AttrAlias, path.GetAliasSuffix(), - [](const QString &suffix) noexcept {return suffix.isEmpty();}); + [](const QString &suffix) noexcept { return suffix.isEmpty(); }); UpdatePathPoints(doc, domElement, path); } @@ -458,6 +485,16 @@ void VToolSplinePath::ShowVisualization(bool show) ShowToolVisualization(show); } +//--------------------------------------------------------------------------------------------------------------------- +void VToolSplinePath::ShowHandles(bool show) +{ + for (auto *point : qAsConst(controlPoints)) + { + point->setVisible(show); + } + VAbstractSpline::ShowHandles(show); +} + //--------------------------------------------------------------------------------------------------------------------- /** * @brief AddPathPoint write path point to pattern file. @@ -532,20 +569,20 @@ void VToolSplinePath::SaveDialog(QDomElement &domElement, QList &oldDep for (qint32 i = 1; i <= splPath.CountSubSpl(); ++i) { VSpline spl = splPath.GetSpline(i); - qint32 j = i*2; + qint32 j = i * 2; - controlPoints[j-2]->blockSignals(true); - controlPoints[j-1]->blockSignals(true); + controlPoints[j - 2]->blockSignals(true); + controlPoints[j - 1]->blockSignals(true); - controlPoints[j-2]->setPos(static_cast(spl.GetP2())); - controlPoints[j-1]->setPos(static_cast(spl.GetP3())); + controlPoints[j - 2]->setPos(static_cast(spl.GetP2())); + controlPoints[j - 1]->setPos(static_cast(spl.GetP3())); - controlPoints[j-2]->blockSignals(false); - controlPoints[j-1]->blockSignals(false); + controlPoints[j - 2]->blockSignals(false); + controlPoints[j - 1]->blockSignals(false); } doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); SetSplinePathAttributes(domElement, splPath); } @@ -639,7 +676,7 @@ void VToolSplinePath::mouseMoveEvent(QGraphicsSceneMouseEvent *event) } else if (t <= 5.0 / 6.0) { - weight = (1 - pow((6 * (1-t) - 1) / 2.0, 3)) / 2 + 0.5; + weight = (1 - pow((6 * (1 - t) - 1) / 2.0, 3)) / 2 + 0.5; } else { @@ -647,8 +684,8 @@ void VToolSplinePath::mouseMoveEvent(QGraphicsSceneMouseEvent *event) } const QPointF delta = event->scenePos() - oldPosition; - const QPointF offset0 = ((1-weight)/(3*t*(1-t)*(1-t))) * delta; - const QPointF offset1 = (weight/(3*t*t*(1-t))) * delta; + const QPointF offset0 = ((1 - weight) / (3 * t * (1 - t) * (1 - t))) * delta; + const QPointF offset1 = (weight / (3 * t * t * (1 - t))) * delta; const QPointF p2 = static_cast(spline.GetP2()) + offset0; const QPointF p3 = static_cast(spline.GetP3()) + offset1; @@ -679,23 +716,23 @@ void VToolSplinePath::mouseMoveEvent(QGraphicsSceneMouseEvent *event) static bool changeFinished = true; if (changeFinished) { - changeFinished = false; + changeFinished = false; - const QList viewList = scene()->views(); - if (not viewList.isEmpty()) - { - if (VMainGraphicsView *view = qobject_cast(viewList.at(0))) - { - VMainGraphicsScene *currentScene = qobject_cast(scene()); - SCASSERT(currentScene) - const QPointF cursorPosition = currentScene->getScenePos(); - const qreal scale = SceneScale(scene()); - view->EnsureVisibleWithDelay(QRectF(cursorPosition.x()-5/scale, cursorPosition.y()-5/scale, 10/scale, - 10/scale), - VMainGraphicsView::scrollDelay); - } - } - changeFinished = true; + const QList viewList = scene()->views(); + if (not viewList.isEmpty()) + { + if (VMainGraphicsView *view = qobject_cast(viewList.at(0))) + { + VMainGraphicsScene *currentScene = qobject_cast(scene()); + SCASSERT(currentScene) + const QPointF cursorPosition = currentScene->getScenePos(); + const qreal scale = SceneScale(scene()); + view->EnsureVisibleWithDelay( + QRectF(cursorPosition.x() - 5 / scale, cursorPosition.y() - 5 / scale, 10 / scale, 10 / scale), + VMainGraphicsView::scrollDelay); + } + } + changeFinished = true; } } } @@ -703,7 +740,7 @@ void VToolSplinePath::mouseMoveEvent(QGraphicsSceneMouseEvent *event) //--------------------------------------------------------------------------------------------------------------------- void VToolSplinePath::hoverEnterEvent(QGraphicsSceneHoverEvent *event) { - if (m_acceptHoverEvents) + if (GetAcceptHoverEvents()) { if (flags() & QGraphicsItem::ItemIsMovable) { @@ -735,7 +772,7 @@ void VToolSplinePath::hoverEnterEvent(QGraphicsSceneHoverEvent *event) //--------------------------------------------------------------------------------------------------------------------- void VToolSplinePath::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) { - if (m_acceptHoverEvents) + if (GetAcceptHoverEvents()) { VAbstractSpline::hoverLeaveEvent(event); } @@ -784,12 +821,12 @@ void VToolSplinePath::RefreshCtrlPoints() const auto splPath = VAbstractTool::data.GeometricObject(m_id); - for (qint32 i = 1; i<=splPath->CountSubSpl(); ++i) + for (qint32 i = 1; i <= splPath->CountSubSpl(); ++i) { - const qint32 j = i*2; + const qint32 j = i * 2; - controlPoints[j-2]->blockSignals(true); - controlPoints[j-1]->blockSignals(true); + controlPoints[j - 2]->blockSignals(true); + controlPoints[j - 1]->blockSignals(true); const auto spl = splPath->GetSpline(i); @@ -798,7 +835,7 @@ void VToolSplinePath::RefreshCtrlPoints() if (i > 1) { - const VSpline prevSpl = splPath->GetSpline(i-1); + const VSpline prevSpl = splPath->GetSpline(i - 1); freeAngle1 = qmu::QmuTokenParser::IsSingle(spl.GetStartAngleFormula()) && qmu::QmuTokenParser::IsSingle(prevSpl.GetEndAngleFormula()); } @@ -810,8 +847,9 @@ void VToolSplinePath::RefreshCtrlPoints() const bool freeLength1 = qmu::QmuTokenParser::IsSingle(spl.GetC1LengthFormula()); const auto splinePoint = spl.GetP1(); - controlPoints[j-2]->RefreshCtrlPoint(i, SplinePointPosition::FirstPoint, static_cast(spl.GetP2()), - static_cast(splinePoint), freeAngle1, freeLength1); + controlPoints[j - 2]->RefreshCtrlPoint(i, SplinePointPosition::FirstPoint, + static_cast(spl.GetP2()), static_cast(splinePoint), + freeAngle1, freeLength1); } { @@ -819,7 +857,7 @@ void VToolSplinePath::RefreshCtrlPoints() if (i < splPath->CountSubSpl()) { - const VSpline nextSpl = splPath->GetSpline(i+1); + const VSpline nextSpl = splPath->GetSpline(i + 1); freeAngle2 = qmu::QmuTokenParser::IsSingle(nextSpl.GetStartAngleFormula()) && qmu::QmuTokenParser::IsSingle(spl.GetEndAngleFormula()); } @@ -831,12 +869,12 @@ void VToolSplinePath::RefreshCtrlPoints() const bool freeLength2 = qmu::QmuTokenParser::IsSingle(spl.GetC2LengthFormula()); const auto splinePoint = spl.GetP4(); - controlPoints[j-1]->RefreshCtrlPoint(i, SplinePointPosition::LastPoint, static_cast(spl.GetP3()), - static_cast(splinePoint), freeAngle2, freeLength2); + controlPoints[j - 1]->RefreshCtrlPoint(i, SplinePointPosition::LastPoint, static_cast(spl.GetP3()), + static_cast(splinePoint), freeAngle2, freeLength2); } - controlPoints[j-2]->blockSignals(false); - controlPoints[j-1]->blockSignals(false); + controlPoints[j - 2]->blockSignals(false); + controlPoints[j - 1]->blockSignals(false); } for (auto *point : qAsConst(controlPoints)) diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.h b/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.h index 50dd5a7b1..faaf599a5 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.h +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolsplinepath.h @@ -29,7 +29,6 @@ #ifndef VTOOLSPLINEPATH_H #define VTOOLSPLINEPATH_H -#include #include #include #include @@ -38,9 +37,9 @@ #include #include +#include "../ifc/xml/vabstractpattern.h" #include "../vgeometry/vgeometrydef.h" #include "../vmisc/def.h" -#include "../ifc/xml/vabstractpattern.h" #include "vabstractspline.h" class VSplinePath; @@ -48,47 +47,46 @@ template class QSharedPointer; struct VToolSplinePathInitData : VAbstractSplineInitData { - VToolSplinePathInitData() - : VAbstractSplineInitData(), - points(), - a1(), - a2(), - l1(), - l2(), - duplicate(0) - {} + VToolSplinePathInitData() = default; - QVector points; - QVector a1; - QVector a2; - QVector l1; - QVector l2; - quint32 duplicate; + QVector points{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector a1{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector a2{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector l1{}; // NOLINT(misc-non-private-member-variables-in-classes) + QVector l2{}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 duplicate{0}; // NOLINT(misc-non-private-member-variables-in-classes) }; /** * @brief The VToolSplinePath class tool for creation spline path. */ -class VToolSplinePath:public VAbstractSpline +class VToolSplinePath : public VAbstractSpline { Q_OBJECT // NOLINT + public: - virtual ~VToolSplinePath() =default; - virtual void SetDialog() override; + ~VToolSplinePath() override = default; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolSplinePath *; static auto Create(VToolSplinePathInitData &initData, VSplinePath *path) -> VToolSplinePath *; static auto Create(VToolSplinePathInitData &initData) -> VToolSplinePath *; static const QString ToolType; static const QString OldToolType; - static void UpdatePathPoints(VAbstractPattern *doc, QDomElement &element, const VSplinePath &path); - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::SplinePath)}; + static void UpdatePathPoints(VAbstractPattern *doc, QDomElement &element, const VSplinePath &path); + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::SplinePath) + }; auto getSplinePath() const -> VSplinePath; - void setSplinePath(const VSplinePath &splPath); + void setSplinePath(const VSplinePath &splPath); + + void ShowVisualization(bool show) override; + + void ShowHandles(bool show) override; - virtual void ShowVisualization(bool show) override; signals: /** * @brief RefreshLine refresh control line. @@ -97,45 +95,51 @@ signals: * @param controlPoint new position control point. * @param splinePoint new position spline point. */ - void RefreshLine(const qint32 &indexSpline, SplinePointPosition pos, const QPointF &controlPoint, - const QPointF &splinePoint); -public slots: + void RefreshLine(const qint32 &indexSpline, SplinePointPosition pos, const QPointF &controlPoint, + const QPointF &splinePoint); + +public slots: + void ControlPointChangePosition(const qint32 &indexSpline, const SplinePointPosition &position, const QPointF &pos); + void EnableToolMove(bool move) override; + void AllowHover(bool enabled) override; + void AllowSelecting(bool enabled) override; - void ControlPointChangePosition(const qint32 &indexSpline, const SplinePointPosition &position, - const QPointF &pos); - virtual void EnableToolMove(bool move) override; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + void CurveSelected(bool selected); + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void mousePressEvent(QGraphicsSceneMouseEvent * event) override; - virtual void mouseReleaseEvent ( QGraphicsSceneMouseEvent * event ) override; - virtual void mouseMoveEvent(QGraphicsSceneMouseEvent * event) override; - virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent * event ) override; - virtual void hoverLeaveEvent ( QGraphicsSceneHoverEvent * event ) override; - virtual void SetVisualization() override; - virtual void RefreshCtrlPoints() override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void mousePressEvent(QGraphicsSceneMouseEvent *event) override; + void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override; + void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override; + void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override; + void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override; + void SetVisualization() override; + void RefreshCtrlPoints() override; private slots: void CurveReleased(); + private: Q_DISABLE_COPY_MOVE(VToolSplinePath) // NOLINT - QPointF oldPosition; - int splIndex; + QPointF oldPosition{}; + int splIndex{-1}; + bool moved{false}; + QSharedPointer oldMoveSplinePath{}; + QSharedPointer newMoveSplinePath{}; + /** + * @brief controlPoints list pointers of control points. + */ + QVector controlPoints{}; - bool moved; - QSharedPointer oldMoveSplinePath; - QSharedPointer newMoveSplinePath; - - VToolSplinePath(const VToolSplinePathInitData &initData, QGraphicsItem *parent = nullptr); + explicit VToolSplinePath(const VToolSplinePathInitData &initData, QGraphicsItem *parent = nullptr); auto IsMovable(int index) const -> bool; - static void AddPathPoint(VAbstractPattern *doc, QDomElement &domElement, const VSplinePoint &splPoint); - void UpdateControlPoints(const VSpline &spl, QSharedPointer &splPath, - qint32 indexSpline) const; - void SetSplinePathAttributes(QDomElement &domElement, const VSplinePath &path); + static void AddPathPoint(VAbstractPattern *doc, QDomElement &domElement, const VSplinePoint &splPoint); + void UpdateControlPoints(const VSpline &spl, QSharedPointer &splPath, qint32 indexSpline) const; + void SetSplinePathAttributes(QDomElement &domElement, const VSplinePath &path); void UndoCommandMove(const VSplinePath &oldPath, const VSplinePath &newPath); }; diff --git a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h index 42975cf7c..b9e58bbdc 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooldoublepoint.h @@ -29,7 +29,7 @@ #ifndef VTOOLDOUBLEPOINT_H #define VTOOLDOUBLEPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.cpp b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.cpp index 02f7d2916..d4f85351a 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.cpp +++ b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.cpp @@ -31,35 +31,34 @@ #include #include #include -#include -#include "../../../../dialogs/tools/dialogtruedarts.h" #include "../../../../dialogs/tools/dialogtool.h" -#include "../../../../visualization/visualization.h" +#include "../../../../dialogs/tools/dialogtruedarts.h" #include "../../../../visualization/line/vistooltruedarts.h" +#include "../../../../visualization/visualization.h" +#include "../../../vabstracttool.h" +#include "../../vdrawtool.h" #include "../ifc/exception/vexception.h" #include "../ifc/ifcdef.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" +#include "../vmisc/compatibility.h" #include "../vpatterndb/vcontainer.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../../vabstracttool.h" -#include "../../vdrawtool.h" #include "vtooldoublepoint.h" -#include "../vmisc/compatibility.h" template class QSharedPointer; -const QString VToolTrueDarts::ToolType = QStringLiteral("trueDarts"); +const QString VToolTrueDarts::ToolType = QStringLiteral("trueDarts"); // NOLINT //--------------------------------------------------------------------------------------------------------------------- VToolTrueDarts::VToolTrueDarts(const VToolTrueDartsInitData &initData, QGraphicsItem *parent) - :VToolDoublePoint(initData.doc, initData.data, initData.id, initData.p1id, initData.p2id, initData.notes, parent), - baseLineP1Id (initData.baseLineP1Id), - baseLineP2Id(initData.baseLineP2Id), - dartP1Id(initData.dartP1Id), - dartP2Id(initData.dartP2Id), - dartP3Id(initData.dartP3Id) + : VToolDoublePoint(initData.doc, initData.data, initData.id, initData.p1id, initData.p2id, initData.notes, parent), + baseLineP1Id(initData.baseLineP1Id), + baseLineP2Id(initData.baseLineP2Id), + dartP1Id(initData.dartP1Id), + dartP2Id(initData.dartP2Id), + dartP3Id(initData.dartP3Id) { ToolCreation(initData.typeCreation); } @@ -74,7 +73,7 @@ void VToolTrueDarts::FindPoint(const QPointF &baseLineP1, const QPointF &baseLin const qreal degrees = d2d3.angleTo(d2d1); QLineF d2blP2(dartP2, baseLineP2); - d2blP2.setAngle(d2blP2.angle()+degrees); + d2blP2.setAngle(d2blP2.angle() + degrees); if (Intersects(QLineF(baseLineP1, d2blP2.p2()), d2d1, &p1) == QLineF::NoIntersection) { @@ -84,7 +83,7 @@ void VToolTrueDarts::FindPoint(const QPointF &baseLineP1, const QPointF &baseLin } QLineF d2p1(dartP2, p1); - d2p1.setAngle(d2p1.angle()-degrees); + d2p1.setAngle(d2p1.angle() - degrees); p2 = d2p1.p2(); } @@ -154,15 +153,15 @@ auto VToolTrueDarts::Create(VToolTrueDartsInitData initData) -> VToolTrueDarts * static_cast(*dartP1), static_cast(*dartP2), static_cast(*dartP3), fPoint1, fPoint2); - VPointF *p1 = new VPointF(fPoint1, initData.name1, initData.mx1, initData.my1, initData.id); + auto *p1 = new VPointF(fPoint1, initData.name1, initData.mx1, initData.my1, initData.id); p1->SetShowLabel(initData.showLabel1); - VPointF *p2 = new VPointF(fPoint2, initData.name2, initData.mx2, initData.my2, initData.id); + auto *p2 = new VPointF(fPoint2, initData.name2, initData.mx2, initData.my2, initData.id); p2->SetShowLabel(initData.showLabel2); if (initData.typeCreation == Source::FromGui) { - initData.id = initData.data->getNextId();//Just reserve id for tool + initData.id = initData.data->getNextId(); // Just reserve id for tool initData.p1id = initData.data->AddGObject(p1); initData.p2id = initData.data->AddGObject(p2); } @@ -179,7 +178,7 @@ auto VToolTrueDarts::Create(VToolTrueDartsInitData initData) -> VToolTrueDarts * if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::TrueDarts, initData.doc); - VToolTrueDarts *points = new VToolTrueDarts(initData); + auto *points = new VToolTrueDarts(initData); initData.scene->addItem(points); InitToolConnections(initData.scene, points); VAbstractPattern::AddTool(initData.id, points); @@ -236,10 +235,10 @@ void VToolTrueDarts::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quin { ContextMenu(event, id); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } @@ -288,7 +287,7 @@ void VToolTrueDarts::SaveDialog(QDomElement &domElement, QList &oldDepe doc->SetAttribute(domElement, AttrDartP2, QString().setNum(dialogTool->GetSecondDartPointId())); doc->SetAttribute(domElement, AttrDartP3, QString().setNum(dialogTool->GetThirdDartPointId())); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, dialogTool->GetNotes(), - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); } //--------------------------------------------------------------------------------------------------------------------- @@ -309,11 +308,11 @@ void VToolTrueDarts::ReadToolAttributes(const QDomElement &domElement) { VToolDoublePoint::ReadToolAttributes(domElement); - baseLineP1Id = doc->GetParametrUInt(domElement, AttrBaseLineP1, NULL_ID_STR); - baseLineP2Id = doc->GetParametrUInt(domElement, AttrBaseLineP2, NULL_ID_STR); - dartP1Id = doc->GetParametrUInt(domElement, AttrDartP1, NULL_ID_STR); - dartP2Id = doc->GetParametrUInt(domElement, AttrDartP2, NULL_ID_STR); - dartP3Id = doc->GetParametrUInt(domElement, AttrDartP3, NULL_ID_STR); + baseLineP1Id = VAbstractPattern::GetParametrUInt(domElement, AttrBaseLineP1, NULL_ID_STR); + baseLineP2Id = VAbstractPattern::GetParametrUInt(domElement, AttrBaseLineP2, NULL_ID_STR); + dartP1Id = VAbstractPattern::GetParametrUInt(domElement, AttrDartP1, NULL_ID_STR); + dartP2Id = VAbstractPattern::GetParametrUInt(domElement, AttrDartP2, NULL_ID_STR); + dartP3Id = VAbstractPattern::GetParametrUInt(domElement, AttrDartP3, NULL_ID_STR); } //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h index 8d8273c37..e099af296 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/tooldoublepoint/vtooltruedarts.h @@ -29,7 +29,6 @@ #ifndef VTOOLTRUEDARTS_H #define VTOOLTRUEDARTS_H -#include #include #include #include @@ -46,57 +45,45 @@ template class QSharedPointer; struct VToolTrueDartsInitData : VDrawToolInitData { - VToolTrueDartsInitData() - : VDrawToolInitData(), - p1id(NULL_ID), - p2id(NULL_ID), - baseLineP1Id(NULL_ID), - baseLineP2Id(NULL_ID), - dartP1Id(NULL_ID), - dartP2Id(NULL_ID), - dartP3Id(NULL_ID), - name1(), - mx1(labelMX), - my1(labelMY), - showLabel1(true), - name2(), - mx2(10), - my2(15), - showLabel2(true) - {} + VToolTrueDartsInitData() = default; - quint32 p1id; - quint32 p2id; - quint32 baseLineP1Id; - quint32 baseLineP2Id; - quint32 dartP1Id; - quint32 dartP2Id; - quint32 dartP3Id; - QString name1; - qreal mx1; - qreal my1; - bool showLabel1; - QString name2; - qreal mx2; - qreal my2; - bool showLabel2; + quint32 p1id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 p2id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 baseLineP1Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 baseLineP2Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 dartP1Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 dartP2Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 dartP3Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + QString name1{}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal mx1{labelMX}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal my1{labelMY}; // NOLINT(misc-non-private-member-variables-in-classes) + bool showLabel1{true}; // NOLINT(misc-non-private-member-variables-in-classes) + QString name2{}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal mx2{10}; // NOLINT(misc-non-private-member-variables-in-classes) + qreal my2{15}; // NOLINT(misc-non-private-member-variables-in-classes) + bool showLabel2{true}; // NOLINT(misc-non-private-member-variables-in-classes) }; class VToolTrueDarts : public VToolDoublePoint { Q_OBJECT // NOLINT + public: - static void FindPoint(const QPointF &baseLineP1, const QPointF &baseLineP2, const QPointF &dartP1, - const QPointF &dartP2, const QPointF &dartP3, QPointF &p1, QPointF &p2); - virtual void SetDialog() override; + ~VToolTrueDarts() override = default; + static void FindPoint(const QPointF &baseLineP1, const QPointF &baseLineP2, const QPointF &dartP1, + const QPointF &dartP2, const QPointF &dartP3, QPointF &p1, QPointF &p2); + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolTrueDarts *; static auto Create(VToolTrueDartsInitData initData) -> VToolTrueDarts *; static const QString ToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::TrueDarts)}; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::TrueDarts) + }; - virtual void ShowVisualization(bool show) override; + void ShowVisualization(bool show) override; auto BaseLineP1Name() const -> QString; auto BaseLineP2Name() const -> QString; @@ -105,14 +92,14 @@ public: auto DartP3Name() const -> QString; protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void ReadToolAttributes(const QDomElement &domElement) override; - virtual void SetVisualization() override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void ReadToolAttributes(const QDomElement &domElement) override; + void SetVisualization() override; private: Q_DISABLE_COPY_MOVE(VToolTrueDarts) // NOLINT @@ -122,7 +109,7 @@ private: quint32 dartP2Id; quint32 dartP3Id; - VToolTrueDarts(const VToolTrueDartsInitData &initData, QGraphicsItem *parent = nullptr); + explicit VToolTrueDarts(const VToolTrueDartsInitData &initData, QGraphicsItem *parent = nullptr); }; #endif // VTOOLTRUEDARTS_H diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.cpp b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.cpp index fd96be09d..bc4581c10 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.cpp +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.cpp @@ -63,7 +63,7 @@ void VToolCut::Disable(bool disable, const QString &namePP) } //--------------------------------------------------------------------------------------------------------------------- -void VToolCut::DetailsMode(bool mode) +void VToolCut::SetDetailsMode(bool mode) { detailsMode = mode; } diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.h index 3e06f8107..dd2a0bb4f 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcut.h @@ -29,27 +29,28 @@ #ifndef VTOOLCUT_H #define VTOOLCUT_H -#include #include #include #include #include #include + +#include "../../../../../visualization/visualization.h" +#include "../../../../vdatatool.h" #include "../../../toolcurve/vabstractspline.h" #include "../ifc/xml/vabstractpattern.h" -#include "../vtoolsinglepoint.h" #include "../vmisc/def.h" -#include "../../../../vdatatool.h" -#include "../../../../../visualization/visualization.h" +#include "../vtoolsinglepoint.h" class VFormula; struct VToolCutInitData : VToolSinglePointInitData { VToolCutInitData() - : VToolSinglePointInitData() - {} + : VToolSinglePointInitData() + { + } quint32 baseCurveId{NULL_ID}; QString formula{}; @@ -60,51 +61,54 @@ struct VToolCutInitData : VToolSinglePointInitData class VToolCut : public VToolSinglePoint { Q_OBJECT // NOLINT + public: - explicit VToolCut(const VToolCutInitData &initData, QGraphicsItem * parent = nullptr); + explicit VToolCut(const VToolCutInitData &initData, QGraphicsItem *parent = nullptr); virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::Cut)}; + enum + { + Type = UserType + static_cast(Tool::Cut) + }; auto GetFormulaLength() const -> VFormula; - void SetFormulaLength(const VFormula &value); + void SetFormulaLength(const VFormula &value); auto GetAliasSuffix1() const -> QString; - void SetAliasSuffix1(QString alias); + void SetAliasSuffix1(QString alias); auto GetAliasSuffix2() const -> QString; - void SetAliasSuffix2(QString alias); + void SetAliasSuffix2(QString alias); auto CurveName() const -> QString; public slots: - virtual void Disable(bool disable, const QString &namePP) override; - virtual void DetailsMode(bool mode) override; - virtual void FullUpdateFromFile() override; + virtual void Disable(bool disable, const QString &namePP) override; + virtual void SetDetailsMode(bool mode) override; + virtual void FullUpdateFromFile() override; + protected: /** @brief formula keep formula of length */ - QString formula; + QString formula; - quint32 baseCurveId; - bool detailsMode; + quint32 baseCurveId; + bool detailsMode; QString m_aliasSuffix1{}; QString m_aliasSuffix2{}; - void RefreshGeometry(); - virtual void RemoveReferens() override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void ReadToolAttributes(const QDomElement &domElement) override; + void RefreshGeometry(); + virtual void RemoveReferens() override; + virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + virtual void ReadToolAttributes(const QDomElement &domElement) override; - template - void ShowToolVisualization(bool show); + template void ShowToolVisualization(bool show); private: Q_DISABLE_COPY_MOVE(VToolCut) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -template -inline void VToolCut::ShowToolVisualization(bool show) +template inline void VToolCut::ShowToolVisualization(bool show) { if (show) { @@ -127,7 +131,7 @@ inline void VToolCut::ShowToolVisualization(bool show) } VDataTool *parent = VAbstractPattern::getTool(VAbstractTool::data.GetGObject(baseCurveId)->getIdTool()); - if (VAbstractSpline *parentCurve = qobject_cast(parent)) + if (auto *parentCurve = qobject_cast(parent)) { detailsMode ? parentCurve->ShowHandles(detailsMode) : parentCurve->ShowHandles(show); } diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutarc.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutarc.h index ee5a3a55a..c086fcbf5 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutarc.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutarc.h @@ -29,7 +29,7 @@ #ifndef VTOOLCUTARC_H #define VTOOLCUTARC_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutspline.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutspline.h index d845c6cf3..60631b7da 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutspline.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutspline.h @@ -29,7 +29,7 @@ #ifndef VTOOLCUTSPLINE_H #define VTOOLCUTSPLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.cpp b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.cpp index 576fe1b7d..8e9407322 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.cpp +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.cpp @@ -248,14 +248,14 @@ auto VToolCutSplinePath::CutSplinePath(qreal length, const QSharedPointerappend(VSplinePoint(splP1.P(), angle1, angle1F, spl1.GetStartAngle(), spl1.GetStartAngleFormula(), splP1.Length1(), splP1.Length1Formula(), spl1.GetC1Length(), spl1.GetC1LengthFormula())); const qreal angle2 = spl1.GetEndAngle()+180; - const QString angle2F = QString().number(angle2); + const QString angle2F = QString::number(angle2); const auto cutPoint = VSplinePoint(*p, spl1.GetEndAngle(), spl1.GetEndAngleFormula(), angle2, angle2F, spl1.GetC2Length(), spl1.GetC2LengthFormula(), spl2.GetC1Length(), @@ -270,7 +270,7 @@ auto VToolCutSplinePath::CutSplinePath(qreal length, const QSharedPointerappend(cutPoint); const qreal angle2 = spl2.GetEndAngle()+180; - const QString angle2F = QString().number(angle2); + const QString angle2F = QString::number(angle2); (*splPath2)->append(VSplinePoint(splP2.P(), spl2.GetEndAngle(), spl2.GetEndAngleFormula(), angle2, angle2F, spl2.GetC2Length(), spl2.GetC2LengthFormula(), diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.h index 843e5902d..06891964a 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.h @@ -29,7 +29,7 @@ #ifndef VTOOLCUTSPLINEPATH_H #define VTOOLCUTSPLINEPATH_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolalongline.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolalongline.h index 5785e5dd6..fe366f15e 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolalongline.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolalongline.h @@ -29,7 +29,7 @@ #ifndef VTOOLALONGLINE_H #define VTOOLALONGLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolbisector.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolbisector.h index 289f50ed8..c63efa12a 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolbisector.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolbisector.h @@ -29,7 +29,7 @@ #ifndef VTOOLBISECTOR_H #define VTOOLBISECTOR_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.h index 26587a8cd..566d4430b 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolcurveintersectaxis.h @@ -29,7 +29,7 @@ #ifndef VTOOLCURVEINTERSECTAXIS_H #define VTOOLCURVEINTERSECTAXIS_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolendline.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolendline.h index 6356988ce..7edb8d786 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolendline.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolendline.h @@ -29,7 +29,7 @@ #ifndef VTOOLENDLINE_H #define VTOOLENDLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolheight.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolheight.h index 792059270..180ba3d90 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolheight.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolheight.h @@ -29,7 +29,7 @@ #ifndef VTOOLHEIGHT_H #define VTOOLHEIGHT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollineintersectaxis.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollineintersectaxis.h index 0096ee294..023fbb8a9 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollineintersectaxis.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollineintersectaxis.h @@ -29,7 +29,7 @@ #ifndef VTOOLLINEINTERSECTAXIS_H #define VTOOLLINEINTERSECTAXIS_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollinepoint.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollinepoint.h index 2cee2468a..3e08ca142 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollinepoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoollinepoint.h @@ -29,7 +29,7 @@ #ifndef VTOOLLINEPOINT_H #define VTOOLLINEPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolnormal.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolnormal.h index 4785b0f1a..5429f3b0b 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolnormal.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolnormal.h @@ -29,7 +29,7 @@ #ifndef VTOOLNORMAL_H #define VTOOLNORMAL_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolshoulderpoint.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolshoulderpoint.h index af8b4f244..4c455d642 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolshoulderpoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/toollinepoint/vtoolshoulderpoint.h @@ -29,7 +29,7 @@ #ifndef VTOOLSHOULDERPOINT_H #define VTOOLSHOULDERPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h index 212d0ffa3..8eb383c39 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolbasepoint.h @@ -29,7 +29,7 @@ #ifndef VTOOLBASEPOINT_H #define VTOOLBASEPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoollineintersect.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoollineintersect.h index cac3dbbdf..9d60ab4e3 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoollineintersect.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoollineintersect.h @@ -29,7 +29,7 @@ #ifndef VTOOLLINEINTERSECT_H #define VTOOLLINEINTERSECT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.h index 1b64b74f0..e2cac7432 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromarcandtangent.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTFROMARCANDTANGENT_H #define VTOOLPOINTFROMARCANDTANGENT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromcircleandtangent.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromcircleandtangent.h index b1bc552a8..6123bdb6b 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromcircleandtangent.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointfromcircleandtangent.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTFROMCIRCLEANDTANGENT_H #define VTOOLPOINTFROMCIRCLEANDTANGENT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofcontact.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofcontact.h index 92308978b..31e6cbb99 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofcontact.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofcontact.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTOFCONTACT_H #define VTOOLPOINTOFCONTACT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersection.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersection.h index 287c6ee80..e8bc245f9 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersection.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersection.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTOFINTERSECTION_H #define VTOOLPOINTOFINTERSECTION_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.h index 7ea2e0eb8..ff88127b7 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectionarcs.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTOFINTERSECTIONARCS_H #define VTOOLPOINTOFINTERSECTIONARCS_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncircles.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncircles.h index aa501936e..ccd01201f 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncircles.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncircles.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTOFINTERSECTIONCIRCLES_H #define VTOOLPOINTOFINTERSECTIONCIRCLES_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.h index 7994a67aa..400768cbf 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolpointofintersectioncurves.h @@ -29,7 +29,7 @@ #ifndef VTOOLPOINTOFINTERSECTIONCURVES_H #define VTOOLPOINTOFINTERSECTIONCURVES_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h index af382d4c0..c09fa9ee3 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtoolsinglepoint.h @@ -29,7 +29,7 @@ #ifndef VTOOLSINGLEPOINT_H #define VTOOLSINGLEPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.cpp b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.cpp index 65205a704..c96e5d951 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.cpp +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.cpp @@ -31,28 +31,27 @@ #include #include #include -#include #include -#include "../../../../dialogs/tools/dialogtriangle.h" #include "../../../../dialogs/tools/dialogtool.h" -#include "../../../../visualization/visualization.h" +#include "../../../../dialogs/tools/dialogtriangle.h" #include "../../../../visualization/line/vistooltriangle.h" +#include "../../../../visualization/visualization.h" +#include "../../../vabstracttool.h" +#include "../../vdrawtool.h" #include "../ifc/exception/vexception.h" #include "../ifc/exception/vexceptionobjecterror.h" #include "../ifc/ifcdef.h" #include "../vgeometry/vgobject.h" #include "../vgeometry/vpointf.h" +#include "../vmisc/compatibility.h" #include "../vpatterndb/vcontainer.h" #include "../vwidgets/vmaingraphicsscene.h" -#include "../../../vabstracttool.h" -#include "../../vdrawtool.h" #include "vtoolsinglepoint.h" -#include "../vmisc/compatibility.h" template class QSharedPointer; -const QString VToolTriangle::ToolType = QStringLiteral("triangle"); +const QString VToolTriangle::ToolType = QStringLiteral("triangle"); // NOLINT //--------------------------------------------------------------------------------------------------------------------- /** @@ -61,11 +60,11 @@ const QString VToolTriangle::ToolType = QStringLiteral("triangle"); * @param parent parent object. */ VToolTriangle::VToolTriangle(const VToolTriangleInitData &initData, QGraphicsItem *parent) - :VToolSinglePoint(initData.doc, initData.data, initData.id, initData.notes, parent), - axisP1Id(initData.axisP1Id), - axisP2Id(initData.axisP2Id), - firstPointId(initData.firstPointId), - secondPointId(initData.secondPointId) + : VToolSinglePoint(initData.doc, initData.data, initData.id, initData.notes, parent), + axisP1Id(initData.axisP1Id), + axisP2Id(initData.axisP2Id), + firstPointId(initData.firstPointId), + secondPointId(initData.secondPointId) { ToolCreation(initData.typeCreation); } @@ -117,7 +116,7 @@ auto VToolTriangle::Create(const QPointer &dialog, VMainGraphicsScen initData.typeCreation = Source::FromGui; initData.notes = dialogTool->GetNotes(); - VToolTriangle* point = Create(initData); + VToolTriangle *point = Create(initData); if (point != nullptr) { point->m_dialog = dialog; @@ -144,13 +143,14 @@ auto VToolTriangle::Create(VToolTriangleInitData initData) -> VToolTriangle * if (not success) { - const QString errorMsg = tr("Error calculating point '%1'. Point of intersection cannot be found") - .arg(initData.name); - VAbstractApplication::VApp()->IsPedantic() ? throw VExceptionObjectError(errorMsg) : - qWarning() << VAbstractValApplication::warningMessageSignature + errorMsg; + const QString errorMsg = + tr("Error calculating point '%1'. Point of intersection cannot be found").arg(initData.name); + VAbstractApplication::VApp()->IsPedantic() + ? throw VExceptionObjectError(errorMsg) + : qWarning() << VAbstractValApplication::warningMessageSignature + errorMsg; } - VPointF *p = new VPointF(point, initData.name, initData.mx, initData.my); + auto *p = new VPointF(point, initData.name, initData.mx, initData.my); p->SetShowLabel(initData.showLabel); if (initData.typeCreation == Source::FromGui) @@ -169,7 +169,7 @@ auto VToolTriangle::Create(VToolTriangleInitData initData) -> VToolTriangle * if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::Triangle, initData.doc); - VToolTriangle *point = new VToolTriangle(initData); + auto *point = new VToolTriangle(initData); initData.scene->addItem(point); InitToolConnections(initData.scene, point); VAbstractPattern::AddTool(initData.id, point); @@ -207,8 +207,8 @@ auto VToolTriangle::FindPoint(const QPointF &axisP1, const QPointF &axisP2, cons { return false; } - if (VFuzzyComparePossibleNulls(axis.angle(), hypotenuse.angle()) - || VFuzzyComparePossibleNulls(qAbs(axis.angle() - hypotenuse.angle()), 180)) + if (VFuzzyComparePossibleNulls(axis.angle(), hypotenuse.angle()) || + VFuzzyComparePossibleNulls(qAbs(axis.angle() - hypotenuse.angle()), 180)) { return false; } @@ -221,12 +221,12 @@ auto VToolTriangle::FindPoint(const QPointF &axisP1, const QPointF &axisP2, cons line.setLength(step); qint64 c = qFloor(hypotenuse.length()); - while (1) + while (true) { - line.setLength(line.length()+step); + line.setLength(line.length() + step); qint64 a = qFloor(QLineF(line.p2(), firstPoint).length()); qint64 b = qFloor(QLineF(line.p2(), secondPoint).length()); - if (c*c <= (a*a + b*b)) + if (c * c <= (a * a + b * b)) { *intersectionPoint = line.p2(); return true; @@ -304,7 +304,7 @@ void VToolTriangle::SaveDialog(QDomElement &domElement, QList &oldDepen const QString notes = dialogTool->GetNotes(); doc->SetAttributeOrRemoveIf(domElement, AttrNotes, notes, - [](const QString ¬es) noexcept {return notes.isEmpty();}); + [](const QString ¬es) noexcept { return notes.isEmpty(); }); } //--------------------------------------------------------------------------------------------------------------------- @@ -324,10 +324,10 @@ void VToolTriangle::ReadToolAttributes(const QDomElement &domElement) { VToolSinglePoint::ReadToolAttributes(domElement); - axisP1Id = doc->GetParametrUInt(domElement, AttrAxisP1, NULL_ID_STR); - axisP2Id = doc->GetParametrUInt(domElement, AttrAxisP2, NULL_ID_STR); - firstPointId = doc->GetParametrUInt(domElement, AttrFirstPoint, NULL_ID_STR); - secondPointId = doc->GetParametrUInt(domElement, AttrSecondPoint, NULL_ID_STR); + axisP1Id = VAbstractPattern::GetParametrUInt(domElement, AttrAxisP1, NULL_ID_STR); + axisP2Id = VAbstractPattern::GetParametrUInt(domElement, AttrAxisP2, NULL_ID_STR); + firstPointId = VAbstractPattern::GetParametrUInt(domElement, AttrFirstPoint, NULL_ID_STR); + secondPointId = VAbstractPattern::GetParametrUInt(domElement, AttrSecondPoint, NULL_ID_STR); } //--------------------------------------------------------------------------------------------------------------------- @@ -335,7 +335,7 @@ void VToolTriangle::SetVisualization() { if (not vis.isNull()) { - auto * visual = qobject_cast(vis); + auto *visual = qobject_cast(vis); SCASSERT(visual != nullptr) visual->SetObject1Id(axisP1Id); @@ -354,10 +354,10 @@ void VToolTriangle::ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint { ContextMenu(event, id); } - catch(const VExceptionToolWasDeleted &e) + catch (const VExceptionToolWasDeleted &e) { Q_UNUSED(e) - return;//Leave this method immediately!!! + return; // Leave this method immediately!!! } } diff --git a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.h b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.h index 40b2b96a7..608486443 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/toolsinglepoint/vtooltriangle.h @@ -29,7 +29,6 @@ #ifndef VTOOLTRIANGLE_H #define VTOOLTRIANGLE_H -#include #include #include #include @@ -46,18 +45,12 @@ template class QSharedPointer; struct VToolTriangleInitData : VToolSinglePointInitData { - VToolTriangleInitData() - : VToolSinglePointInitData(), - axisP1Id(NULL_ID), - axisP2Id(NULL_ID), - firstPointId(NULL_ID), - secondPointId(NULL_ID) - {} + VToolTriangleInitData() = default; - quint32 axisP1Id; - quint32 axisP2Id; - quint32 firstPointId; - quint32 secondPointId; + quint32 axisP1Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 axisP2Id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 firstPointId{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 secondPointId{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) }; /** @@ -67,16 +60,21 @@ struct VToolTriangleInitData : VToolSinglePointInitData class VToolTriangle : public VToolSinglePoint { Q_OBJECT // NOLINT + public: - virtual void SetDialog() override; + ~VToolTriangle() override = default; + void SetDialog() override; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolTriangle *; static auto Create(VToolTriangleInitData initData) -> VToolTriangle *; static auto FindPoint(const QPointF &axisP1, const QPointF &axisP2, const QPointF &firstPoint, const QPointF &secondPoint, QPointF *intersectionPoint) -> bool; static const QString ToolType; - virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Tool::Triangle)}; + auto type() const -> int override { return Type; } + enum + { + Type = UserType + static_cast(Tool::Triangle) + }; auto AxisP1Name() const -> QString; auto AxisP2Name() const -> QString; @@ -84,42 +82,44 @@ public: auto SecondPointName() const -> QString; auto GetAxisP1Id() const -> quint32; - void SetAxisP1Id(const quint32 &value); + void SetAxisP1Id(const quint32 &value); auto GetAxisP2Id() const -> quint32; - void SetAxisP2Id(const quint32 &value); + void SetAxisP2Id(const quint32 &value); auto GetFirstPointId() const -> quint32; - void SetFirstPointId(const quint32 &value); + void SetFirstPointId(const quint32 &value); auto GetSecondPointId() const -> quint32; - void SetSecondPointId(const quint32 &value); + void SetSecondPointId(const quint32 &value); + + void ShowVisualization(bool show) override; - virtual void ShowVisualization(bool show) override; protected: - virtual void RemoveReferens() override; - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies) override; - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; - virtual void ReadToolAttributes(const QDomElement &domElement) override; - virtual void SetVisualization() override; + void RemoveReferens() override; + void SaveDialog(QDomElement &domElement, QList &oldDependencies, QList &newDependencies) override; + void SaveOptions(QDomElement &tag, QSharedPointer &obj) override; + void ReadToolAttributes(const QDomElement &domElement) override; + void SetVisualization() override; + private slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) override; + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) override; + private: Q_DISABLE_COPY_MOVE(VToolTriangle) // NOLINT /** @brief axisP1Id id first axis point. */ - quint32 axisP1Id; + quint32 axisP1Id; /** @brief axisP2Id id second axis point. */ - quint32 axisP2Id; + quint32 axisP2Id; /** @brief firstPointId id first triangle point, what lies on the hypotenuse. */ - quint32 firstPointId; + quint32 firstPointId; /** @brief secondPointId id second triangle point, what lies on the hypotenuse. */ - quint32 secondPointId; + quint32 secondPointId; - VToolTriangle(const VToolTriangleInitData &initData, QGraphicsItem *parent = nullptr); + explicit VToolTriangle(const VToolTriangleInitData &initData, QGraphicsItem *parent = nullptr); }; #endif // VTOOLTRIANGLE_H diff --git a/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h b/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h index c9268df3b..456d9f8f6 100644 --- a/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h +++ b/src/libs/vtools/tools/drawTools/toolpoint/vabstractpoint.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTPOINT_H #define VABSTRACTPOINT_H -#include #include #include #include @@ -39,45 +38,40 @@ #include #include -#include "../vdrawtool.h" -#include "../ifc/ifcdef.h" -#include "../vgeometry/vpointf.h" -#include "../vmisc/vabstractapplication.h" -#include "../vpatterndb/vcontainer.h" -#include "../vmisc/def.h" -#include "../vwidgets/vmaingraphicsscene.h" #include "../../../visualization/visualization.h" #include "../../vabstracttool.h" +#include "../vdrawtool.h" +#include "../vmisc/def.h" +#include "../vpatterndb/vcontainer.h" +#include "../vwidgets/vmaingraphicsscene.h" -class VAbstractPoint: public VDrawTool +class VAbstractPoint : public VDrawTool { Q_OBJECT // NOLINT + public: VAbstractPoint(VAbstractPattern *doc, VContainer *data, quint32 id, const QString ¬es); virtual ~VAbstractPoint() = default; virtual auto getTagName() const -> QString override; - template - void ShowToolVisualization(bool show); + template void ShowToolVisualization(bool show); public slots: virtual void ShowTool(quint32 id, bool enable) override; - void DeleteFromLabel(); + void DeleteFromLabel(); protected: void SetPointName(quint32 id, const QString &name); - template - static void InitToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitToolConnections(VMainGraphicsScene *scene, T *tool); private: Q_DISABLE_COPY_MOVE(VAbstractPoint) // NOLINT }; //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractPoint::ShowToolVisualization(bool show) +template void VAbstractPoint::ShowToolVisualization(bool show) { if (show) { @@ -101,8 +95,7 @@ void VAbstractPoint::ShowToolVisualization(bool show) } //--------------------------------------------------------------------------------------------------------------------- -template -void VAbstractPoint::InitToolConnections(VMainGraphicsScene *scene, T *tool) +template void VAbstractPoint::InitToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) diff --git a/src/libs/vtools/tools/drawTools/vdrawtool.cpp b/src/libs/vtools/tools/drawTools/vdrawtool.cpp index 207e941d2..d2cb47d22 100644 --- a/src/libs/vtools/tools/drawTools/vdrawtool.cpp +++ b/src/libs/vtools/tools/drawTools/vdrawtool.cpp @@ -232,7 +232,7 @@ void VDrawTool::EnableToolMove(bool move) } //--------------------------------------------------------------------------------------------------------------------- -void VDrawTool::DetailsMode(bool mode) +void VDrawTool::SetDetailsMode(bool mode) { Q_UNUSED(mode) // Do nothing. diff --git a/src/libs/vtools/tools/drawTools/vdrawtool.h b/src/libs/vtools/tools/drawTools/vdrawtool.h index 56dbe6e2e..55eba9471 100644 --- a/src/libs/vtools/tools/drawTools/vdrawtool.h +++ b/src/libs/vtools/tools/drawTools/vdrawtool.h @@ -29,8 +29,8 @@ #ifndef VDRAWTOOL_H #define VDRAWTOOL_H -#include #include +#include #include #include #include @@ -41,26 +41,27 @@ #include #include #include -#include + #include "../ifc/exception/vexceptionbadid.h" -#include "../vinteractivetool.h" -#include "../vmisc/vabstractapplication.h" -#include "../vmisc/def.h" -#include "../vwidgets/vmaingraphicsscene.h" -#include "../vwidgets/vmaingraphicsview.h" -#include "../vwidgets/vabstractmainwindow.h" +#include "../toolsdef.h" #include "../vdatatool.h" #include "../vgeometry/vpointf.h" +#include "../vinteractivetool.h" +#include "../vmisc/def.h" +#include "../vmisc/vabstractapplication.h" #include "../vtools/undocommands/undogroup.h" -#include "../toolsdef.h" +#include "../vwidgets/vabstractmainwindow.h" +#include "../vwidgets/vmaingraphicsscene.h" +#include "../vwidgets/vmaingraphicsview.h" struct VDrawToolInitData : VAbstractToolInitData { VDrawToolInitData() - : VAbstractToolInitData(), + : VAbstractToolInitData(), notes() - {} + { + } QString notes; }; @@ -71,8 +72,8 @@ struct VDrawToolInitData : VAbstractToolInitData class VDrawTool : public VInteractiveTool { Q_OBJECT // NOLINT -public: +public: VDrawTool(VAbstractPattern *doc, VContainer *data, quint32 id, const QString ¬es, QObject *parent = nullptr); virtual ~VDrawTool() = default; @@ -90,60 +91,66 @@ signals: public slots: virtual void ShowTool(quint32 id, bool enable); virtual void ChangedActivDraw(const QString &newName); - void ChangedNameDraw(const QString &oldName, const QString &newName); + void ChangedNameDraw(const QString &oldName, const QString &newName); virtual void EnableToolMove(bool move); - virtual void Disable(bool disable, const QString &namePP)=0; - virtual void DetailsMode(bool mode); + virtual void Disable(bool disable, const QString &namePP) = 0; + virtual void SetDetailsMode(bool mode); protected slots: - virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID)=0; -protected: + virtual void ShowContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 id = NULL_ID) = 0; - enum class RemoveOption : bool {Disable = false, Enable = true}; - enum class Referens : bool {Follow = true, Ignore = false}; +protected: + enum class RemoveOption : bool + { + Disable = false, + Enable = true + }; + enum class Referens : bool + { + Follow = true, + Ignore = false + }; /** @brief nameActivDraw name of tool's pattern peace. */ - QString nameActivDraw; + QString nameActivDraw; /** @brief typeLine line type. */ - QString m_lineType; + QString m_lineType; - QString m_notes{}; + QString m_notes{}; void AddToCalculation(const QDomElement &domElement); void AddDependence(QList &list, quint32 objectId) const; /** @brief SaveDialog save options into file after change in dialog. */ - virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, - QList &newDependencies)=0; - virtual void SaveDialogChange(const QString &undoText = QString()) final; - virtual void ApplyToolOptions(const QList &oldDependencies, const QList &newDependencies, - const QDomElement &oldDomElement, const QDomElement &newDomElement); - virtual void AddToFile() override; - void SaveOption(QSharedPointer &obj); - virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj); + virtual void SaveDialog(QDomElement &domElement, QList &oldDependencies, + QList &newDependencies) = 0; + virtual void SaveDialogChange(const QString &undoText = QString()) final; + virtual void ApplyToolOptions(const QList &oldDependencies, const QList &newDependencies, + const QDomElement &oldDomElement, const QDomElement &newDomElement); + virtual void AddToFile() override; + void SaveOption(QSharedPointer &obj); + virtual void SaveOptions(QDomElement &tag, QSharedPointer &obj); virtual auto MakeToolTip() const -> QString; - virtual void UpdateNamePosition(quint32 id, const QPointF &pos); + virtual void UpdateNamePosition(quint32 id, const QPointF &pos); auto CorrectDisable(bool disable, const QString &namePP) const -> bool; - void ReadAttributes(); + void ReadAttributes(); virtual void ReadToolAttributes(const QDomElement &domElement); virtual void ChangeLabelVisibility(quint32 id, bool visible); template void ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemId = NULL_ID, - const RemoveOption &showRemove = RemoveOption::Enable, - const Referens &ref = Referens::Follow); + const RemoveOption &showRemove = RemoveOption::Enable, const Referens &ref = Referens::Follow); - template - void ShowItem(Item *item, quint32 id, bool enable); + template void ShowItem(Item *item, quint32 id, bool enable); template auto ObjectName(quint32 id) const -> QString; template auto ObjectAliasSuffix(quint32 id) const -> QString; - template - static void InitDrawToolConnections(VMainGraphicsScene *scene, T *tool); + template static void InitDrawToolConnections(VMainGraphicsScene *scene, T *tool); + private: Q_DISABLE_COPY_MOVE(VDrawTool) // NOLINT }; @@ -167,8 +174,8 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI return; } - GOType itemType = GOType::Unknown; - if(itemId != NULL_ID) + GOType itemType = GOType::Unknown; + if (itemId != NULL_ID) { try { @@ -182,21 +189,21 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI qCDebug(vTool, "Creating tool context menu."); QMenu menu; - QAction *actionOption = menu.addAction(QIcon::fromTheme(QStringLiteral("preferences-other")), - VDrawTool::tr("Options")); + QAction *actionOption = + menu.addAction(QIcon::fromTheme(QStringLiteral("preferences-other")), VDrawTool::tr("Options")); // add the menu "add to group" to the context menu - QMap groupsNotContainingItem = doc->GetGroupsContainingItem(this->getId(), itemId, false); - QActionGroup* actionsAddToGroup = new QActionGroup(this); - if(not groupsNotContainingItem.empty()) + QMap groupsNotContainingItem = doc->GetGroupsContainingItem(this->getId(), itemId, false); + QActionGroup *actionsAddToGroup = new QActionGroup(this); + if (not groupsNotContainingItem.empty()) { - QMenu *menuAddToGroup = menu.addMenu(QIcon::fromTheme(QStringLiteral("list-add")), - VDrawTool::tr("Add to group")); + QMenu *menuAddToGroup = + menu.addMenu(QIcon::fromTheme(QStringLiteral("list-add")), VDrawTool::tr("Add to group")); QStringList list = QStringList(groupsNotContainingItem.values()); list.sort(Qt::CaseInsensitive); - for(int i=0; iaddAction(list[i]); actionsAddToGroup->addAction(actionAddToGroup); @@ -210,17 +217,17 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI } // add the menu "remove from group" to the context menu - QMap groupsContainingItem = doc->GetGroupsContainingItem(this->getId(), itemId, true); - QActionGroup* actionsRemoveFromGroup = new QActionGroup(this); - if(not groupsContainingItem.empty()) + QMap groupsContainingItem = doc->GetGroupsContainingItem(this->getId(), itemId, true); + QActionGroup *actionsRemoveFromGroup = new QActionGroup(this); + if (not groupsContainingItem.empty()) { - QMenu *menuRemoveFromGroup = menu.addMenu(QIcon::fromTheme(QStringLiteral("list-remove")), - VDrawTool::tr("Remove from group")); + QMenu *menuRemoveFromGroup = + menu.addMenu(QIcon::fromTheme(QStringLiteral("list-remove")), VDrawTool::tr("Remove from group")); QStringList list = QStringList(groupsContainingItem.values()); list.sort(Qt::CaseInsensitive); - for(int i=0; iaddAction(list[i]); actionsRemoveFromGroup->addAction(actionRemoveFromGroup); @@ -239,7 +246,7 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI } else { - actionShowLabel->setVisible(false); + actionShowLabel->setVisible(false); } QAction *actionRestoreLabelPosition = menu.addAction(VDrawTool::tr("Restore label position")); @@ -275,7 +282,7 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI QAction *selectedAction = menu.exec(event->screenPos()); - if(selectedAction == nullptr) + if (selectedAction == nullptr) { return; } @@ -288,7 +295,7 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI connect(m_dialog.data(), &DialogTool::DialogClosed, this, &VDrawTool::FullUpdateFromGuiOk); connect(m_dialog.data(), &DialogTool::DialogApplied, this, &VDrawTool::FullUpdateFromGuiApply); - + this->SetDialog(); m_dialog->show(); @@ -297,7 +304,7 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI { qCDebug(vTool, "Deleting tool."); DeleteToolWithConfirm(); // do not catch exception here - return; //Leave this method immediately after call!!! + return; // Leave this method immediately after call!!! } else if (selectedAction == actionShowLabel) { @@ -313,12 +320,12 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI QDomElement item = doc->AddItemToGroup(this->getId(), itemId, groupId); VMainGraphicsScene *scene = - qobject_cast(VAbstractValApplication::VApp()->getCurrentScene()); + qobject_cast(VAbstractValApplication::VApp()->getCurrentScene()); SCASSERT(scene != nullptr) scene->clearSelection(); VAbstractMainWindow *window = - qobject_cast(VAbstractValApplication::VApp()->getMainWindow()); + qobject_cast(VAbstractValApplication::VApp()->getMainWindow()); SCASSERT(window != nullptr) { AddItemToGroup *addItemToGroup = new AddItemToGroup(item, doc, groupId); @@ -333,7 +340,7 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI QDomElement item = doc->RemoveItemFromGroup(this->getId(), itemId, groupId); VAbstractMainWindow *window = - qobject_cast(VAbstractValApplication::VApp()->getMainWindow()); + qobject_cast(VAbstractValApplication::VApp()->getMainWindow()); SCASSERT(window != nullptr) { RemoveItemFromGroup *removeItemFromGroup = new RemoveItemFromGroup(item, doc, groupId); @@ -376,9 +383,8 @@ auto VDrawTool::ObjectName(quint32 id) const -> QString catch (const VExceptionBadId &e) { qCDebug(vTool, "Error! Couldn't get object name by id = %s. %s %s", qUtf8Printable(QString().setNum(id)), - qUtf8Printable(e.ErrorMessage()), - qUtf8Printable(e.DetailedInformation())); - return QString();// Return empty string for property browser + qUtf8Printable(e.ErrorMessage()), qUtf8Printable(e.DetailedInformation())); + return QString(); // Return empty string for property browser } } @@ -396,16 +402,15 @@ auto VDrawTool::ObjectAliasSuffix(quint32 id) const -> QString } catch (const VExceptionBadId &e) { - qCDebug(vTool, "Error! Couldn't get object alias suffix by id = %s. %s %s", qUtf8Printable(QString().setNum(id)), - qUtf8Printable(e.ErrorMessage()), + qCDebug(vTool, "Error! Couldn't get object alias suffix by id = %s. %s %s", + qUtf8Printable(QString().setNum(id)), qUtf8Printable(e.ErrorMessage()), qUtf8Printable(e.DetailedInformation())); - return QString();// Return empty string for property browser + return QString(); // Return empty string for property browser } } //--------------------------------------------------------------------------------------------------------------------- -template -void VDrawTool::InitDrawToolConnections(VMainGraphicsScene *scene, T *tool) +template void VDrawTool::InitDrawToolConnections(VMainGraphicsScene *scene, T *tool) { SCASSERT(scene != nullptr) SCASSERT(tool != nullptr) @@ -414,7 +419,7 @@ void VDrawTool::InitDrawToolConnections(VMainGraphicsScene *scene, T *tool) QObject::connect(tool, &T::ChangedToolSelection, scene, &VMainGraphicsScene::SelectedItem); QObject::connect(scene, &VMainGraphicsScene::DisableItem, tool, &T::Disable); QObject::connect(scene, &VMainGraphicsScene::EnableToolMove, tool, &T::EnableToolMove); - QObject::connect(scene, &VMainGraphicsScene::CurveDetailsMode, tool, &T::DetailsMode); + QObject::connect(scene, &VMainGraphicsScene::CurveDetailsMode, tool, &T::SetDetailsMode); QObject::connect(scene, &VMainGraphicsScene::ItemSelection, tool, &T::ToolSelectionType); } diff --git a/src/libs/vtools/tools/drawTools/vtoolline.h b/src/libs/vtools/tools/drawTools/vtoolline.h index d2391dad7..235bf5f97 100644 --- a/src/libs/vtools/tools/drawTools/vtoolline.h +++ b/src/libs/vtools/tools/drawTools/vtoolline.h @@ -29,7 +29,7 @@ #ifndef VTOOLLINE_H #define VTOOLLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/nodeDetails/vabstractnode.h b/src/libs/vtools/tools/nodeDetails/vabstractnode.h index 5c9ed2257..3c051edc4 100644 --- a/src/libs/vtools/tools/nodeDetails/vabstractnode.h +++ b/src/libs/vtools/tools/nodeDetails/vabstractnode.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTNODE_H #define VABSTRACTNODE_H -#include #include #include #include @@ -39,16 +38,21 @@ #include "../vabstracttool.h" -enum class ParentType : bool {Scene, Item}; +enum class ParentType : bool +{ + Scene, + Item +}; struct VAbstractNodeInitData : VAbstractToolInitData { VAbstractNodeInitData() - : VAbstractToolInitData(), - idObject(NULL_ID), - drawName(), - idTool(NULL_ID) - {} + : VAbstractToolInitData(), + idObject(NULL_ID), + drawName(), + idTool(NULL_ID) + { + } quint32 idObject; QString drawName; @@ -61,21 +65,23 @@ struct VAbstractNodeInitData : VAbstractToolInitData class VAbstractNode : public VAbstractTool { Q_OBJECT // NOLINT + public: VAbstractNode(VAbstractPattern *doc, VContainer *data, const quint32 &id, const quint32 &idNode, const QString &drawName = QString(), const quint32 &idTool = 0, QObject *parent = nullptr); - virtual ~VAbstractNode() = default; + virtual ~VAbstractNode() override = default; + static const QString AttrIdTool; - virtual void ShowVisualization(bool show) override; - virtual void incrementReferens() override; - virtual void decrementReferens() override; + void ShowVisualization(bool show) override; + void incrementReferens() override; + void decrementReferens() override; auto GetParentType() const -> ParentType; - void SetParentType(const ParentType &value); + void SetParentType(const ParentType &value); auto GetIdTool() const -> quint32; - virtual void GroupVisibility(quint32 object, bool visible) override; + void GroupVisibility(quint32 object, bool visible) override; auto IsExluded() const -> bool; void SetExluded(bool exluded); @@ -84,21 +90,22 @@ protected: ParentType parentType; /** @brief idNodenode id. */ - quint32 idNode; + quint32 idNode; /** @brief idTool id tool. */ - quint32 idTool; + quint32 idTool; - QString m_drawName; + QString m_drawName; - bool m_exluded; + bool m_exluded; - void AddToModeling(const QDomElement &domElement); - virtual void ToolCreation(const Source &typeCreation) override; - virtual void SetVisualization() override {} + void AddToModeling(const QDomElement &domElement); + void ToolCreation(const Source &typeCreation) override; + void SetVisualization() override {} + + virtual void ShowNode() = 0; + virtual void HideNode() = 0; - virtual void ShowNode()=0; - virtual void HideNode()=0; private: Q_DISABLE_COPY_MOVE(VAbstractNode) // NOLINT }; diff --git a/src/libs/vtools/tools/nodeDetails/vnodearc.h b/src/libs/vtools/tools/nodeDetails/vnodearc.h index f4775a73a..54c4ab715 100644 --- a/src/libs/vtools/tools/nodeDetails/vnodearc.h +++ b/src/libs/vtools/tools/nodeDetails/vnodearc.h @@ -29,7 +29,7 @@ #ifndef VNODEARC_H #define VNODEARC_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/nodeDetails/vnodeellipticalarc.h b/src/libs/vtools/tools/nodeDetails/vnodeellipticalarc.h index e86f3ca44..af8669e48 100644 --- a/src/libs/vtools/tools/nodeDetails/vnodeellipticalarc.h +++ b/src/libs/vtools/tools/nodeDetails/vnodeellipticalarc.h @@ -29,7 +29,7 @@ #ifndef VNODEELLIPTICALARC_H #define VNODEELLIPTICALARC_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/nodeDetails/vnodepoint.h b/src/libs/vtools/tools/nodeDetails/vnodepoint.h index 4189095ba..8192a088d 100644 --- a/src/libs/vtools/tools/nodeDetails/vnodepoint.h +++ b/src/libs/vtools/tools/nodeDetails/vnodepoint.h @@ -29,7 +29,7 @@ #ifndef VNODEPOINT_H #define VNODEPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/nodeDetails/vnodespline.h b/src/libs/vtools/tools/nodeDetails/vnodespline.h index f020b3595..9e269c388 100644 --- a/src/libs/vtools/tools/nodeDetails/vnodespline.h +++ b/src/libs/vtools/tools/nodeDetails/vnodespline.h @@ -29,7 +29,7 @@ #ifndef VNODESPLINE_H #define VNODESPLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/nodeDetails/vnodesplinepath.h b/src/libs/vtools/tools/nodeDetails/vnodesplinepath.h index dac2f4e42..b16cf4de4 100644 --- a/src/libs/vtools/tools/nodeDetails/vnodesplinepath.h +++ b/src/libs/vtools/tools/nodeDetails/vnodesplinepath.h @@ -29,7 +29,7 @@ #ifndef VNODESPLINEPATH_H #define VNODESPLINEPATH_H -#include + #include #include #include diff --git a/src/libs/vtools/tools/vabstracttool.h b/src/libs/vtools/tools/vabstracttool.h index 0bc3bd256..9f349c528 100644 --- a/src/libs/vtools/tools/vabstracttool.h +++ b/src/libs/vtools/tools/vabstracttool.h @@ -29,7 +29,6 @@ #ifndef VABSTRACTTOOL_H #define VABSTRACTTOOL_H -#include #include #include #include @@ -39,10 +38,8 @@ #include #include "../ifc/xml/vabstractpattern.h" -#include "../ifc/xml/vabstractpattern.h" -#include "../vtools/visualization/visualization.h" -#include "../vmisc/vabstractapplication.h" #include "../vmisc/def.h" +#include "../vtools/visualization/visualization.h" #include "../vwidgets/vmaingraphicsscene.h" #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" @@ -59,23 +56,24 @@ QT_WARNING_DISABLE_CLANG("-Wdeprecated") struct VAbstractToolInitData { VAbstractToolInitData() - : id(NULL_ID), - scene(nullptr), - doc(nullptr), - data(nullptr), - parse(Document::FullParse), - typeCreation(Source::FromFile) - {} + : id(NULL_ID), + scene(nullptr), + doc(nullptr), + data(nullptr), + parse(Document::FullParse), + typeCreation(Source::FromFile) + { + } - virtual ~VAbstractToolInitData()=default; + virtual ~VAbstractToolInitData() = default; /** @brief id tool id, 0 if tool doesn't exist yet.*/ - quint32 id; + quint32 id; VMainGraphicsScene *scene; - VAbstractPattern *doc; - VContainer *data; - Document parse; - Source typeCreation; + VAbstractPattern *doc; + VContainer *data; + Document parse; + Source typeCreation; }; QT_WARNING_POP @@ -83,9 +81,10 @@ QT_WARNING_POP /** * @brief The VAbstractTool abstract class for all tools. */ -class VAbstractTool: public VDataTool +class VAbstractTool : public VDataTool { Q_OBJECT // NOLINT + public: VAbstractTool(VAbstractPattern *doc, VContainer *data, quint32 id, QObject *parent = nullptr); virtual ~VAbstractTool() override; @@ -110,72 +109,72 @@ public: auto PointsList() const -> QMap; virtual auto getTagName() const -> QString = 0; - virtual void ShowVisualization(bool show) =0; - virtual void ChangeLabelPosition(quint32 id, const QPointF &pos); - virtual void SetLabelVisible(quint32 id, bool visible); + virtual void ShowVisualization(bool show) = 0; + virtual void ChangeLabelPosition(quint32 id, const QPointF &pos); + virtual void SetLabelVisible(quint32 id, bool visible); public slots: /** * @brief FullUpdateFromFile update tool data form file. */ - virtual void FullUpdateFromFile()=0; - virtual void AllowHover(bool enabled)=0; - virtual void AllowSelecting(bool enabled)=0; - virtual void ToolSelectionType(const SelectionType &type); + virtual void FullUpdateFromFile() = 0; + virtual void AllowHover(bool enabled) = 0; + virtual void AllowSelecting(bool enabled) = 0; + virtual void ToolSelectionType(const SelectionType &type); signals: /** * @brief toolhaveChange emit if tool create change that need save. */ - void toolhaveChange(); + void toolhaveChange(); /** * @brief ChoosedTool emit if object was clicked. * @param id object id in container. * @param type type of scene object. */ - void ChoosedTool(quint32 id, SceneObject type); + void ChoosedTool(quint32 id, SceneObject type); /** * @brief FullUpdateTree emit if need reparse pattern file. */ - void LiteUpdateTree(const Document &parse); + void LiteUpdateTree(const Document &parse); + + void ToolTip(const QString &toolTip); - void ToolTip(const QString &toolTip); protected: /** @brief doc dom document container */ - VAbstractPattern *doc; + VAbstractPattern *doc; /** @brief id object id. */ - const quint32 m_id; + const quint32 m_id; QPointer vis; - SelectionType selectionType; + SelectionType selectionType; /** * @brief AddToFile add tag with informations about tool into file. */ - virtual void AddToFile()=0; + virtual void AddToFile() = 0; /** * @brief RefreshDataInFile refresh attributes in file. If attributes don't exist create them. */ - virtual void RefreshDataInFile(); + virtual void RefreshDataInFile(); /** * @brief RemoveReferens decrement value of reference. */ - virtual void RemoveReferens() {} - virtual void DeleteToolWithConfirm(bool ask = true); - virtual void PerformDelete(); + virtual void RemoveReferens() {} + virtual void DeleteToolWithConfirm(bool ask = true); + virtual void PerformDelete(); template static auto CreateNode(VContainer *data, quint32 id) -> quint32; static auto CreateNodeSpline(VContainer *data, quint32 id) -> quint32; static auto CreateNodeSplinePath(VContainer *data, quint32 id) -> quint32; static auto CreateNodePoint(VContainer *data, quint32 id, const QSharedPointer &point) -> quint32; - template - void AddVisualization(); + template void AddVisualization(); - virtual void SetVisualization()=0; + virtual void SetVisualization() = 0; virtual void ToolCreation(const Source &typeCreation); static auto AddSANode(VAbstractPattern *doc, const QString &tagName, const VPieceNode &node) -> QDomElement; - static void AddNode(VAbstractPattern *doc, QDomElement &domElement, const VPieceNode &node); + static void AddNode(VAbstractPattern *doc, QDomElement &domElement, const VPieceNode &node); static auto PrepareNodes(const VPiecePath &path, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> QVector; @@ -207,8 +206,7 @@ inline auto VAbstractTool::getData() const -> const VContainer * } //--------------------------------------------------------------------------------------------------------------------- -template -inline void VAbstractTool::AddVisualization() +template inline void VAbstractTool::AddVisualization() { T *visual = new T(getData()); auto *scene = qobject_cast(VAbstractValApplication::VApp()->getCurrentScene()); @@ -230,7 +228,7 @@ template */ auto VAbstractTool::CreateNode(VContainer *data, quint32 id) -> quint32 { - //We can't use exist object. Need create new. + // We can't use exist object. Need create new. T *node = new T(*data->GeometricObject(id).data()); node->setMode(Draw::Modeling); node->setIdObject(id); diff --git a/src/libs/vtools/tools/vdatatool.h b/src/libs/vtools/tools/vdatatool.h index 03616e252..5115d95aa 100644 --- a/src/libs/vtools/tools/vdatatool.h +++ b/src/libs/vtools/tools/vdatatool.h @@ -29,39 +29,41 @@ #ifndef VDATATOOL_H #define VDATATOOL_H -#include +#include #include #include #include #include -#include #include "../vpatterndb/vcontainer.h" Q_DECLARE_LOGGING_CATEGORY(vTool) -//We need QObject class because we use qobject_cast. +// We need QObject class because we use qobject_cast. /** * @brief The VDataTool class need for getting access to data container of tool. */ class VDataTool : public QObject { Q_OBJECT // NOLINT + public: explicit VDataTool(VContainer *data, QObject *parent = nullptr); virtual ~VDataTool() = default; auto getData() const -> VContainer; - void setData(const VContainer *value); + void setData(const VContainer *value); virtual auto referens() const -> quint32; - virtual void incrementReferens(); - virtual void decrementReferens(); - virtual void GroupVisibility(quint32 object, bool visible)=0; + virtual void incrementReferens(); + virtual void decrementReferens(); + virtual void GroupVisibility(quint32 object, bool visible) = 0; + protected: /** @brief data container with data */ - VContainer data; + VContainer data; /** @brief _referens keep count tools what use this tool. If value more than 1 you can't delete tool. */ - quint32 _referens; + quint32 _referens; + private: Q_DISABLE_COPY_MOVE(VDataTool) // NOLINT }; diff --git a/src/libs/vtools/tools/vtoolseamallowance.h b/src/libs/vtools/tools/vtoolseamallowance.h index 2cee2fc9e..409567dca 100644 --- a/src/libs/vtools/tools/vtoolseamallowance.h +++ b/src/libs/vtools/tools/vtoolseamallowance.h @@ -29,7 +29,7 @@ #ifndef VTOOLSEAMALLOWANCE_H #define VTOOLSEAMALLOWANCE_H -#include + #include #include diff --git a/src/libs/vtools/tools/vtooluniondetails.cpp b/src/libs/vtools/tools/vtooluniondetails.cpp index db6e06d27..e12f69f52 100644 --- a/src/libs/vtools/tools/vtooluniondetails.cpp +++ b/src/libs/vtools/tools/vtooluniondetails.cpp @@ -36,28 +36,27 @@ #include #include #include -#include #include +#include "../dialogs/tools/dialogtool.h" #include "../dialogs/tools/dialoguniondetails.h" +#include "../ifc/exception/vexceptionwrongid.h" #include "../ifc/xml/vdomdocument.h" #include "../ifc/xml/vpatternconverter.h" -#include "../ifc/exception/vexceptionwrongid.h" -#include "../vgeometry/varc.h" -#include "../vgeometry/vellipticalarc.h" -#include "../vgeometry/vsplinepath.h" #include "../vgeometry/vabstractcubicbezier.h" #include "../vgeometry/vabstractcubicbezierpath.h" +#include "../vgeometry/varc.h" +#include "../vgeometry/vellipticalarc.h" #include "../vgeometry/vgeometrydef.h" +#include "../vgeometry/vplacelabelitem.h" #include "../vgeometry/vpointf.h" #include "../vgeometry/vspline.h" +#include "../vgeometry/vsplinepath.h" #include "../vgeometry/vsplinepoint.h" -#include "../vgeometry/vplacelabelitem.h" #include "../vmisc/vabstractapplication.h" #include "../vpatterndb/vcontainer.h" -#include "../vpatterndb/vpiecepath.h" #include "../vpatterndb/vpiecenode.h" -#include "../dialogs/tools/dialogtool.h" +#include "../vpatterndb/vpiecepath.h" #include "nodeDetails/vnodearc.h" #include "nodeDetails/vnodeellipticalarc.h" #include "nodeDetails/vnodepoint.h" @@ -69,17 +68,17 @@ #include "vdatatool.h" #include "vtoolseamallowance.h" -const QString VToolUnionDetails::ToolType = QStringLiteral("unionDetails"); -const QString VToolUnionDetails::TagDetail = QStringLiteral("det"); -const QString VToolUnionDetails::TagNode = QStringLiteral("node"); -const QString VToolUnionDetails::TagChildren = QStringLiteral("children"); -const QString VToolUnionDetails::TagChild = QStringLiteral("child"); -const QString VToolUnionDetails::AttrIndexD1 = QStringLiteral("indexD1"); -const QString VToolUnionDetails::AttrIndexD2 = QStringLiteral("indexD2"); -const QString VToolUnionDetails::AttrIdObject = QStringLiteral("idObject"); -const QString VToolUnionDetails::AttrNodeType = QStringLiteral("nodeType"); -const QString VToolUnionDetails::NodeTypeContour = QStringLiteral("Contour"); -const QString VToolUnionDetails::NodeTypeModeling = QStringLiteral("Modeling"); +const QString VToolUnionDetails::ToolType = QStringLiteral("unionDetails"); // NOLINT +const QString VToolUnionDetails::TagDetail = QStringLiteral("det"); // NOLINT +const QString VToolUnionDetails::TagNode = QStringLiteral("node"); // NOLINT +const QString VToolUnionDetails::TagChildren = QStringLiteral("children"); // NOLINT +const QString VToolUnionDetails::TagChild = QStringLiteral("child"); // NOLINT +const QString VToolUnionDetails::AttrIndexD1 = QStringLiteral("indexD1"); // NOLINT +const QString VToolUnionDetails::AttrIndexD2 = QStringLiteral("indexD2"); // NOLINT +const QString VToolUnionDetails::AttrIdObject = QStringLiteral("idObject"); // NOLINT +const QString VToolUnionDetails::AttrNodeType = QStringLiteral("nodeType"); // NOLINT +const QString VToolUnionDetails::NodeTypeContour = QStringLiteral("Contour"); // NOLINT +const QString VToolUnionDetails::NodeTypeModeling = QStringLiteral("Modeling"); // NOLINT // Current version of union tag need for backward compatibility const quint8 VToolUnionDetails::unionVersion = UNION_VERSSION; @@ -100,15 +99,14 @@ auto GetPiecePath(int piece, VAbstractPattern *doc, quint32 id) -> VPiecePath const QDomElement tool = doc->elementById(id, VAbstractPattern::TagTools); if (tool.isNull()) { - VException e(QString("Can't get tool by id='%1'.").arg(id)); - throw e; + throw VException(QStringLiteral("Can't get tool by id='%1'.").arg(id)); } const QDomNodeList nodesList = tool.childNodes(); for (qint32 i = 0; i < nodesList.size(); ++i) { const QDomElement element = nodesList.at(i).toElement(); - if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i+1 == piece) + if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i + 1 == piece) { const QDomNodeList detList = element.childNodes(); for (qint32 j = 0; j < detList.size(); ++j) @@ -122,7 +120,7 @@ auto GetPiecePath(int piece, VAbstractPattern *doc, quint32 id) -> VPiecePath } } - return VPiecePath(); + return {}; } //--------------------------------------------------------------------------------------------------------------------- @@ -143,15 +141,14 @@ auto GetPiece2CSAPaths(VAbstractPattern *doc, quint32 id) -> QVectorelementById(id, VAbstractPattern::TagTools); if (tool.isNull()) { - VException e(QString("Can't get tool by id='%1'.").arg(id)); - throw e; + throw VException(QStringLiteral("Can't get tool by id='%1'.").arg(id)); } const QDomNodeList nodesList = tool.childNodes(); for (qint32 i = 0; i < nodesList.size(); ++i) { const QDomElement element = nodesList.at(i).toElement(); - if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i+1 == 2) + if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i + 1 == 2) { const QDomNodeList detList = element.childNodes(); for (qint32 j = 0; j < detList.size(); ++j) @@ -165,7 +162,7 @@ auto GetPiece2CSAPaths(VAbstractPattern *doc, quint32 id) -> QVector(); + return {}; } //--------------------------------------------------------------------------------------------------------------------- @@ -174,15 +171,14 @@ auto GetPiece2InternalPaths(VAbstractPattern *doc, quint32 id) -> QVectorelementById(id, VAbstractPattern::TagTools); if (tool.isNull()) { - VException e(QString("Can't get tool by id='%1'.").arg(id)); - throw e; + throw VException(QStringLiteral("Can't get tool by id='%1'.").arg(id)); } const QDomNodeList nodesList = tool.childNodes(); for (qint32 i = 0; i < nodesList.size(); ++i) { const QDomElement element = nodesList.at(i).toElement(); - if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i+1 == 2) + if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i + 1 == 2) { const QDomNodeList detList = element.childNodes(); for (qint32 j = 0; j < detList.size(); ++j) @@ -196,7 +192,7 @@ auto GetPiece2InternalPaths(VAbstractPattern *doc, quint32 id) -> QVector(); + return {}; } //--------------------------------------------------------------------------------------------------------------------- @@ -205,15 +201,14 @@ auto GetPiece2Pins(VAbstractPattern *doc, quint32 id) -> QVector const QDomElement tool = doc->elementById(id, VAbstractPattern::TagTools); if (tool.isNull()) { - VException e(QString("Can't get tool by id='%1'.").arg(id)); - throw e; + throw VException(QStringLiteral("Can't get tool by id='%1'.").arg(id)); } const QDomNodeList nodesList = tool.childNodes(); for (qint32 i = 0; i < nodesList.size(); ++i) { const QDomElement element = nodesList.at(i).toElement(); - if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i+1 == 2) + if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i + 1 == 2) { const QDomNodeList detList = element.childNodes(); for (qint32 j = 0; j < detList.size(); ++j) @@ -227,7 +222,7 @@ auto GetPiece2Pins(VAbstractPattern *doc, quint32 id) -> QVector } } - return QVector(); + return {}; } //--------------------------------------------------------------------------------------------------------------------- @@ -236,15 +231,14 @@ auto GetPiece2PlaceLabels(VAbstractPattern *doc, quint32 id) -> QVector const QDomElement tool = doc->elementById(id, VAbstractPattern::TagTools); if (tool.isNull()) { - VException e(QString("Can't get tool by id='%1'.").arg(id)); - throw e; + throw VException(QStringLiteral("Can't get tool by id='%1'.").arg(id)); } const QDomNodeList nodesList = tool.childNodes(); for (qint32 i = 0; i < nodesList.size(); ++i) { const QDomElement element = nodesList.at(i).toElement(); - if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i+1 == 2) + if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail && i + 1 == 2) { const QDomNodeList detList = element.childNodes(); for (qint32 j = 0; j < detList.size(); ++j) @@ -258,7 +252,7 @@ auto GetPiece2PlaceLabels(VAbstractPattern *doc, quint32 id) -> QVector } } - return QVector(); + return {}; } //--------------------------------------------------------------------------------------------------------------------- @@ -267,25 +261,25 @@ auto DrawName(VAbstractPattern *doc, quint32 d1id, quint32 d2id) -> QString const QDomElement detail1 = doc->elementById(d1id, VAbstractPattern::TagDetail); if (detail1.isNull()) { - return QString(); + return {}; } const QDomElement detail2 = doc->elementById(d2id, VAbstractPattern::TagDetail); if (detail2.isNull()) { - return QString(); + return {}; } const QDomElement draw1 = detail1.parentNode().parentNode().toElement(); if (draw1.isNull() || not draw1.hasAttribute(VAbstractPattern::AttrName)) { - return QString(); + return {}; } const QDomElement draw2 = detail2.parentNode().parentNode().toElement(); if (draw2.isNull() || not draw2.hasAttribute(VAbstractPattern::AttrName)) { - return QString(); + return {}; } const QString draw1Name = draw1.attribute(VAbstractPattern::AttrName); @@ -299,13 +293,13 @@ auto DrawName(VAbstractPattern *doc, quint32 d1id, quint32 d2id) -> QString const QDomElement pattern = draw1.parentNode().toElement(); if (pattern.isNull()) { - return QString(); + return {}; } int indexD1 = 0; int indexD2 = 0; const QDomNodeList listDraws = pattern.elementsByTagName(VAbstractPattern::TagDraw); - for (int i=0; i < listDraws.size(); ++i) + for (int i = 0; i < listDraws.size(); ++i) { const QDomElement draw = listDraws.at(i).toElement(); if (draw == draw1) @@ -338,10 +332,10 @@ auto DrawName(VAbstractPattern *doc, quint32 d1id, quint32 d2id) -> QString */ void BiasRotatePoint(VPointF *point, qreal dx, qreal dy, const QPointF &pRotate, qreal angle) { - point->setX(point->x()+dx); - point->setY(point->y()+dy); + point->setX(point->x() + dx); + point->setY(point->y() + dy); QLineF line(pRotate, static_cast(*point)); - line.setAngle(line.angle()+angle); + line.setAngle(line.angle() + angle); point->setX(line.p2().x()); point->setY(line.p2().y()); } @@ -375,11 +369,11 @@ void UnionInitParameters(const VToolUnionDetailsInitData &initData, const VPiece dx = point1.x() - point4.x(); dy = point1.y() - point4.y(); - point3.setX(point3.x()+dx); - point3.setY(point3.y()+dy); + point3.setX(point3.x() + dx); + point3.setY(point3.y() + dy); - point4.setX(point4.x()+dx); - point4.setY(point4.y()+dy); + point4.setX(point4.x() + dx); + point4.setY(point4.y() + dy); const QLineF p4p3 = QLineF(static_cast(point4), static_cast(point3)); const QLineF p1p2 = QLineF(static_cast(point1), static_cast(point2)); @@ -503,8 +497,8 @@ auto AddNodeArc(const VPieceNode &node, const VToolUnionDetailsInitData &initDat const QString &drawName, qreal dx, qreal dy, quint32 pRotate, qreal angle) -> quint32 { const QSharedPointer arc = initData.data->GeometricObject(node.GetId()); - VPointF p1 = VPointF(arc->GetP1(), "A", 0, 0); - VPointF p2 = VPointF(arc->GetP2(), "A", 0, 0); + VPointF p1 = VPointF(arc->GetP1(), QChar('A'), 0, 0); + VPointF p2 = VPointF(arc->GetP2(), QChar('A'), 0, 0); std::unique_ptr center(new VPointF(arc->GetCenter())); if (not qFuzzyIsNull(dx) || not qFuzzyIsNull(dy) || pRotate != NULL_ID) @@ -526,7 +520,7 @@ auto AddNodeArc(const VPieceNode &node, const VToolUnionDetailsInitData &initDat QString().setNum(l1.angle()), l2.angle(), QString().setNum(l2.angle()))); arc1->setMode(Draw::Modeling); - std::unique_ptrarc2(new VArc(*arc1)); + std::unique_ptr arc2(new VArc(*arc1)); const quint32 idObject = initData.data->AddGObject(arc1.release()); children.append(idObject); @@ -554,8 +548,8 @@ auto AddNodeElArc(const VPieceNode &node, const VToolUnionDetailsInitData &initD const QString &drawName, qreal dx, qreal dy, quint32 pRotate, qreal angle) -> quint32 { const QSharedPointer arc = initData.data->GeometricObject(node.GetId()); - VPointF p1 = VPointF(arc->GetP1(), "A", 0, 0); - VPointF p2 = VPointF(arc->GetP2(), "A", 0, 0); + VPointF p1 = VPointF(arc->GetP1(), QChar('A'), 0, 0); + VPointF p2 = VPointF(arc->GetP2(), QChar('A'), 0, 0); std::unique_ptr center(new VPointF(arc->GetCenter())); if (not qFuzzyIsNull(dx) || not qFuzzyIsNull(dy) || pRotate != NULL_ID) @@ -573,10 +567,9 @@ auto AddNodeElArc(const VPieceNode &node, const VToolUnionDetailsInitData &initD VPointF *tmpCenter = center.release(); quint32 idCenter = initData.data->AddGObject(tmpCenter); Q_UNUSED(idCenter) - std::unique_ptr arc1(new VEllipticalArc (*tmpCenter, arc->GetRadius1(), arc->GetRadius2(), - arc->GetFormulaRadius1(), arc->GetFormulaRadius2(), - l1.angle(), QString().setNum(l1.angle()), l2.angle(), - QString().setNum(l2.angle()), 0, QChar('0'))); + std::unique_ptr arc1(new VEllipticalArc( + *tmpCenter, arc->GetRadius1(), arc->GetRadius2(), arc->GetFormulaRadius1(), arc->GetFormulaRadius2(), + l1.angle(), QString().setNum(l1.angle()), l2.angle(), QString().setNum(l2.angle()), 0, QChar('0'))); arc1->setMode(Draw::Modeling); std::unique_ptr arc2(new VEllipticalArc(*arc1)); @@ -607,11 +600,11 @@ auto AddNodeSpline(const VPieceNode &node, const VToolUnionDetailsInitData &init const QString &drawName, qreal dx, qreal dy, quint32 pRotate, qreal angle) -> quint32 { const QSharedPointer spline = - initData.data->GeometricObject(node.GetId()); + initData.data->GeometricObject(node.GetId()); QScopedPointer p1(new VPointF(spline->GetP1())); - VPointF p2 = VPointF(spline->GetP2()); - VPointF p3 = VPointF(spline->GetP3()); + VPointF p2 = spline->GetP2(); + VPointF p3 = spline->GetP3(); QScopedPointer p4(new VPointF(spline->GetP4())); if (not qFuzzyIsNull(dx) || not qFuzzyIsNull(dy) || pRotate != NULL_ID) @@ -624,11 +617,11 @@ auto AddNodeSpline(const VPieceNode &node, const VToolUnionDetailsInitData &init BiasRotatePoint(p4.data(), dx, dy, p, angle); } - VSpline *spl = new VSpline(*p1, static_cast(p2), static_cast(p3), *p4, 0, Draw::Modeling); + auto *spl = new VSpline(*p1, static_cast(p2), static_cast(p3), *p4, 0, Draw::Modeling); const quint32 idObject = initData.data->AddGObject(spl); children.append(idObject); - VSpline *spl1 = new VSpline(*spl); + auto *spl1 = new VSpline(*spl); spl1->setIdObject(idObject); spl1->setMode(Draw::Modeling); const quint32 id = initData.data->AddGObject(spl1); @@ -654,14 +647,14 @@ auto AddNodeSplinePath(const VPieceNode &node, const VToolUnionDetailsInitData & std::unique_ptr path(new VSplinePath()); path->setMode(Draw::Modeling); const QSharedPointer splinePath = - initData.data->GeometricObject(node.GetId()); + initData.data->GeometricObject(node.GetId()); for (qint32 i = 1; i <= splinePath->CountSubSpl(); ++i) { const VSpline spline = splinePath->GetSpline(i); QScopedPointer p1(new VPointF(spline.GetP1())); - VPointF p2 = VPointF(spline.GetP2()); - VPointF p3 = VPointF(spline.GetP3()); + VPointF p2 = spline.GetP2(); + VPointF p3 = spline.GetP3(); QScopedPointer p4(new VPointF(spline.GetP4())); if (not qFuzzyIsNull(dx) || not qFuzzyIsNull(dy) || pRotate != NULL_ID) { @@ -674,22 +667,22 @@ auto AddNodeSplinePath(const VPieceNode &node, const VToolUnionDetailsInitData & } VSpline spl = VSpline(*p1, static_cast(p2), static_cast(p3), *p4); - if (i==1) + if (i == 1) { - const qreal angle1 = spl.GetStartAngle()+180; - const QString angle1F = QString().number(angle1); + const qreal angle1 = spl.GetStartAngle() + 180; + const QString angle1F = QString::number(angle1); - path->append(VSplinePoint(*p1, angle1, angle1F, spl.GetStartAngle(), spl.GetStartAngleFormula(), - 0, QChar('0'), spline.GetC1Length(), spline.GetC1LengthFormula())); + path->append(VSplinePoint(*p1, angle1, angle1F, spl.GetStartAngle(), spl.GetStartAngleFormula(), 0, + QChar('0'), spline.GetC1Length(), spline.GetC1LengthFormula())); } - const qreal angle2 = spl.GetEndAngle()+180; - const QString angle2F = QString().number(angle2); + const qreal angle2 = spl.GetEndAngle() + 180; + const QString angle2F = QString::number(angle2); qreal pL2 = 0; QString pL2F('0'); - if (i+1 <= splinePath->CountSubSpl()) + if (i + 1 <= splinePath->CountSubSpl()) { - const VSpline nextSpline = splinePath->GetSpline(i+1); + const VSpline nextSpline = splinePath->GetSpline(i + 1); pL2 = nextSpline.GetC1Length(); pL2F = nextSpline.GetC1LengthFormula(); } @@ -751,7 +744,7 @@ void AddNodeToNewPath(const VToolUnionDetailsInitData &initData, VPiecePath &new id = AddNodeSplinePath(node, initData, children, drawName, dx, dy, pRotate, angle); break; default: - qDebug()<<"May be wrong tool type!!! Ignoring."< QDomElement QDomElement toolUnion = doc->elementById(id, VAbstractPattern::TagTools); if (toolUnion.isNull()) { - VException e(QString("Can't get tool by id='%1'.").arg(id)); - throw e; + throw VException(QStringLiteral("Can't get tool by id='%1'.").arg(id)); } QDomElement tagChildren = toolUnion.firstChildElement(VToolUnionDetails::TagChildren); @@ -805,7 +797,7 @@ auto GetTagChildren(VAbstractPattern *doc, quint32 id) -> QDomElement //--------------------------------------------------------------------------------------------------------------------- void SaveChildren(VAbstractPattern *doc, quint32 id, QDomElement section, const QVector &children) { - if (children.size() > 0) + if (!children.empty()) { for (auto child : children) { @@ -852,24 +844,26 @@ auto GetChildren(VAbstractPattern *doc, quint32 id, const QString &tagName) -> Q const QDomElement toolUnion = doc->elementById(id, VAbstractPattern::TagTools); if (toolUnion.isNull()) { - return QVector(); + return {}; } const QDomElement tagChildren = toolUnion.firstChildElement(VToolUnionDetails::TagChildren); if (tagChildren.isNull()) { - return QVector(); + return {}; } const QDomElement tagNodes = tagChildren.firstChildElement(tagName); if (tagNodes.isNull()) { - return QVector(); + return {}; } - QVector childrenId; const QDomNodeList listChildren = tagNodes.elementsByTagName(VToolUnionDetails::TagChild); - for (int i=0; i < listChildren.size(); ++i) + QVector childrenId; + childrenId.reserve(listChildren.size()); + + for (int i = 0; i < listChildren.size(); ++i) { const QDomElement domElement = listChildren.at(i).toElement(); if (not domElement.isNull()) @@ -986,10 +980,9 @@ void UpdateNodeElArc(VContainer *data, const VPieceNode &node, QVector QLineF l1(static_cast(*center), static_cast(p1)); QLineF l2(static_cast(*center), static_cast(p2)); - std::unique_ptr arc1(new VEllipticalArc (*center, arc->GetRadius1(), arc->GetRadius2(), - arc->GetFormulaRadius1(), arc->GetFormulaRadius2(), - l1.angle(), QString().setNum(l1.angle()), l2.angle(), - QString().setNum(l2.angle()), 0, QChar('0'))); + std::unique_ptr arc1(new VEllipticalArc( + *center, arc->GetRadius1(), arc->GetRadius2(), arc->GetFormulaRadius1(), arc->GetFormulaRadius2(), l1.angle(), + QString().setNum(l1.angle()), l2.angle(), QString().setNum(l2.angle()), 0, QChar('0'))); arc1->setMode(Draw::Modeling); data->UpdateGObject(TakeNextId(children), arc1.release()); } @@ -998,12 +991,11 @@ void UpdateNodeElArc(VContainer *data, const VPieceNode &node, QVector void UpdateNodeSpline(VContainer *data, const VPieceNode &node, QVector &children, qreal dx, qreal dy, quint32 pRotate, qreal angle) { - const QSharedPointer spline = - data->GeometricObject(node.GetId()); + const QSharedPointer spline = data->GeometricObject(node.GetId()); QScopedPointer p1(new VPointF(spline->GetP1())); - VPointF p2 = VPointF(spline->GetP2()); - VPointF p3 = VPointF(spline->GetP3()); + VPointF p2 = spline->GetP2(); + VPointF p3 = spline->GetP3(); QScopedPointer p4(new VPointF(spline->GetP4())); if (not qFuzzyIsNull(dx) || not qFuzzyIsNull(dy) || pRotate != NULL_ID) @@ -1016,8 +1008,8 @@ void UpdateNodeSpline(VContainer *data, const VPieceNode &node, QVector BiasRotatePoint(p4.data(), dx, dy, p, angle); } - std::unique_ptr spl(new VSpline(*p1, static_cast(p2), static_cast(p3), *p4, 0, - Draw::Modeling)); + std::unique_ptr spl( + new VSpline(*p1, static_cast(p2), static_cast(p3), *p4, 0, Draw::Modeling)); data->UpdateGObject(TakeNextId(children), spl.release()); } @@ -1028,15 +1020,15 @@ void UpdateNodeSplinePath(VContainer *data, const VPieceNode &node, QVector path(new VSplinePath()); path->setMode(Draw::Modeling); const QSharedPointer splinePath = - data->GeometricObject(node.GetId()); + data->GeometricObject(node.GetId()); SCASSERT(splinePath != nullptr) for (qint32 i = 1; i <= splinePath->CountSubSpl(); ++i) { const VSpline spline = splinePath->GetSpline(i); QScopedPointer p1(new VPointF(spline.GetP1())); - VPointF p2 = VPointF(spline.GetP2()); - VPointF p3 = VPointF(spline.GetP3()); + VPointF p2 = spline.GetP2(); + VPointF p3 = spline.GetP3(); QScopedPointer p4(new VPointF(spline.GetP4())); if (not qFuzzyIsNull(dx) || not qFuzzyIsNull(dy) || pRotate != NULL_ID) @@ -1050,23 +1042,23 @@ void UpdateNodeSplinePath(VContainer *data, const VPieceNode &node, QVector(p2), static_cast(p3), *p4); - if (i==1) + if (i == 1) { - const qreal angle1 = spl.GetStartAngle()+180; - const QString angle1F = QString().number(angle1); + const qreal angle1 = spl.GetStartAngle() + 180; + const QString angle1F = QString::number(angle1); - path->append(VSplinePoint(*p1, angle1, angle1F, spl.GetStartAngle(), spl.GetStartAngleFormula(), - 0, QChar('0'), spline.GetC1Length(), spline.GetC1LengthFormula())); + path->append(VSplinePoint(*p1, angle1, angle1F, spl.GetStartAngle(), spl.GetStartAngleFormula(), 0, + QChar('0'), spline.GetC1Length(), spline.GetC1LengthFormula())); } - const qreal angle2 = spl.GetEndAngle()+180; - const QString angle2F = QString().number(angle2); + const qreal angle2 = spl.GetEndAngle() + 180; + const QString angle2F = QString::number(angle2); qreal pL2 = 0; QString pL2F('0'); - if (i+1 <= splinePath->CountSubSpl()) + if (i + 1 <= splinePath->CountSubSpl()) { - const VSpline nextSpline = splinePath->GetSpline(i+1); + const VSpline nextSpline = splinePath->GetSpline(i + 1); pL2 = nextSpline.GetC1Length(); pL2F = nextSpline.GetC1LengthFormula(); } @@ -1088,10 +1080,10 @@ void UpdateNodeSplinePath(VContainer *data, const VPieceNode &node, QVector &children, - qreal dx = 0, qreal dy = 0, quint32 pRotate = NULL_ID, qreal angle = 0); +void UpdatePathNode(VContainer *data, const VPieceNode &node, QVector &children, qreal dx = 0, qreal dy = 0, + quint32 pRotate = NULL_ID, qreal angle = 0); void UpdatePathNode(VContainer *data, const VPieceNode &node, QVector &children, qreal dx, qreal dy, - quint32 pRotate, qreal angle) + quint32 pRotate, qreal angle) { switch (node.GetTypeTool()) { @@ -1111,7 +1103,7 @@ void UpdatePathNode(VContainer *data, const VPieceNode &node, QVector & UpdateNodeSplinePath(data, node, children, dx, dy, pRotate, angle); break; default: - qDebug()<<"May be wrong tool type!!! Ignoring."< children; VPiecePath newPath; - for (auto &path : unitedPath) + for (const auto &path : unitedPath) { if (path.first) - {// first piece + { // first piece AddNodeToNewPath(initData, newPath, path.second, children, drawName); } else - {// second piece + { // second piece AddNodeToNewPath(initData, newPath, path.second, children, drawName, dx, dy, pRotate, angle); } } @@ -1147,18 +1139,17 @@ void CreateUnitedNodes(VPiece &newDetail, const VPiece &d1, const VPiece &d2, co } //--------------------------------------------------------------------------------------------------------------------- -void CreateUnitedDetailCSA(VPiece &newDetail, const VPiece &d, QVector &children, - const QString &drawName, const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, - quint32 pRotate, qreal angle) +void CreateUnitedDetailCSA(VPiece &newDetail, const VPiece &d, QVector &children, const QString &drawName, + const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, quint32 pRotate, qreal angle) { QVector nodeChildren; const QVector records = d.GetCustomSARecords(); - for(auto record : records) + for (auto record : records) { const VPiecePath path = initData.data->GetPiecePath(record.path); VPiecePath newPath = path; - newPath.Clear();//Clear nodes - for (int i=0; i < path.CountNodes(); ++i) + newPath.Clear(); // Clear nodes + for (int i = 0; i < path.CountNodes(); ++i) { AddNodeToNewPath(initData, newPath, path.at(i), nodeChildren, drawName, dx, dy, pRotate, angle); } @@ -1205,13 +1196,13 @@ void CreateUnitedDetailInternalPaths(VPiece &newDetail, const VPiece &d, QVector { QVector nodeChildren; const QVector internalPaths = d.GetInternalPaths(); - for(auto iPath : internalPaths) + for (auto iPath : internalPaths) { const VPiecePath path = initData.data->GetPiecePath(iPath); VPiecePath newPath = path; - newPath.Clear();//Clear nodes + newPath.Clear(); // Clear nodes - for (int i=0; i < path.CountNodes(); ++i) + for (int i = 0; i < path.CountNodes(); ++i) { AddNodeToNewPath(initData, newPath, path.at(i), nodeChildren, drawName, dx, dy, pRotate, angle); } @@ -1253,13 +1244,12 @@ void CreateUnitedInternalPaths(VPiece &newDetail, const VPiece &d1, const VPiece } //--------------------------------------------------------------------------------------------------------------------- -void CreateUnitedDetailPins(VPiece &newDetail, const VPiece &d, QVector &children, - const QString &drawName, const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, - quint32 pRotate, qreal angle) +void CreateUnitedDetailPins(VPiece &newDetail, const VPiece &d, QVector &children, const QString &drawName, + const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, quint32 pRotate, qreal angle) { QVector nodeChildren; const QVector pins = d.GetPins(); - for(auto pin : pins) + for (auto pin : pins) { const quint32 id = AddPin(pin, initData, children, drawName, dx, dy, pRotate, angle); newDetail.GetPins().append(id); @@ -1274,7 +1264,7 @@ void CreateUnitedDetailPlaceLabels(VPiece &newDetail, const VPiece &d, QVector nodeChildren; const QVector placeLabels = d.GetPlaceLabels(); - for(auto placeLabel : placeLabels) + for (auto placeLabel : placeLabels) { const quint32 id = AddPlaceLabel(placeLabel, initData, children, drawName, dx, dy, pRotate, angle); newDetail.GetPlaceLabels().append(id); @@ -1323,55 +1313,56 @@ void UpdateUnitedNodes(const VToolUnionDetailsInitData &initData, qreal dx, qrea const vsizetype countNodeD2 = d2REPath.CountNodes(); QVector children = GetNodesChildren(initData.doc, initData.id); - if (not children.isEmpty()) + if (children.isEmpty()) { - // This check need for backward compatibility - // Remove check and "else" part if min version is 0.3.2 - Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 3, 2), - "Time to refactor the code."); - if (children.size() == countNodeD1 + countNodeD2-1) - { - const auto unitedPath = VToolUnionDetails::CalcUnitedPath(d1REPath, d2REPath, initData.indexD2, pRotate); + return; + } - for (auto &path : unitedPath) - { - if (path.first) - {// first piece - UpdatePathNode(initData.data, path.second, children); - } - else - {// second piece - UpdatePathNode(initData.data, path.second, children, dx, dy, pRotate, angle); - } + // This check need for backward compatibility + // Remove check and "else" part if min version is 0.3.2 + Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 3, 2), "Time to refactor the code."); + if (children.size() == countNodeD1 + countNodeD2 - 1) + { + const auto unitedPath = VToolUnionDetails::CalcUnitedPath(d1REPath, d2REPath, initData.indexD2, pRotate); + + for (const auto &path : unitedPath) + { + if (path.first) + { // first piece + UpdatePathNode(initData.data, path.second, children); + } + else + { // second piece + UpdatePathNode(initData.data, path.second, children, dx, dy, pRotate, angle); } } - else // remove if min version is 0.3.2 + } + else // remove if min version is 0.3.2 + { + qint32 pointsD2 = 0; // Keeps number points the second detail, what we have already added. + qint32 i = 0; + const int indexOfNode = d1REPath.indexOfNode(pRotate); + do { - qint32 pointsD2 = 0; //Keeps number points the second detail, what we have already added. - qint32 i = 0; - const int indexOfNode = d1REPath.indexOfNode(pRotate); - do + ++i; + if (i > indexOfNode) { - ++i; - if (i > indexOfNode) + const vsizetype childrenCount = children.size(); + qint32 j = 0; + FindIndexJ(pointsD2, d2REPath, initData.indexD2, j); + do { - const vsizetype childrenCount = children.size(); - qint32 j = 0; - FindIndexJ(pointsD2, d2REPath, initData.indexD2, j); - do + if (j >= countNodeD2) { - if (j >= countNodeD2) - { - j=0; - } - UpdatePathNode(initData.data, d2REPath.at(j), children, dx, dy, pRotate, angle); - ++pointsD2; - ++j; - } while (pointsD2 < childrenCount); - break; - } - } while (i records, QVector children, VContainer *data) -> QVector { // TODO. Delete if minimal supported version is 0.7.0 - Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 7, 0), - "Time to refactor the code."); + Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 7, 0), "Time to refactor the code."); SCASSERT(data != nullptr) if (records.isEmpty()) @@ -1394,15 +1384,15 @@ auto FixChildren(QVector records, QVector children, VContainer } QVector fixedChildren; - while(not records.isEmpty()) + while (not records.isEmpty()) { - const vsizetype childrenIndex = records.size()-1; + const vsizetype childrenIndex = records.size() - 1; if (children.size() > childrenIndex) { fixedChildren.append(children.takeAt(childrenIndex)); const VPiecePath path = data->GetPiecePath(records.takeFirst()); - for (int i=0; i < path.CountNodes(); ++i) + for (int i = 0; i < path.CountNodes(); ++i) { if (children.size() > childrenIndex) { @@ -1422,8 +1412,7 @@ void UpdateUnitedDetailPaths(const VToolUnionDetailsInitData &initData, qreal dx if (initData.version == 1) { // TODO. Delete if minimal supported version is 0.7.0 - Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 7, 0), - "Time to refactor the code."); + Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 7, 0), "Time to refactor the code."); // Fixing bug in first version of the tool. Mostly for backward compatibility. children = FixChildren(records, children, initData.data); } @@ -1435,26 +1424,25 @@ void UpdateUnitedDetailPaths(const VToolUnionDetailsInitData &initData, qreal dx if (initData.version == 1) { // TODO. Delete if minimal supported version is 0.7.0 - Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 7, 0), - "Time to refactor the code."); + Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FormatVersion(0, 7, 0), "Time to refactor the code."); const quint32 updatedId = TakeNextId(children); VPiecePath updatedPath(path); updatedPath.Clear(); - for (int j=0; j < path.CountNodes(); ++j) + for (int j = 0; j < path.CountNodes(); ++j) { const VPieceNode &node = path.at(j); const quint32 id = TakeNextId(children); updatedPath.Append(VPieceNode(id, node.GetTypeTool(), node.GetReverse())); - QVector nodeChildren {id}; + QVector nodeChildren{id}; UpdatePathNode(initData.data, path.at(j), nodeChildren, dx, dy, pRotate, angle); } initData.data->UpdatePiecePath(updatedId, updatedPath); } else { - for (int j=0; j < path.CountNodes(); ++j) + for (int j = 0; j < path.CountNodes(); ++j) { const quint32 id = TakeNextId(children); QVector nodeChildren = {id}; @@ -1465,10 +1453,12 @@ void UpdateUnitedDetailPaths(const VToolUnionDetailsInitData &initData, qreal dx } //--------------------------------------------------------------------------------------------------------------------- -void UpdateUnitedDetailCSA(const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, quint32 pRotate, - qreal angle, const QVector &records) +void UpdateUnitedDetailCSA(const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, quint32 pRotate, qreal angle, + const QVector &records) { QVector idRecords; + idRecords.reserve(records.size()); + for (auto record : records) { idRecords.append(record.path); @@ -1477,8 +1467,8 @@ void UpdateUnitedDetailCSA(const VToolUnionDetailsInitData &initData, qreal dx, } //--------------------------------------------------------------------------------------------------------------------- -void UpdateUnitedDetailInternalPaths(const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, - quint32 pRotate, qreal angle, const QVector &records) +void UpdateUnitedDetailInternalPaths(const VToolUnionDetailsInitData &initData, qreal dx, qreal dy, quint32 pRotate, + qreal angle, const QVector &records) { UpdateUnitedDetailPaths(initData, dx, dy, pRotate, angle, records, GetInternalPathsChildren(initData.doc, initData.id)); @@ -1524,7 +1514,7 @@ void UpdateUnitedDetailPlaceLabels(const VToolUnionDetailsInitData &initData, qr label->setMx(parentLabel->mx()); label->setMy(parentLabel->my()); - label->SetCorrectionAngle(parentLabel->GetCorrectionAngle()+angle); + label->SetCorrectionAngle(parentLabel->GetCorrectionAngle() + angle); initData.data->UpdateGObject(TakeNextId(children), label.release()); } } @@ -1587,7 +1577,6 @@ void CreateUnitedDetail(const VToolUnionDetailsInitData &initData, qreal dx, qre { duplicate->RefreshGeometry(true); // Refresh internal paths } - }; if (initData.retainPieces) @@ -1598,7 +1587,7 @@ void CreateUnitedDetail(const VToolUnionDetailsInitData &initData, qreal dx, qre auto RemoveDetail = [](quint32 id) { - VToolSeamAllowance *toolDet = qobject_cast(VAbstractPattern::getTool(id)); + auto *toolDet = qobject_cast(VAbstractPattern::getTool(id)); SCASSERT(toolDet != nullptr); toolDet->RemoveWithConfirm(false); }; @@ -1650,7 +1639,7 @@ void UniteDetails(const VToolUnionDetailsInitData &initData) } } } -} // static functions +} // namespace //--------------------------------------------------------------------------------------------------------------------- /** @@ -1659,12 +1648,12 @@ void UniteDetails(const VToolUnionDetailsInitData &initData) * @param parent parent object. */ VToolUnionDetails::VToolUnionDetails(const VToolUnionDetailsInitData &initData, QObject *parent) - : VAbstractTool(initData.doc, initData.data, initData.id, parent), - d1id(initData.d1id), - d2id(initData.d2id), - indexD1(initData.indexD1), - indexD2(initData.indexD2), - version(initData.version) + : VAbstractTool(initData.doc, initData.data, initData.id, parent), + d1id(initData.d1id), + d2id(initData.d2id), + indexD1(initData.indexD1), + indexD2(initData.indexD2), + version(initData.version) { ToolCreation(initData.typeCreation); } @@ -1688,7 +1677,7 @@ void VToolUnionDetails::incrementReferens() if (_referens == 1) { const QVector objects = GetReferenceObjects(); - for(auto object : objects) + for (auto object : objects) { doc->IncrementReferens(object); } @@ -1696,7 +1685,7 @@ void VToolUnionDetails::incrementReferens() QDomElement domElement = doc->elementById(m_id, getTagName()); if (domElement.isElement()) { - doc->SetParametrUsage(domElement, AttrInUse, NodeUsage::InUse); + VAbstractPattern::SetParametrUsage(domElement, AttrInUse, NodeUsage::InUse); } } } @@ -1708,7 +1697,7 @@ void VToolUnionDetails::decrementReferens() if (_referens == 0) { const QVector objects = GetReferenceObjects(); - for(auto object : objects) + for (auto object : objects) { doc->DecrementReferens(object); } @@ -1716,7 +1705,7 @@ void VToolUnionDetails::decrementReferens() QDomElement domElement = doc->elementById(m_id, getTagName()); if (domElement.isElement()) { - doc->SetParametrUsage(domElement, AttrInUse, NodeUsage::NotInUse); + VAbstractPattern::SetParametrUsage(domElement, AttrInUse, NodeUsage::NotInUse); } } } @@ -1755,7 +1744,7 @@ auto VToolUnionDetails::Create(const QPointer &dialog, VMainGraphics initData.retainPieces = dialogTool->RetainPieces(); VAbstractApplication::VApp()->getUndoStack()->beginMacro(tr("union details")); - VToolUnionDetails* tool = Create(initData); + VToolUnionDetails *tool = Create(initData); VAbstractApplication::VApp()->getUndoStack()->endMacro(); return tool; } @@ -1780,11 +1769,11 @@ auto VToolUnionDetails::Create(VToolUnionDetailsInitData initData) -> VToolUnion } } - //First add tool to file + // First add tool to file if (initData.parse == Document::FullParse) { VAbstractTool::AddRecord(initData.id, Tool::UnionDetails, initData.doc); - //Scene doesn't show this tool, so doc will destroy this object. + // Scene doesn't show this tool, so doc will destroy this object. unionDetails = new VToolUnionDetails(initData); VAbstractPattern::AddTool(initData.id, unionDetails); // Unfortunatelly doc will destroy all objects only in the end, but we should delete them before each FullParse @@ -1826,7 +1815,7 @@ void VToolUnionDetails::AddDetail(QDomElement &domElement, const VPiece &d) cons // nodes VToolSeamAllowance::AddNodes(doc, det, d); - //custom seam allowance + // custom seam allowance VToolSeamAllowance::AddCSARecords(doc, det, d.GetCustomSARecords()); VToolSeamAllowance::AddInternalPaths(doc, det, d.GetInternalPaths()); VToolSeamAllowance::AddPins(doc, det, d.GetPins()); @@ -1882,42 +1871,45 @@ auto VToolUnionDetails::GetReferenceObjects() const -> QVector for (qint32 i = 0; i < nodesList.size(); ++i) { const QDomElement element = nodesList.at(i).toElement(); - if (not element.isNull() && element.tagName() == VToolUnionDetails::TagDetail) + if (element.isNull() || element.tagName() != VToolUnionDetails::TagDetail) { - const QDomNodeList detList = element.childNodes(); - for (qint32 j = 0; j < detList.size(); ++j) + continue; + } + + const QDomNodeList detList = element.childNodes(); + for (qint32 j = 0; j < detList.size(); ++j) + { + const QDomElement element = detList.at(j).toElement(); + if (element.isNull()) { - const QDomElement element = detList.at(j).toElement(); - if (not element.isNull()) + continue; + } + + switch (parts.indexOf(element.tagName())) + { + case 0: // VAbstractPattern::TagNodes + list += ReferenceObjects(element, TagNode, AttrIdObject); + break; + case 1: // VToolSeamAllowance::TagCSA + case 2: // VToolSeamAllowance::TagIPaths + list += ReferenceObjects(element, VToolSeamAllowance::TagRecord, VAbstractPattern::AttrPath); + break; + case 3: // VToolSeamAllowance::TagPins + case 4: // VToolSeamAllowance::TagPlaceLabels { - switch (parts.indexOf(element.tagName())) + const QDomNodeList children = element.childNodes(); + for (qint32 index = 0; index < children.size(); ++index) { - case 0://VAbstractPattern::TagNodes - list += ReferenceObjects(element, TagNode, AttrIdObject); - break; - case 1://VToolSeamAllowance::TagCSA - case 2://VToolSeamAllowance::TagIPaths - list += ReferenceObjects(element, VToolSeamAllowance::TagRecord, - VAbstractPattern::AttrPath); - break; - case 3://VToolSeamAllowance::TagPins - case 4://VToolSeamAllowance::TagPlaceLabels + const QDomElement record = children.at(index).toElement(); + if (not record.isNull() && record.tagName() == VToolSeamAllowance::TagRecord) { - const QDomNodeList children = element.childNodes(); - for (qint32 index = 0; index < children.size(); ++index) - { - const QDomElement record = children.at(index).toElement(); - if (not record.isNull() && record.tagName() == VToolSeamAllowance::TagRecord) - { - list.append(record.text().toUInt()); - } - } - break; + list.append(record.text().toUInt()); } - default: - break; } + break; } + default: + break; } } } @@ -1925,18 +1917,19 @@ auto VToolUnionDetails::GetReferenceObjects() const -> QVector } //--------------------------------------------------------------------------------------------------------------------- -auto VToolUnionDetails::ReferenceObjects(const QDomElement &root, const QString &tag, const QString &attribute) const +auto VToolUnionDetails::ReferenceObjects(const QDomElement &root, const QString &tag, const QString &attribute) -> QVector { - QVector objects; - const QDomNodeList list = root.childNodes(); + QVector objects; + objects.reserve(list.size()); + for (qint32 i = 0; i < list.size(); ++i) { const QDomElement element = list.at(i).toElement(); if (not element.isNull() && element.tagName() == tag) { - const quint32 id = doc->GetParametrUInt(element, attribute, NULL_ID_STR); + const quint32 id = VAbstractPattern::GetParametrUInt(element, attribute, NULL_ID_STR); if (id > NULL_ID) { objects.append(id); @@ -1951,12 +1944,12 @@ auto VToolUnionDetails::ReferenceObjects(const QDomElement &root, const QString auto VToolUnionDetails::CalcUnitedPath(const VPiecePath &d1Path, const VPiecePath &d2Path, quint32 indexD2, quint32 pRotate) -> QVector> { - QVector > path; + QVector> path; const vsizetype countNodeD1 = d1Path.CountNodes(); const vsizetype countNodeD2 = d2Path.CountNodes(); - qint32 pointsD2 = 0; //Keeps number points the second detail, that we have already added. + qint32 pointsD2 = 0; // Keeps number points the second detail, that we have already added. qint32 i = 0; const int det1P1Index = d1Path.indexOfNode(pRotate); bool checkUniqueness = false; @@ -1971,7 +1964,7 @@ auto VToolUnionDetails::CalcUnitedPath(const VPiecePath &d1Path, const VPiecePat } path.append(qMakePair(true, node)); ++i; - if (i > det1P1Index && pointsD2 < countNodeD2-1) + if (i > det1P1Index && pointsD2 < countNodeD2 - 1) { qint32 j = 0; FindIndexJ(pointsD2, d2Path, indexD2, j); @@ -1979,12 +1972,12 @@ auto VToolUnionDetails::CalcUnitedPath(const VPiecePath &d1Path, const VPiecePat { if (j >= countNodeD2) { - j=0; + j = 0; } path.append(qMakePair(false, d2Path.at(j))); ++pointsD2; ++j; - } while (pointsD2 < countNodeD2-1); + } while (pointsD2 < countNodeD2 - 1); checkUniqueness = true; } } while (i < countNodeD1); diff --git a/src/libs/vtools/tools/vtooluniondetails.h b/src/libs/vtools/tools/vtooluniondetails.h index e6a9a4e7f..a734e0bbb 100644 --- a/src/libs/vtools/tools/vtooluniondetails.h +++ b/src/libs/vtools/tools/vtooluniondetails.h @@ -29,7 +29,6 @@ #ifndef VTOOLUNIONDETAILS_H #define VTOOLUNIONDETAILS_H -#include #include #include #include @@ -39,34 +38,24 @@ #include #include -#include "../ifc/ifcdef.h" #include "../ifc/xml/vabstractpattern.h" -#include "../vmisc/def.h" -#include "vabstracttool.h" #include "../vpatterndb/vpiece.h" +#include "vabstracttool.h" class DialogTool; -#define UNION_VERSSION 2 +constexpr int UNION_VERSSION = 2; struct VToolUnionDetailsInitData : VAbstractToolInitData { - VToolUnionDetailsInitData() - : VAbstractToolInitData(), - d1id(NULL_ID), - d2id(NULL_ID), - indexD1(NULL_ID), - indexD2(NULL_ID), - retainPieces(false), - version(UNION_VERSSION) - {} + VToolUnionDetailsInitData() = default; - quint32 d1id; - quint32 d2id; - quint32 indexD1; - quint32 indexD2; - bool retainPieces; - uint version; + quint32 d1id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 d2id{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 indexD1{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + quint32 indexD2{NULL_ID}; // NOLINT(misc-non-private-member-variables-in-classes) + bool retainPieces{false}; // NOLINT(misc-non-private-member-variables-in-classes) + uint version{UNION_VERSSION}; // NOLINT(misc-non-private-member-variables-in-classes) }; /** @@ -75,7 +64,9 @@ struct VToolUnionDetailsInitData : VAbstractToolInitData class VToolUnionDetails : public VAbstractTool { Q_OBJECT // NOLINT + public: + ~VToolUnionDetails() override = default; static auto Create(const QPointer &dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) -> VToolUnionDetails *; static auto Create(VToolUnionDetailsInitData initData) -> VToolUnionDetails *; @@ -94,11 +85,11 @@ public: static const quint8 unionVersion; - virtual auto getTagName() const -> QString override; - virtual void ShowVisualization(bool show) override; - virtual void incrementReferens() override; - virtual void decrementReferens() override; - virtual void GroupVisibility(quint32 object, bool visible) override; + auto getTagName() const -> QString override; + void ShowVisualization(bool show) override; + void incrementReferens() override; + void decrementReferens() override; + void GroupVisibility(quint32 object, bool visible) override; static auto CalcUnitedPath(const VPiecePath &d1Path, const VPiecePath &d2Path, quint32 indexD2, quint32 pRotate) -> QVector>; @@ -106,12 +97,14 @@ public slots: /** * @brief FullUpdateFromFile update tool data form file. */ - virtual void FullUpdateFromFile () override {} - virtual void AllowHover(bool) override {} - virtual void AllowSelecting(bool) override {} + void FullUpdateFromFile() override {} + void AllowHover(bool /*enabled*/) override {} + void AllowSelecting(bool /*enabled*/) override {} + protected: - virtual void AddToFile() override; - virtual void SetVisualization() override {} + void AddToFile() override; + void SetVisualization() override {} + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(VToolUnionDetails) // NOLINT @@ -129,12 +122,12 @@ private: uint version; - VToolUnionDetails(const VToolUnionDetailsInitData &initData, QObject *parent = nullptr); + explicit VToolUnionDetails(const VToolUnionDetailsInitData &initData, QObject *parent = nullptr); - void AddDetail(QDomElement &domElement, const VPiece &d) const; - void AddToModeling(const QDomElement &domElement); + void AddDetail(QDomElement &domElement, const VPiece &d) const; + void AddToModeling(const QDomElement &domElement); auto GetReferenceObjects() const -> QVector; - auto ReferenceObjects(const QDomElement &root, const QString &tag, const QString &attribute) const + static auto ReferenceObjects(const QDomElement &root, const QString &tag, const QString &attribute) -> QVector; }; diff --git a/src/libs/vtools/undocommands/addpatternpiece.cpp b/src/libs/vtools/undocommands/addpatternpiece.cpp index 2bf385fe8..ecea6430e 100644 --- a/src/libs/vtools/undocommands/addpatternpiece.cpp +++ b/src/libs/vtools/undocommands/addpatternpiece.cpp @@ -28,24 +28,21 @@ #include "addpatternpiece.h" -#include "../vmisc/def.h" #include "../ifc/xml/vabstractpattern.h" +#include "../vmisc/def.h" #include "vundocommand.h" //--------------------------------------------------------------------------------------------------------------------- AddPatternPiece::AddPatternPiece(const QDomElement &xml, VAbstractPattern *doc, const QString &namePP, QUndoCommand *parent) - : VUndoCommand(xml, doc, parent), namePP(namePP) + : VUndoCommand(xml, doc, parent), + namePP(namePP) { // cppcheck-suppress unknownMacro SCASSERT(namePP.isEmpty() == false) setText(tr("add pattern piece %1").arg(namePP)); } -//--------------------------------------------------------------------------------------------------------------------- -AddPatternPiece::~AddPatternPiece() -{} - //--------------------------------------------------------------------------------------------------------------------- void AddPatternPiece::undo() { diff --git a/src/libs/vtools/undocommands/addpatternpiece.h b/src/libs/vtools/undocommands/addpatternpiece.h index 0528ac8cf..61d25d35a 100644 --- a/src/libs/vtools/undocommands/addpatternpiece.h +++ b/src/libs/vtools/undocommands/addpatternpiece.h @@ -29,7 +29,6 @@ #ifndef ADDPATTERNPIECE_H #define ADDPATTERNPIECE_H -#include #include #include #include @@ -41,16 +40,18 @@ class AddPatternPiece : public VUndoCommand { Q_OBJECT // NOLINT + public: AddPatternPiece(const QDomElement &xml, VAbstractPattern *doc, const QString &namePP, QUndoCommand *parent = nullptr); - virtual ~AddPatternPiece() override; - virtual void undo() override; - virtual void redo() override; + ~AddPatternPiece() override = default; + void undo() override; + void redo() override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(AddPatternPiece) // NOLINT - QString namePP; + QString namePP; }; #endif // ADDPATTERNPIECE_H diff --git a/src/libs/vtools/undocommands/addpiece.cpp b/src/libs/vtools/undocommands/addpiece.cpp index d43817839..3e9a4ba2f 100644 --- a/src/libs/vtools/undocommands/addpiece.cpp +++ b/src/libs/vtools/undocommands/addpiece.cpp @@ -32,18 +32,15 @@ #include "../vwidgets/vmaingraphicsview.h" //--------------------------------------------------------------------------------------------------------------------- -AddPiece::AddPiece(const QDomElement &xml, VAbstractPattern *doc, VContainer data, VMainGraphicsScene *scene, +AddPiece::AddPiece(const QDomElement &xml, VAbstractPattern *doc, const VContainer &data, VMainGraphicsScene *scene, const QString &drawName, QUndoCommand *parent) - : VUndoCommand(xml, doc, parent), - m_detail(), - m_drawName(drawName), - m_tool(), - m_record(), - m_scene(scene), - m_data(data) + : VUndoCommand(xml, doc, parent), + m_drawName(drawName), + m_scene(scene), + m_data(data) { setText(tr("add detail")); - nodeId = doc->GetParametrId(xml); + nodeId = VAbstractPattern::GetParametrId(xml); m_detail = data.GetPiece(nodeId); m_record = VAbstractTool::GetRecord(nodeId, Tool::Piece, doc); } @@ -74,7 +71,7 @@ void AddPiece::undo() return; } - m_tool = qobject_cast(VAbstractPattern::getTool(nodeId)); + m_tool = qobject_cast(VAbstractPattern::getTool(nodeId)); SCASSERT(not m_tool.isNull()); m_tool->DisconnectOutsideSignals(); m_tool->hide(); diff --git a/src/libs/vtools/undocommands/addpiece.h b/src/libs/vtools/undocommands/addpiece.h index bdfd87848..228f976e6 100644 --- a/src/libs/vtools/undocommands/addpiece.h +++ b/src/libs/vtools/undocommands/addpiece.h @@ -29,7 +29,6 @@ #ifndef ADDPIECE_H #define ADDPIECE_H -#include #include #include #include @@ -43,24 +42,26 @@ class AddPiece : public VUndoCommand { Q_OBJECT // NOLINT + public: - AddPiece(const QDomElement &xml, VAbstractPattern *doc, VContainer data, VMainGraphicsScene *scene, + AddPiece(const QDomElement &xml, VAbstractPattern *doc, const VContainer &data, VMainGraphicsScene *scene, const QString &drawName = QString(), QUndoCommand *parent = nullptr); - virtual ~AddPiece(); + ~AddPiece() override; // cppcheck-suppress unusedFunction - virtual void undo() override; + void undo() override; // cppcheck-suppress unusedFunction - virtual void redo() override; + void redo() override; + private: Q_DISABLE_COPY_MOVE(AddPiece) // NOLINT - VPiece m_detail; + VPiece m_detail{}; QString m_drawName; - QPointer m_tool; - VToolRecord m_record; - VMainGraphicsScene *m_scene; - VContainer m_data; + QPointer m_tool{}; + VToolRecord m_record{}; + VMainGraphicsScene *m_scene; + VContainer m_data; auto GetDetailsSection() const -> QDomElement; }; diff --git a/src/libs/vtools/undocommands/addtocalc.cpp b/src/libs/vtools/undocommands/addtocalc.cpp index 4e65a9373..528188893 100644 --- a/src/libs/vtools/undocommands/addtocalc.cpp +++ b/src/libs/vtools/undocommands/addtocalc.cpp @@ -30,16 +30,17 @@ #include -#include "../vwidgets/vmaingraphicsview.h" #include "../ifc/xml/vabstractpattern.h" -#include "../ifc/ifcdef.h" -#include "../vmisc/vabstractvalapplication.h" #include "../vmisc/customevents.h" +#include "../vmisc/vabstractvalapplication.h" +#include "../vwidgets/vmaingraphicsview.h" #include "vundocommand.h" //--------------------------------------------------------------------------------------------------------------------- AddToCalc::AddToCalc(const QDomElement &xml, VAbstractPattern *doc, QUndoCommand *parent) - : VUndoCommand(xml, doc, parent), nameActivDraw(doc->GetNameActivPP()), cursor(doc->getCursor()) + : VUndoCommand(xml, doc, parent), + nameActivDraw(doc->GetNameActivPP()), + cursor(doc->getCursor()) { setText(tr("add object")); nodeId = VAbstractPattern::GetParametrId(xml); @@ -50,7 +51,7 @@ void AddToCalc::undo() { qCDebug(vUndo, "Undo."); - doc->ChangeActivPP(nameActivDraw);//Without this user will not see this change + doc->ChangeActivPP(nameActivDraw); // Without this user will not see this change QDomElement calcElement; if (doc->GetActivNodeElement(VAbstractPattern::TagCalculation, calcElement)) @@ -80,7 +81,7 @@ void AddToCalc::undo() VAbstractValApplication::VApp()->getSceneView()); if (VAbstractValApplication::VApp()->GetDrawMode() == Draw::Calculation) { - emit doc->SetCurrentPP(nameActivDraw);//Return current pattern piece after undo + emit doc->SetCurrentPP(nameActivDraw); // Return current pattern piece after undo } } @@ -89,7 +90,7 @@ void AddToCalc::redo() { qCDebug(vUndo, "Redo."); - doc->ChangeActivPP(nameActivDraw);//Without this user will not see this change + doc->ChangeActivPP(nameActivDraw); // Without this user will not see this change doc->setCursor(cursor); QDomElement calcElement; @@ -131,7 +132,7 @@ void AddToCalc::RedoFullParsing() emit NeedFullParsing(); if (VAbstractValApplication::VApp()->GetDrawMode() == Draw::Calculation) { - emit doc->SetCurrentPP(nameActivDraw);//Return current pattern piece after undo + emit doc->SetCurrentPP(nameActivDraw); // Return current pattern piece after undo } } else diff --git a/src/libs/vtools/undocommands/addtocalc.h b/src/libs/vtools/undocommands/addtocalc.h index 523a5db67..28388f262 100644 --- a/src/libs/vtools/undocommands/addtocalc.h +++ b/src/libs/vtools/undocommands/addtocalc.h @@ -29,7 +29,6 @@ #ifndef ADDTOCALC_H #define ADDTOCALC_H -#include #include #include #include @@ -41,18 +40,21 @@ class AddToCalc : public VUndoCommand { Q_OBJECT // NOLINT + public: AddToCalc(const QDomElement &xml, VAbstractPattern *doc, QUndoCommand *parent = nullptr); - virtual ~AddToCalc() =default; - virtual void undo() override; - virtual void redo() override; + ~AddToCalc() override = default; + void undo() override; + void redo() override; + protected: - virtual void RedoFullParsing() override; + void RedoFullParsing() override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(AddToCalc) // NOLINT - const QString nameActivDraw; - quint32 cursor; + const QString nameActivDraw; + quint32 cursor; }; #endif // ADDTOCALC_H diff --git a/src/libs/vtools/undocommands/deletepatternpiece.cpp b/src/libs/vtools/undocommands/deletepatternpiece.cpp index 19a3c334c..6e70b80c5 100644 --- a/src/libs/vtools/undocommands/deletepatternpiece.cpp +++ b/src/libs/vtools/undocommands/deletepatternpiece.cpp @@ -31,30 +31,26 @@ #include #include -#include "../vmisc/vabstractvalapplication.h" #include "../ifc/xml/vabstractpattern.h" +#include "../vmisc/vabstractvalapplication.h" #include "vundocommand.h" //--------------------------------------------------------------------------------------------------------------------- DeletePatternPiece::DeletePatternPiece(VAbstractPattern *doc, const QString &namePP, QUndoCommand *parent) - : VUndoCommand(QDomElement(), doc, parent), namePP(namePP), patternPiece(QDomElement()), - previousPPName(QString()) + : VUndoCommand(QDomElement(), doc, parent), + namePP(namePP) { setText(tr("delete pattern piece %1").arg(namePP)); const QDomElement patternP = doc->GetPPElement(namePP); patternPiece = patternP.cloneNode().toElement(); - const QDomElement previousPP = patternP.previousSibling().toElement();//find previous pattern piece + const QDomElement previousPP = patternP.previousSibling().toElement(); // find previous pattern piece if (not previousPP.isNull() && previousPP.tagName() == VAbstractPattern::TagDraw) { - previousPPName = doc->GetParametrString(previousPP, VAbstractPattern::AttrName, QString()); + previousPPName = VAbstractPattern::GetParametrString(previousPP, VAbstractPattern::AttrName, QString()); } } -//--------------------------------------------------------------------------------------------------------------------- -DeletePatternPiece::~DeletePatternPiece() -{} - //--------------------------------------------------------------------------------------------------------------------- void DeletePatternPiece::undo() { @@ -84,7 +80,7 @@ void DeletePatternPiece::undo() emit NeedFullParsing(); if (VAbstractValApplication::VApp()->GetDrawMode() == Draw::Calculation) { - emit doc->SetCurrentPP(namePP);//Without this user will not see this change + emit doc->SetCurrentPP(namePP); // Without this user will not see this change } } @@ -95,7 +91,7 @@ void DeletePatternPiece::redo() if (VAbstractValApplication::VApp()->GetDrawMode() == Draw::Calculation) { - emit doc->SetCurrentPP(namePP);//Without this user will not see this change + emit doc->SetCurrentPP(namePP); // Without this user will not see this change } QDomElement rootElement = doc->documentElement(); const QDomElement patternPieceElement = doc->GetPPElement(namePP); diff --git a/src/libs/vtools/undocommands/deletepatternpiece.h b/src/libs/vtools/undocommands/deletepatternpiece.h index 4c8b80908..079f92d7c 100644 --- a/src/libs/vtools/undocommands/deletepatternpiece.h +++ b/src/libs/vtools/undocommands/deletepatternpiece.h @@ -29,7 +29,6 @@ #ifndef DELETEPATTERNPIECE_H #define DELETEPATTERNPIECE_H -#include #include #include #include @@ -41,17 +40,20 @@ class DeletePatternPiece : public VUndoCommand { Q_OBJECT // NOLINT + public: DeletePatternPiece(VAbstractPattern *doc, const QString &namePP, QUndoCommand *parent = nullptr); - virtual ~DeletePatternPiece() override; - virtual void undo() override; - virtual void redo() override; + ~DeletePatternPiece() override = default; + + void undo() override; + void redo() override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(DeletePatternPiece) // NOLINT - QString namePP; - QDomElement patternPiece; - QString previousPPName; + QString namePP; + QDomElement patternPiece{}; + QString previousPPName{}; }; #endif // DELETEPATTERNPIECE_H diff --git a/src/libs/vtools/undocommands/deltool.cpp b/src/libs/vtools/undocommands/deltool.cpp index bfdae2045..8b8267b88 100644 --- a/src/libs/vtools/undocommands/deltool.cpp +++ b/src/libs/vtools/undocommands/deltool.cpp @@ -30,7 +30,6 @@ #include -#include "../ifc/ifcdef.h" #include "../ifc/xml/vabstractpattern.h" #include "../vmisc/vabstractvalapplication.h" #include "vundocommand.h" @@ -49,12 +48,12 @@ auto FixGroups(QMap groups, const QMap return groups; } -} // namespace +} // namespace //--------------------------------------------------------------------------------------------------------------------- DelTool::DelTool(VAbstractPattern *doc, quint32 id, QUndoCommand *parent) - : VUndoCommand(QDomElement(), doc, parent), - nameActivDraw(doc->GetNameActivPP()) + : VUndoCommand(QDomElement(), doc, parent), + nameActivDraw(doc->GetNameActivPP()) { setText(tr("delete tool")); nodeId = id; @@ -62,19 +61,22 @@ DelTool::DelTool(VAbstractPattern *doc, quint32 id, QUndoCommand *parent) parentNode = doc->ParentNodeById(nodeId); xml = doc->CloneNodeById(nodeId); + QVector> cleanItems; QMap groups = doc->GetGroups(nameActivDraw); auto i = groups.constBegin(); while (i != groups.constEnd()) { VGroupData groupData = i.value(); auto itemRecord = std::find_if(groupData.items.begin(), groupData.items.end(), - [id](const QPair &item) { return item.second == id; }); + [id](const QPair &item) { return item.second == id; }); if (itemRecord != groupData.items.end()) { m_groupsBefore.insert(i.key(), groupData); - QVector> cleanItems; + cleanItems.clear(); + cleanItems.reserve(groupData.items.size()); + for (auto item : groupData.items) { if (item.second != id) @@ -106,8 +108,8 @@ void DelTool::undo() emit NeedFullParsing(); if (VAbstractValApplication::VApp()->GetDrawMode() == Draw::Calculation) - {//Keep last! - emit doc->SetCurrentPP(nameActivDraw);//Without this user will not see this change + { // Keep last! + emit doc->SetCurrentPP(nameActivDraw); // Without this user will not see this change } } @@ -117,8 +119,8 @@ void DelTool::redo() qCDebug(vUndo, "Redo."); if (VAbstractValApplication::VApp()->GetDrawMode() == Draw::Calculation) - {//Keep first! - emit doc->SetCurrentPP(nameActivDraw);//Without this user will not see this change + { // Keep first! + emit doc->SetCurrentPP(nameActivDraw); // Without this user will not see this change } QDomElement domElement = doc->NodeById(nodeId); parentNode.removeChild(domElement); diff --git a/src/libs/vtools/undocommands/deltool.h b/src/libs/vtools/undocommands/deltool.h index da045be9f..cb46daff6 100644 --- a/src/libs/vtools/undocommands/deltool.h +++ b/src/libs/vtools/undocommands/deltool.h @@ -29,7 +29,6 @@ #ifndef DELTOOL_H #define DELTOOL_H -#include #include #include #include @@ -41,16 +40,18 @@ class DelTool : public VUndoCommand { Q_OBJECT // NOLINT + public: DelTool(VAbstractPattern *doc, quint32 id, QUndoCommand *parent = nullptr); - virtual ~DelTool() override =default; - virtual void undo() override; - virtual void redo() override; + ~DelTool() override = default; + void undo() override; + void redo() override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(DelTool) // NOLINT - QDomNode parentNode{}; - quint32 siblingId{NULL_ID}; + QDomNode parentNode{}; + quint32 siblingId{NULL_ID}; const QString nameActivDraw; QMap m_groupsBefore{}; QMap m_groupsAfter{}; diff --git a/src/libs/vtools/undocommands/label/moveabstractlabel.h b/src/libs/vtools/undocommands/label/moveabstractlabel.h index e66084a55..99e607a8e 100644 --- a/src/libs/vtools/undocommands/label/moveabstractlabel.h +++ b/src/libs/vtools/undocommands/label/moveabstractlabel.h @@ -29,7 +29,6 @@ #ifndef MOVEABSTRACTLABEL_H #define MOVEABSTRACTLABEL_H -#include #include #include #include @@ -42,12 +41,13 @@ class QGraphicsScene; class MoveAbstractLabel : public VUndoCommand { Q_OBJECT // NOLINT + public: MoveAbstractLabel(VAbstractPattern *doc, quint32 pointId, const QPointF &pos, QUndoCommand *parent = nullptr); - virtual ~MoveAbstractLabel()=default; + ~MoveAbstractLabel() = default; - virtual void undo() override; - virtual void redo() override; + void undo() override; + void redo() override; auto GetPointId() const -> quint32; auto GetNewPos() const -> QPointF; @@ -56,7 +56,8 @@ protected: QPointF m_oldPos; QPointF m_newPos; - virtual void Do(const QPointF &pos)=0; + virtual void Do(const QPointF &pos) = 0; + private: Q_DISABLE_COPY_MOVE(MoveAbstractLabel) // NOLINT }; diff --git a/src/libs/vtools/undocommands/label/movedoublelabel.h b/src/libs/vtools/undocommands/label/movedoublelabel.h index 4aa3b8d7e..4ef720599 100644 --- a/src/libs/vtools/undocommands/label/movedoublelabel.h +++ b/src/libs/vtools/undocommands/label/movedoublelabel.h @@ -29,7 +29,6 @@ #ifndef MOVEDOUBLELABEL_H #define MOVEDOUBLELABEL_H -#include #include #include #include @@ -37,30 +36,36 @@ #include "moveabstractlabel.h" -enum class MoveDoublePoint: qint8 { FirstPoint, SecondPoint }; +enum class MoveDoublePoint : qint8 +{ + FirstPoint, + SecondPoint +}; class MoveDoubleLabel : public MoveAbstractLabel { Q_OBJECT // NOLINT -public: - MoveDoubleLabel(VAbstractPattern *doc, const QPointF &pos, MoveDoublePoint type, - quint32 toolId, quint32 pointId, QUndoCommand *parent = nullptr); - virtual ~MoveDoubleLabel()=default; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; +public: + MoveDoubleLabel(VAbstractPattern *doc, const QPointF &pos, MoveDoublePoint type, quint32 toolId, quint32 pointId, + QUndoCommand *parent = nullptr); + ~MoveDoubleLabel() = default; + + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; auto GetToolId() const -> quint32; auto GetPointType() const -> MoveDoublePoint; protected: - virtual void Do(const QPointF &pos) override; + void Do(const QPointF &pos) override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(MoveDoubleLabel) // NOLINT MoveDoublePoint m_type; quint32 m_idTool; - //Need for resizing scene rect + // Need for resizing scene rect QGraphicsScene *m_scene; }; diff --git a/src/libs/vtools/undocommands/label/movelabel.h b/src/libs/vtools/undocommands/label/movelabel.h index 3c03c3c70..00299f70b 100644 --- a/src/libs/vtools/undocommands/label/movelabel.h +++ b/src/libs/vtools/undocommands/label/movelabel.h @@ -29,7 +29,6 @@ #ifndef MOVELABEL_H #define MOVELABEL_H -#include #include #include #include @@ -40,19 +39,21 @@ class MoveLabel : public MoveAbstractLabel { Q_OBJECT // NOLINT + public: MoveLabel(VAbstractPattern *doc, const QPointF &pos, const quint32 &id, QUndoCommand *parent = nullptr); - virtual ~MoveLabel()=default; + ~MoveLabel() = default; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; protected: - virtual void Do(const QPointF &pos) override; + void Do(const QPointF &pos) override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(MoveLabel) // NOLINT - //Need for resizing scene rect + // Need for resizing scene rect QGraphicsScene *m_scene; }; diff --git a/src/libs/vtools/undocommands/label/operationmovelabel.h b/src/libs/vtools/undocommands/label/operationmovelabel.h index 03c72b524..b208efb0c 100644 --- a/src/libs/vtools/undocommands/label/operationmovelabel.h +++ b/src/libs/vtools/undocommands/label/operationmovelabel.h @@ -29,7 +29,6 @@ #ifndef OPERATIONMOVELABEL_H #define OPERATIONMOVELABEL_H -#include #include #include #include @@ -41,23 +40,25 @@ class OperationMoveLabel : public MoveAbstractLabel { Q_OBJECT // NOLINT + public: OperationMoveLabel(quint32 idTool, VAbstractPattern *doc, const QPointF &pos, quint32 idPoint, - QUndoCommand *parent = nullptr); - virtual ~OperationMoveLabel()=default; + QUndoCommand *parent = nullptr); + ~OperationMoveLabel() override = default; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; auto GetToolId() const -> quint32; protected: - virtual void Do(const QPointF &pos) override; + void Do(const QPointF &pos) override; + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(OperationMoveLabel) // NOLINT quint32 m_idTool; - //Need for resizing scene rect + // Need for resizing scene rect QGraphicsScene *m_scene; }; diff --git a/src/libs/vtools/undocommands/movepiece.h b/src/libs/vtools/undocommands/movepiece.h index ec822f451..168412fd5 100644 --- a/src/libs/vtools/undocommands/movepiece.h +++ b/src/libs/vtools/undocommands/movepiece.h @@ -29,7 +29,6 @@ #ifndef MOVEDETAIL_H #define MOVEDETAIL_H -#include #include #include #include @@ -42,16 +41,17 @@ class QGraphicsScene; class MovePiece : public VUndoCommand { Q_OBJECT // NOLINT + public: MovePiece(VAbstractPattern *doc, const double &x, const double &y, const quint32 &id, QGraphicsScene *scene, - QUndoCommand *parent = nullptr); - virtual ~MovePiece()=default; + QUndoCommand *parent = nullptr); + ~MovePiece() = default; - virtual void undo() override; - virtual void redo() override; + void undo() override; + void redo() override; // cppcheck-suppress unusedFunction - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; void Do(qreal x, qreal y); @@ -63,10 +63,10 @@ private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(MovePiece) // NOLINT - double m_oldX; - double m_oldY; - double m_newX; - double m_newY; + double m_oldX; + double m_oldY; + double m_newX; + double m_newY; QGraphicsScene *m_scene; void SaveCoordinates(QDomElement &domElement, double x, double y); diff --git a/src/libs/vtools/undocommands/movespline.cpp b/src/libs/vtools/undocommands/movespline.cpp index 8da6cf2e0..a083620f5 100644 --- a/src/libs/vtools/undocommands/movespline.cpp +++ b/src/libs/vtools/undocommands/movespline.cpp @@ -34,7 +34,6 @@ #include "../ifc/xml/vabstractpattern.h" #include "../vmisc/vabstractvalapplication.h" #include "../vmisc/def.h" -#include "../vwidgets/vmaingraphicsview.h" #include "../vgeometry/vpointf.h" #include "../vgeometry/vspline.h" #include "vundocommand.h" diff --git a/src/libs/vtools/undocommands/movespline.h b/src/libs/vtools/undocommands/movespline.h index 988fb5857..818c124e0 100644 --- a/src/libs/vtools/undocommands/movespline.h +++ b/src/libs/vtools/undocommands/movespline.h @@ -29,7 +29,6 @@ #ifndef MOVESPLINE_H #define MOVESPLINE_H -#include #include #include #include @@ -43,24 +42,28 @@ class QGraphicsScene; class MoveSpline : public VUndoCommand { Q_OBJECT // NOLINT + public: MoveSpline(VAbstractPattern *doc, const VSpline &oldSpl, const VSpline &newSpl, const quint32 &id, QUndoCommand *parent = nullptr); - virtual ~MoveSpline() override; - virtual void undo() override; - virtual void redo() override; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + ~MoveSpline() override; + + void undo() override; + void redo() override; + + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; + auto getSplineId() const -> quint32; auto getNewSpline() const -> VSpline; private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(MoveSpline) // NOLINT - VSpline oldSpline; - VSpline newSpline; + VSpline oldSpline; + VSpline newSpline; QGraphicsScene *scene; - void Do(const VSpline &spl); + void Do(const VSpline &spl); }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/undocommands/movesplinepath.h b/src/libs/vtools/undocommands/movesplinepath.h index 56fc2597c..adcefe5ff 100644 --- a/src/libs/vtools/undocommands/movesplinepath.h +++ b/src/libs/vtools/undocommands/movesplinepath.h @@ -29,7 +29,6 @@ #ifndef MOVESPLINEPATH_H #define MOVESPLINEPATH_H -#include #include #include #include @@ -43,14 +42,18 @@ class QGraphicsScene; class MoveSplinePath : public VUndoCommand { Q_OBJECT // NOLINT + public: MoveSplinePath(VAbstractPattern *doc, const VSplinePath &oldSplPath, const VSplinePath &newSplPath, const quint32 &id, QUndoCommand *parent = nullptr); - virtual ~MoveSplinePath() =default; - virtual void undo() override; - virtual void redo() override; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + ~MoveSplinePath() = default; + + void undo() override; + void redo() override; + + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; + auto getSplinePathId() const -> quint32; auto getNewSplinePath() const -> VSplinePath; @@ -60,7 +63,7 @@ private: VSplinePath oldSplinePath; VSplinePath newSplinePath; QGraphicsScene *scene; - void Do(const VSplinePath &splPath); + void Do(const VSplinePath &splPath); }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/undocommands/movespoint.h b/src/libs/vtools/undocommands/movespoint.h index 152f58004..a9eacef2b 100644 --- a/src/libs/vtools/undocommands/movespoint.h +++ b/src/libs/vtools/undocommands/movespoint.h @@ -29,7 +29,6 @@ #ifndef MOVESPOINT_H #define MOVESPOINT_H -#include #include #include #include @@ -42,25 +41,31 @@ class QGraphicsScene; class MoveSPoint : public VUndoCommand { Q_OBJECT // NOLINT + public: MoveSPoint(VAbstractPattern *doc, const double &x, const double &y, const quint32 &id, QGraphicsScene *scene, QUndoCommand *parent = nullptr); - virtual ~MoveSPoint() override; - virtual void undo() override; - virtual void redo() override; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + ~MoveSPoint() override; + + void undo() override; + void redo() override; + + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; + auto getSPointId() const -> quint32; auto getNewX() const -> double; auto getNewY() const -> double; - void Do(double x, double y); + + void Do(double x, double y); + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(MoveSPoint) // NOLINT - double oldX; - double oldY; - double newX; - double newY; + double oldX; + double oldY; + double newX; + double newY; QGraphicsScene *scene; }; diff --git a/src/libs/vtools/undocommands/renamepp.h b/src/libs/vtools/undocommands/renamepp.h index 243d6548a..643fc203a 100644 --- a/src/libs/vtools/undocommands/renamepp.h +++ b/src/libs/vtools/undocommands/renamepp.h @@ -29,7 +29,6 @@ #ifndef RENAMEPP_H #define RENAMEPP_H -#include #include #include #include @@ -37,17 +36,20 @@ #include "vundocommand.h" -class RenamePP :public VUndoCommand +class RenamePP : public VUndoCommand { Q_OBJECT // NOLINT + public: RenamePP(VAbstractPattern *doc, const QString &newPPname, QComboBox *combo, QUndoCommand *parent = nullptr); - virtual ~RenamePP() override; + ~RenamePP() override; + + void undo() override; + void redo() override; + + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; - virtual void undo() override; - virtual void redo() override; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; auto getNewPPname() const -> QString; auto getOldPPname() const -> QString; @@ -55,9 +57,9 @@ private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(RenamePP) // NOLINT QComboBox *combo; - QString newPPname; - QString oldPPname; - void ChangeName(const QString &oldName, const QString &newName); + QString newPPname; + QString oldPPname; + void ChangeName(const QString &oldName, const QString &newName); }; //--------------------------------------------------------------------------------------------------------------------- diff --git a/src/libs/vtools/undocommands/savetooloptions.h b/src/libs/vtools/undocommands/savetooloptions.h index 22272c9a1..1584e274a 100644 --- a/src/libs/vtools/undocommands/savetooloptions.h +++ b/src/libs/vtools/undocommands/savetooloptions.h @@ -29,7 +29,6 @@ #ifndef SAVETOOLOPTIONS_H #define SAVETOOLOPTIONS_H -#include #include #include #include @@ -41,15 +40,18 @@ class SaveToolOptions : public VUndoCommand { Q_OBJECT // NOLINT + public: SaveToolOptions(const QDomElement &oldXml, const QDomElement &newXml, const QList &oldDependencies, const QList &newDependencies, VAbstractPattern *doc, const quint32 &id, QUndoCommand *parent = nullptr); - virtual ~SaveToolOptions() = default; - virtual void undo() override; - virtual void redo() override; - virtual auto mergeWith(const QUndoCommand *command) -> bool override; - virtual auto id() const -> int override; + ~SaveToolOptions() override = default; + + void undo() override; + void redo() override; + + auto mergeWith(const QUndoCommand *command) -> bool override; + auto id() const -> int override; auto getNewXml() const -> QDomElement; auto getToolId() const -> quint32; @@ -58,8 +60,8 @@ public: private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(SaveToolOptions) // NOLINT - const QDomElement oldXml; - QDomElement newXml; + const QDomElement oldXml; + QDomElement newXml; const QList oldDependencies; const QList newDependencies; diff --git a/src/libs/vtools/undocommands/togglepiecestate.h b/src/libs/vtools/undocommands/togglepiecestate.h index b267a203c..351924260 100644 --- a/src/libs/vtools/undocommands/togglepiecestate.h +++ b/src/libs/vtools/undocommands/togglepiecestate.h @@ -29,7 +29,6 @@ #ifndef TOGGLEDETAILINLAYOUT_H #define TOGGLEDETAILINLAYOUT_H -#include #include #include #include @@ -40,45 +39,55 @@ class TogglePieceInLayout : public VUndoCommand { Q_OBJECT // NOLINT + public: TogglePieceInLayout(quint32 id, bool state, VContainer *data, VAbstractPattern *doc, QUndoCommand *parent = nullptr); - virtual ~TogglePieceInLayout() = default; - virtual void undo() override; - virtual void redo() override; + ~TogglePieceInLayout() override = default; + + void undo() override; + void redo() override; + signals: void Toggled(quint32 id); + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(TogglePieceInLayout) // NOLINT - quint32 m_id; + quint32 m_id; VContainer *m_data; - bool m_oldState; - bool m_newState; + bool m_oldState; + bool m_newState; void Do(bool state); }; -enum class ForceForbidFlippingType : qint8 {ForceFlipping, ForbidFlipping}; +enum class ForceForbidFlippingType : qint8 +{ + ForceFlipping, + ForbidFlipping +}; class TogglePieceForceForbidFlipping : public VUndoCommand { Q_OBJECT // NOLINT + public: TogglePieceForceForbidFlipping(quint32 id, bool state, ForceForbidFlippingType type, VContainer *data, VAbstractPattern *doc, QUndoCommand *parent = nullptr); virtual ~TogglePieceForceForbidFlipping() = default; virtual void undo() override; virtual void redo() override; + private: Q_DISABLE_COPY_MOVE(TogglePieceForceForbidFlipping) // NOLINT - quint32 m_id; + quint32 m_id; VContainer *m_data; ForceForbidFlippingType m_type; - bool m_oldForceState; - bool m_newForceState; - bool m_oldForbidState; - bool m_newForbidState; + bool m_oldForceState; + bool m_newForceState; + bool m_oldForbidState; + bool m_newForbidState; }; #endif // TOGGLEDETAILINLAYOUT_H diff --git a/src/libs/vtools/undocommands/undogroup.h b/src/libs/vtools/undocommands/undogroup.h index aae4bc345..f778d824d 100644 --- a/src/libs/vtools/undocommands/undogroup.h +++ b/src/libs/vtools/undocommands/undogroup.h @@ -28,8 +28,6 @@ #ifndef UNDOGROUP_H #define UNDOGROUP_H - -#include #include #include #include @@ -41,13 +39,17 @@ class AddGroup : public VUndoCommand { Q_OBJECT // NOLINT + public: AddGroup(const QDomElement &xml, VAbstractPattern *doc, QUndoCommand *parent = nullptr); - virtual ~AddGroup()=default; - virtual void undo() override; - virtual void redo() override; + ~AddGroup() override = default; + + void undo() override; + void redo() override; + signals: void UpdateGroups(); + private: // cppcheck-suppress unknownMacro Q_DISABLE_COPY_MOVE(AddGroup) // NOLINT @@ -57,13 +59,15 @@ private: class RenameGroup : public VUndoCommand { Q_OBJECT // NOLINT + public: RenameGroup(VAbstractPattern *doc, quint32 id, const QString &name, QUndoCommand *parent = nullptr); - virtual ~RenameGroup()=default; + virtual ~RenameGroup() = default; virtual void undo() override; virtual void redo() override; signals: void UpdateGroups(); + private: Q_DISABLE_COPY_MOVE(RenameGroup) // NOLINT QString newName; @@ -73,14 +77,16 @@ private: class ChangeGroupOptions : public VUndoCommand { Q_OBJECT // NOLINT + public: ChangeGroupOptions(VAbstractPattern *doc, quint32 id, const QString &name, const QStringList &tags, QUndoCommand *parent = nullptr); - virtual ~ChangeGroupOptions()=default; + virtual ~ChangeGroupOptions() = default; virtual void undo() override; virtual void redo() override; signals: void UpdateGroups(); + private: Q_DISABLE_COPY_MOVE(ChangeGroupOptions) // NOLINT QString newName; @@ -92,15 +98,18 @@ private: class AddItemToGroup : public VUndoCommand { Q_OBJECT // NOLINT + public: AddItemToGroup(const QDomElement &xml, VAbstractPattern *doc, quint32 groupId, QUndoCommand *parent = nullptr); - virtual ~AddItemToGroup()=default; + virtual ~AddItemToGroup() = default; virtual void undo() override; virtual void redo() override; signals: void UpdateGroups(); + protected: void performUndoRedo(bool isUndo); + private: Q_DISABLE_COPY_MOVE(AddItemToGroup) // NOLINT const QString nameActivDraw; @@ -109,26 +118,30 @@ private: class RemoveItemFromGroup : public VUndoCommand { Q_OBJECT // NOLINT + public: RemoveItemFromGroup(const QDomElement &xml, VAbstractPattern *doc, quint32 groupId, QUndoCommand *parent = nullptr); - virtual ~RemoveItemFromGroup()=default; + virtual ~RemoveItemFromGroup() = default; virtual void undo() override; virtual void redo() override; signals: void UpdateGroups(); + protected: void performUndoRedo(bool isUndo); + private: Q_DISABLE_COPY_MOVE(RemoveItemFromGroup) // NOLINT const QString nameActivDraw; }; -class ChangeGroupVisibility : public VUndoCommand +class ChangeGroupVisibility : public VUndoCommand { Q_OBJECT // NOLINT + public: ChangeGroupVisibility(VAbstractPattern *doc, vidtype id, bool visible, QUndoCommand *parent = nullptr); - virtual ~ChangeGroupVisibility()=default; + virtual ~ChangeGroupVisibility() = default; virtual void undo() override; virtual void redo() override; @@ -145,13 +158,14 @@ private: void Do(bool visible); }; -class ChangeMultipleGroupsVisibility : public VUndoCommand +class ChangeMultipleGroupsVisibility : public VUndoCommand { Q_OBJECT // NOLINT + public: ChangeMultipleGroupsVisibility(VAbstractPattern *doc, const QVector &groups, bool visible, QUndoCommand *parent = nullptr); - virtual ~ChangeMultipleGroupsVisibility() =default; + virtual ~ChangeMultipleGroupsVisibility() = default; virtual void undo() override; virtual void redo() override; @@ -170,13 +184,15 @@ private: class DelGroup : public VUndoCommand { Q_OBJECT // NOLINT + public: DelGroup(VAbstractPattern *doc, quint32 id, QUndoCommand *parent = nullptr); - virtual ~DelGroup()=default; + virtual ~DelGroup() = default; virtual void undo() override; virtual void redo() override; signals: void UpdateGroups(); + private: Q_DISABLE_COPY_MOVE(DelGroup) // NOLINT const QString nameActivDraw; diff --git a/src/libs/vtools/undocommands/vundocommand.cpp b/src/libs/vtools/undocommands/vundocommand.cpp index 8e4fff8e6..45f93681f 100644 --- a/src/libs/vtools/undocommands/vundocommand.cpp +++ b/src/libs/vtools/undocommands/vundocommand.cpp @@ -28,14 +28,14 @@ #include "vundocommand.h" -#include #include +#include #include "../ifc/ifcdef.h" -#include "../vmisc/def.h" -#include "../vmisc/customevents.h" -#include "../vpatterndb/vpiecenode.h" #include "../tools/drawTools/operation/vabstractoperation.h" +#include "../vmisc/customevents.h" +#include "../vmisc/def.h" +#include "../vpatterndb/vpiecenode.h" QT_WARNING_PUSH QT_WARNING_DISABLE_CLANG("-Wmissing-prototypes") @@ -47,7 +47,12 @@ QT_WARNING_POP //--------------------------------------------------------------------------------------------------------------------- VUndoCommand::VUndoCommand(const QDomElement &xml, VAbstractPattern *doc, QUndoCommand *parent) - :QObject(), QUndoCommand(parent), xml(xml), doc(doc), nodeId(NULL_ID), redoFlag(false) + : QObject(), + QUndoCommand(parent), + xml(xml), + doc(doc), + nodeId(NULL_ID), + redoFlag(false) { SCASSERT(doc != nullptr) } @@ -117,6 +122,7 @@ void VUndoCommand::DecrementReferences(const QVector &nodes) const void VUndoCommand::IncrementReferences(const QVector &nodes) const { QVector n; + n.reserve(nodes.size()); for (qint32 i = 0; i < nodes.size(); ++i) { @@ -130,6 +136,7 @@ void VUndoCommand::IncrementReferences(const QVector &nodes) con void VUndoCommand::DecrementReferences(const QVector &nodes) const { QVector n; + n.reserve(nodes.size()); for (qint32 i = 0; i < nodes.size(); ++i) { @@ -143,6 +150,7 @@ void VUndoCommand::DecrementReferences(const QVector &nodes) con void VUndoCommand::IncrementReferences(const QVector &nodes) const { QVector n; + n.reserve(nodes.size()); for (qint32 i = 0; i < nodes.size(); ++i) { @@ -156,6 +164,7 @@ void VUndoCommand::IncrementReferences(const QVector &nodes) const void VUndoCommand::DecrementReferences(const QVector &nodes) const { QVector n; + n.reserve(nodes.size()); for (qint32 i = 0; i < nodes.size(); ++i) { @@ -201,5 +210,5 @@ auto VUndoCommand::GetDestinationObject(quint32 idTool, quint32 idPoint) const - } } - return QDomElement(); + return {}; } diff --git a/src/libs/vtools/undocommands/vundocommand.h b/src/libs/vtools/undocommands/vundocommand.h index 6d9d5d6a9..5a00462b7 100644 --- a/src/libs/vtools/undocommands/vundocommand.h +++ b/src/libs/vtools/undocommands/vundocommand.h @@ -29,7 +29,6 @@ #ifndef VUNDOCOMMAND_H #define VUNDOCOMMAND_H -#include #include #include #include @@ -42,7 +41,7 @@ Q_DECLARE_LOGGING_CATEGORY(vUndo) -enum class UndoCommand: qint8 +enum class UndoCommand : qint8 { AddPatternPiece, AddToCalc, @@ -64,37 +63,38 @@ enum class UndoCommand: qint8 MoveBackGroundImage, ScaleBackGroundImage, RotateBackGroundImage - }; +}; class VPattern; class VUndoCommand : public QObject, public QUndoCommand { Q_OBJECT // NOLINT + public: VUndoCommand(const QDomElement &xml, VAbstractPattern *doc, QUndoCommand *parent = nullptr); - virtual ~VUndoCommand() =default; + virtual ~VUndoCommand() = default; signals: void ClearScene(); void NeedFullParsing(); void NeedLiteParsing(const Document &parse); + protected: - QDomElement xml; + QDomElement xml; VAbstractPattern *doc; - quint32 nodeId; - bool redoFlag; + quint32 nodeId; + bool redoFlag; virtual void RedoFullParsing(); - void UndoDeleteAfterSibling(QDomNode &parentNode, quint32 siblingId, - const QString &tagName = QString()) const; + void UndoDeleteAfterSibling(QDomNode &parentNode, quint32 siblingId, const QString &tagName = QString()) const; - void IncrementReferences(const QVector &nodes) const; - void DecrementReferences(const QVector &nodes) const; + void IncrementReferences(const QVector &nodes) const; + void DecrementReferences(const QVector &nodes) const; - void IncrementReferences(const QVector &nodes) const; - void DecrementReferences(const QVector &nodes) const; + void IncrementReferences(const QVector &nodes) const; + void DecrementReferences(const QVector &nodes) const; - void IncrementReferences(const QVector &nodes) const; - void DecrementReferences(const QVector &nodes) const; + void IncrementReferences(const QVector &nodes) const; + void DecrementReferences(const QVector &nodes) const; auto GetDestinationObject(quint32 idTool, quint32 idPoint) const -> QDomElement; diff --git a/src/libs/vtools/visualization/line/operation/vistoolmove.h b/src/libs/vtools/visualization/line/operation/vistoolmove.h index 7b94a6a41..79c3d0d65 100644 --- a/src/libs/vtools/visualization/line/operation/vistoolmove.h +++ b/src/libs/vtools/visualization/line/operation/vistoolmove.h @@ -29,7 +29,7 @@ #ifndef VISTOOLMOVE_H #define VISTOOLMOVE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/operation/vistoolrotation.h b/src/libs/vtools/visualization/line/operation/vistoolrotation.h index 488361d8a..537be5e5e 100644 --- a/src/libs/vtools/visualization/line/operation/vistoolrotation.h +++ b/src/libs/vtools/visualization/line/operation/vistoolrotation.h @@ -29,7 +29,7 @@ #ifndef VISTOOLROTATION_H #define VISTOOLROTATION_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/visline.h b/src/libs/vtools/visualization/line/visline.h index 0b42f103a..f879ed785 100644 --- a/src/libs/vtools/visualization/line/visline.h +++ b/src/libs/vtools/visualization/line/visline.h @@ -29,7 +29,7 @@ #ifndef VISLINE_H #define VISLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolalongline.h b/src/libs/vtools/visualization/line/vistoolalongline.h index 41afb2f9b..c50704c42 100644 --- a/src/libs/vtools/visualization/line/vistoolalongline.h +++ b/src/libs/vtools/visualization/line/vistoolalongline.h @@ -29,7 +29,7 @@ #ifndef VISTOOLALONGLINE_H #define VISTOOLALONGLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolbisector.h b/src/libs/vtools/visualization/line/vistoolbisector.h index 9fd48a580..e04869076 100644 --- a/src/libs/vtools/visualization/line/vistoolbisector.h +++ b/src/libs/vtools/visualization/line/vistoolbisector.h @@ -29,7 +29,7 @@ #ifndef VISTOOLBISECTOR_H #define VISTOOLBISECTOR_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolcurveintersectaxis.h b/src/libs/vtools/visualization/line/vistoolcurveintersectaxis.h index 52607537e..c1f925f56 100644 --- a/src/libs/vtools/visualization/line/vistoolcurveintersectaxis.h +++ b/src/libs/vtools/visualization/line/vistoolcurveintersectaxis.h @@ -29,7 +29,7 @@ #ifndef VISTOOLCURVEINTERSECTAXIS_H #define VISTOOLCURVEINTERSECTAXIS_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolendline.h b/src/libs/vtools/visualization/line/vistoolendline.h index 74fdab706..16e9505b0 100644 --- a/src/libs/vtools/visualization/line/vistoolendline.h +++ b/src/libs/vtools/visualization/line/vistoolendline.h @@ -29,7 +29,7 @@ #ifndef VISTOOLENDLINE_H #define VISTOOLENDLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolheight.h b/src/libs/vtools/visualization/line/vistoolheight.h index 448d3f266..654ac8bd8 100644 --- a/src/libs/vtools/visualization/line/vistoolheight.h +++ b/src/libs/vtools/visualization/line/vistoolheight.h @@ -29,7 +29,7 @@ #ifndef VISTOOLHEIGHT_H #define VISTOOLHEIGHT_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolline.h b/src/libs/vtools/visualization/line/vistoolline.h index 7b81790e3..28857390b 100644 --- a/src/libs/vtools/visualization/line/vistoolline.h +++ b/src/libs/vtools/visualization/line/vistoolline.h @@ -29,7 +29,7 @@ #ifndef VGRAPHICSLINEITEM_H #define VGRAPHICSLINEITEM_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoollineintersect.h b/src/libs/vtools/visualization/line/vistoollineintersect.h index 2c9b299b5..4648d1324 100644 --- a/src/libs/vtools/visualization/line/vistoollineintersect.h +++ b/src/libs/vtools/visualization/line/vistoollineintersect.h @@ -29,7 +29,7 @@ #ifndef VISTOOLLINEINTERSECT_H #define VISTOOLLINEINTERSECT_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoollineintersectaxis.h b/src/libs/vtools/visualization/line/vistoollineintersectaxis.h index 2623d3a61..828889fa1 100644 --- a/src/libs/vtools/visualization/line/vistoollineintersectaxis.h +++ b/src/libs/vtools/visualization/line/vistoollineintersectaxis.h @@ -29,7 +29,7 @@ #ifndef VISTOOLLINEINTERSECTAXIS_H #define VISTOOLLINEINTERSECTAXIS_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolnormal.h b/src/libs/vtools/visualization/line/vistoolnormal.h index dde98a676..6721c2291 100644 --- a/src/libs/vtools/visualization/line/vistoolnormal.h +++ b/src/libs/vtools/visualization/line/vistoolnormal.h @@ -29,7 +29,7 @@ #ifndef VISTOOLNORMAL_H #define VISTOOLNORMAL_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.h b/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.h index 9677971a0..a8cf50492 100644 --- a/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.h +++ b/src/libs/vtools/visualization/line/vistoolpointfromarcandtangent.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTFROMARCANDTANGENT_H #define VISTOOLPOINTFROMARCANDTANGENT_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolpointfromcircleandtangent.h b/src/libs/vtools/visualization/line/vistoolpointfromcircleandtangent.h index ec53e7631..bc8a794cf 100644 --- a/src/libs/vtools/visualization/line/vistoolpointfromcircleandtangent.h +++ b/src/libs/vtools/visualization/line/vistoolpointfromcircleandtangent.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTFROMCIRCLEANDTANGENT_H #define VISTOOLPOINTFROMCIRCLEANDTANGENT_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolpointofcontact.h b/src/libs/vtools/visualization/line/vistoolpointofcontact.h index cf1438ac3..fc7de4133 100644 --- a/src/libs/vtools/visualization/line/vistoolpointofcontact.h +++ b/src/libs/vtools/visualization/line/vistoolpointofcontact.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTOFCONTACT_H #define VISTOOLPOINTOFCONTACT_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolpointofintersection.h b/src/libs/vtools/visualization/line/vistoolpointofintersection.h index 5294ea94c..f567141a4 100644 --- a/src/libs/vtools/visualization/line/vistoolpointofintersection.h +++ b/src/libs/vtools/visualization/line/vistoolpointofintersection.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTOFINTERSECTION_H #define VISTOOLPOINTOFINTERSECTION_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolpointofintersectionarcs.h b/src/libs/vtools/visualization/line/vistoolpointofintersectionarcs.h index b6ba69900..7f19af7ec 100644 --- a/src/libs/vtools/visualization/line/vistoolpointofintersectionarcs.h +++ b/src/libs/vtools/visualization/line/vistoolpointofintersectionarcs.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTOFINTERSECTIONARCS_H #define VISTOOLPOINTOFINTERSECTIONARCS_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolpointofintersectioncircles.h b/src/libs/vtools/visualization/line/vistoolpointofintersectioncircles.h index 89d13ab51..ab95f3929 100644 --- a/src/libs/vtools/visualization/line/vistoolpointofintersectioncircles.h +++ b/src/libs/vtools/visualization/line/vistoolpointofintersectioncircles.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTOFINTERSECTIONCIRCLES_H #define VISTOOLPOINTOFINTERSECTIONCIRCLES_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistoolshoulderpoint.h b/src/libs/vtools/visualization/line/vistoolshoulderpoint.h index 48a2e2811..7fcac8763 100644 --- a/src/libs/vtools/visualization/line/vistoolshoulderpoint.h +++ b/src/libs/vtools/visualization/line/vistoolshoulderpoint.h @@ -29,7 +29,7 @@ #ifndef VISTOOLSHOULDERPOINT_H #define VISTOOLSHOULDERPOINT_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistooltriangle.h b/src/libs/vtools/visualization/line/vistooltriangle.h index 94bf1f2ea..bb66270b8 100644 --- a/src/libs/vtools/visualization/line/vistooltriangle.h +++ b/src/libs/vtools/visualization/line/vistooltriangle.h @@ -29,7 +29,7 @@ #ifndef VISTOOLTRIANGLE_H #define VISTOOLTRIANGLE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/line/vistooltruedarts.h b/src/libs/vtools/visualization/line/vistooltruedarts.h index d6988d34c..b401b697e 100644 --- a/src/libs/vtools/visualization/line/vistooltruedarts.h +++ b/src/libs/vtools/visualization/line/vistooltruedarts.h @@ -29,7 +29,7 @@ #ifndef VISTOOLTRUEDARTS_H #define VISTOOLTRUEDARTS_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vispath.h b/src/libs/vtools/visualization/path/vispath.h index df85d7518..e7c12ceab 100644 --- a/src/libs/vtools/visualization/path/vispath.h +++ b/src/libs/vtools/visualization/path/vispath.h @@ -29,7 +29,7 @@ #ifndef VISPATH_H #define VISPATH_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolarc.h b/src/libs/vtools/visualization/path/vistoolarc.h index 18daacb0a..ab19447e9 100644 --- a/src/libs/vtools/visualization/path/vistoolarc.h +++ b/src/libs/vtools/visualization/path/vistoolarc.h @@ -29,7 +29,7 @@ #ifndef VISTOOLARC_H #define VISTOOLARC_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolarcwithlength.h b/src/libs/vtools/visualization/path/vistoolarcwithlength.h index 562c31d17..516efb78c 100644 --- a/src/libs/vtools/visualization/path/vistoolarcwithlength.h +++ b/src/libs/vtools/visualization/path/vistoolarcwithlength.h @@ -29,7 +29,7 @@ #ifndef VISTOOLARCWITHLENGTH_H #define VISTOOLARCWITHLENGTH_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolcubicbezier.h b/src/libs/vtools/visualization/path/vistoolcubicbezier.h index 0fa440bec..548ca1765 100644 --- a/src/libs/vtools/visualization/path/vistoolcubicbezier.h +++ b/src/libs/vtools/visualization/path/vistoolcubicbezier.h @@ -29,7 +29,7 @@ #ifndef VISTOOLCUBICBEZIER_H #define VISTOOLCUBICBEZIER_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolcubicbezierpath.h b/src/libs/vtools/visualization/path/vistoolcubicbezierpath.h index 95556ddfb..fa7e6d9cd 100644 --- a/src/libs/vtools/visualization/path/vistoolcubicbezierpath.h +++ b/src/libs/vtools/visualization/path/vistoolcubicbezierpath.h @@ -29,7 +29,7 @@ #ifndef VISTOOLCUBICBEZIERPATH_H #define VISTOOLCUBICBEZIERPATH_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolcutarc.h b/src/libs/vtools/visualization/path/vistoolcutarc.h index a7928bad4..9c2704a7c 100644 --- a/src/libs/vtools/visualization/path/vistoolcutarc.h +++ b/src/libs/vtools/visualization/path/vistoolcutarc.h @@ -29,7 +29,7 @@ #ifndef VISTOOLCUTARC_H #define VISTOOLCUTARC_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolcutspline.h b/src/libs/vtools/visualization/path/vistoolcutspline.h index 1d0dbf5a4..9605513bc 100644 --- a/src/libs/vtools/visualization/path/vistoolcutspline.h +++ b/src/libs/vtools/visualization/path/vistoolcutspline.h @@ -29,7 +29,7 @@ #ifndef VISTOOLCUTSPLINE_H #define VISTOOLCUTSPLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolcutsplinepath.cpp b/src/libs/vtools/visualization/path/vistoolcutsplinepath.cpp index 94a88af06..5abad7d03 100644 --- a/src/libs/vtools/visualization/path/vistoolcutsplinepath.cpp +++ b/src/libs/vtools/visualization/path/vistoolcutsplinepath.cpp @@ -32,22 +32,21 @@ #include #include #include -#include -#include #include "../../tools/drawTools/toolpoint/toolsinglepoint/toolcut/vtoolcutsplinepath.h" #include "../vgeometry/vabstractcubicbezierpath.h" #include "../vgeometry/vabstractcurve.h" #include "../vgeometry/vpointf.h" #include "../vgeometry/vsplinepath.h" -#include "../vpatterndb/vcontainer.h" #include "../visualization.h" -#include "vispath.h" #include "../vmisc/vmodifierkey.h" +#include "../vpatterndb/vcontainer.h" +#include "../vwidgets/scalesceneitems.h" +#include "vispath.h" //--------------------------------------------------------------------------------------------------------------------- VisToolCutSplinePath::VisToolCutSplinePath(const VContainer *data, QGraphicsItem *parent) - :VisPath(data, parent) + : VisPath(data, parent) { m_splPath1 = InitItem(Qt::darkGreen, this); m_splPath1->setFlag(QGraphicsItem::ItemStacksBehindParent, false); diff --git a/src/libs/vtools/visualization/path/vistoolcutsplinepath.h b/src/libs/vtools/visualization/path/vistoolcutsplinepath.h index 2cea3b851..d51da3c51 100644 --- a/src/libs/vtools/visualization/path/vistoolcutsplinepath.h +++ b/src/libs/vtools/visualization/path/vistoolcutsplinepath.h @@ -29,7 +29,7 @@ #ifndef VISTOOLCUTSPLINEPATH_H #define VISTOOLCUTSPLINEPATH_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolellipticalarc.h b/src/libs/vtools/visualization/path/vistoolellipticalarc.h index 74e9027a0..1875f9b9c 100644 --- a/src/libs/vtools/visualization/path/vistoolellipticalarc.h +++ b/src/libs/vtools/visualization/path/vistoolellipticalarc.h @@ -28,7 +28,7 @@ #ifndef VISTOOLELLIPTICALARC_H #define VISTOOLELLIPTICALARC_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolpointofintersectioncurves.h b/src/libs/vtools/visualization/path/vistoolpointofintersectioncurves.h index a450538e3..a30e48ecd 100644 --- a/src/libs/vtools/visualization/path/vistoolpointofintersectioncurves.h +++ b/src/libs/vtools/visualization/path/vistoolpointofintersectioncurves.h @@ -29,7 +29,7 @@ #ifndef VISTOOLPOINTOFINTERSECTIONCURVES_H #define VISTOOLPOINTOFINTERSECTIONCURVES_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolspline.h b/src/libs/vtools/visualization/path/vistoolspline.h index b52b37c9f..f17b5d134 100644 --- a/src/libs/vtools/visualization/path/vistoolspline.h +++ b/src/libs/vtools/visualization/path/vistoolspline.h @@ -29,7 +29,7 @@ #ifndef VISTOOLSPLINE_H #define VISTOOLSPLINE_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/path/vistoolsplinepath.h b/src/libs/vtools/visualization/path/vistoolsplinepath.h index 2908485a6..483d98022 100644 --- a/src/libs/vtools/visualization/path/vistoolsplinepath.h +++ b/src/libs/vtools/visualization/path/vistoolsplinepath.h @@ -29,7 +29,7 @@ #ifndef VISTOOLSPLINEPATH_H #define VISTOOLSPLINEPATH_H -#include + #include #include #include diff --git a/src/libs/vtools/visualization/visualization.h b/src/libs/vtools/visualization/visualization.h index ba4d6ea03..ef627b05e 100644 --- a/src/libs/vtools/visualization/visualization.h +++ b/src/libs/vtools/visualization/visualization.h @@ -33,7 +33,7 @@ #include #include #include -#include + #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) #include diff --git a/src/libs/vwidgets/vabstractmainwindow.h b/src/libs/vwidgets/vabstractmainwindow.h index 49c788593..be0c13e3f 100644 --- a/src/libs/vwidgets/vabstractmainwindow.h +++ b/src/libs/vwidgets/vabstractmainwindow.h @@ -29,13 +29,11 @@ #ifndef VABSTRACTMAINWINDOW_H #define VABSTRACTMAINWINDOW_H -#include #include #include #include #include -#include "../vmisc/defglobal.h" #if QT_VERSION < QT_VERSION_CHECK(5, 5, 0) #include "../vmisc/diagnostic.h" #endif // QT_VERSION < QT_VERSION_CHECK(5, 5, 0) @@ -49,9 +47,10 @@ QT_WARNING_DISABLE_GCC("-Wsuggest-final-methods") class VAbstractMainWindow : public QMainWindow { Q_OBJECT // NOLINT + public: explicit VAbstractMainWindow(QWidget *parent = nullptr); - virtual ~VAbstractMainWindow() = default; + ~VAbstractMainWindow() override = default; public slots: virtual void ShowToolTip(const QString &toolTip); @@ -66,7 +65,10 @@ protected slots: protected: unsigned m_curFileFormatVersion; QString m_curFileFormatVersionStr; - enum { MaxRecentFiles = 5 }; + enum + { + MaxRecentFiles = 5 + }; QVector m_recentFileActs{QVector(MaxRecentFiles)}; QAction *m_separatorAct{nullptr}; diff --git a/src/libs/vwidgets/vcontrolpointspline.h b/src/libs/vwidgets/vcontrolpointspline.h index 9cfcd9015..19c2b222a 100644 --- a/src/libs/vwidgets/vcontrolpointspline.h +++ b/src/libs/vwidgets/vcontrolpointspline.h @@ -29,7 +29,6 @@ #ifndef VCONTROLPOINTSPLINE_H #define VCONTROLPOINTSPLINE_H -#include #include #include #include @@ -49,17 +48,20 @@ class VControlPointSpline : public QObject, public VScenePoint { Q_OBJECT // NOLINT + public: - VControlPointSpline(const vsizetype &indexSpline, SplinePointPosition position, QGraphicsItem * parent = nullptr); + VControlPointSpline(const vsizetype &indexSpline, SplinePointPosition position, QGraphicsItem *parent = nullptr); VControlPointSpline(const vsizetype &indexSpline, SplinePointPosition position, const QPointF &controlPoint, - bool freeAngle, bool freeLength, QGraphicsItem * parent = nullptr); - virtual ~VControlPointSpline() =default; + bool freeAngle, bool freeLength, QGraphicsItem *parent = nullptr); + virtual ~VControlPointSpline() = default; virtual auto type() const -> int override { return Type; } - enum { Type = UserType + static_cast(Vis::ControlPointSpline)}; + enum + { + Type = UserType + static_cast(Vis::ControlPointSpline) + }; - virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, - QWidget *widget = nullptr) override; + virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr) override; signals: /** * @brief ControlPointChangePosition emit when control point change position. @@ -67,32 +69,33 @@ signals: * @param position position point in spline. * @param pos new posotion. */ - void ControlPointChangePosition(const vsizetype &indexSpline, SplinePointPosition position, - const QPointF &pos); + void ControlPointChangePosition(const vsizetype &indexSpline, SplinePointPosition position, const QPointF &pos); /** * @brief ShowContextMenu emit when need show tool's context menu. * @param event context menu event. */ - void ShowContextMenu(QGraphicsSceneContextMenuEvent *event); - void Released(); - void Selected(bool selected); + void ShowContextMenu(QGraphicsSceneContextMenuEvent *event); + void Released(); + void Selected(bool selected); public slots: - void RefreshCtrlPoint(const vsizetype &indexSpline, SplinePointPosition pos, const QPointF &controlPoint, - const QPointF &splinePoint, bool freeAngle = true, bool freeLength = true); - void setEnabledPoint(bool enable); + void RefreshCtrlPoint(const vsizetype &indexSpline, SplinePointPosition pos, const QPointF &controlPoint, + const QPointF &splinePoint, bool freeAngle = true, bool freeLength = true); + void setEnabledPoint(bool enable); + protected: /** @brief controlLine pointer to line control point. */ - VScaledLine *controlLine; + VScaledLine *controlLine; - virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent * event ) override; + virtual void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override; auto itemChange(GraphicsItemChange change, const QVariant &value) -> QVariant override; - virtual void mousePressEvent( QGraphicsSceneMouseEvent * event ) override; - virtual void mouseReleaseEvent ( QGraphicsSceneMouseEvent * event ) override; - virtual void contextMenuEvent ( QGraphicsSceneContextMenuEvent *event ) override; + virtual void mousePressEvent(QGraphicsSceneMouseEvent *event) override; + virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) override; + virtual void contextMenuEvent(QGraphicsSceneContextMenuEvent *event) override; + private: Q_DISABLE_COPY_MOVE(VControlPointSpline) // NOLINT /** @brief indexSpline index spline in list.. */ - vsizetype indexSpline; + vsizetype indexSpline; /** @brief position position point in spline. */ SplinePointPosition position; @@ -100,8 +103,8 @@ private: bool freeAngle; bool freeLength; - void Init(); - void SetCtrlLine(const QPointF &controlPoint, const QPointF &splinePoint); + void Init(); + void SetCtrlLine(const QPointF &controlPoint, const QPointF &splinePoint); }; #endif // VCONTROLPOINTSPLINE_H diff --git a/src/libs/vwidgets/vgraphicssimpletextitem.h b/src/libs/vwidgets/vgraphicssimpletextitem.h index d845b90ba..9c814bfa2 100644 --- a/src/libs/vwidgets/vgraphicssimpletextitem.h +++ b/src/libs/vwidgets/vgraphicssimpletextitem.h @@ -29,7 +29,7 @@ #ifndef VGRAPHICSSIMPLETEXTITEM_H #define VGRAPHICSSIMPLETEXTITEM_H -#include + #include #include #include diff --git a/src/libs/vwidgets/vmaingraphicsscene.h b/src/libs/vwidgets/vmaingraphicsscene.h index 1165648e7..c5b363e1e 100644 --- a/src/libs/vwidgets/vmaingraphicsscene.h +++ b/src/libs/vwidgets/vmaingraphicsscene.h @@ -29,7 +29,7 @@ #ifndef VMAINGRAPHICSSCENE_H #define VMAINGRAPHICSSCENE_H -#include + #include #include #include diff --git a/src/libs/vwidgets/vmaingraphicsview.h b/src/libs/vwidgets/vmaingraphicsview.h index 7703d9378..7811a1037 100644 --- a/src/libs/vwidgets/vmaingraphicsview.h +++ b/src/libs/vwidgets/vmaingraphicsview.h @@ -29,7 +29,7 @@ #ifndef VMAINGRAPHICSVIEW_H #define VMAINGRAPHICSVIEW_H -#include + #include #include #include diff --git a/src/libs/vwidgets/vnobrushscalepathitem.h b/src/libs/vwidgets/vnobrushscalepathitem.h index c774c0089..a5156287b 100644 --- a/src/libs/vwidgets/vnobrushscalepathitem.h +++ b/src/libs/vwidgets/vnobrushscalepathitem.h @@ -29,7 +29,7 @@ #ifndef VNOBRUSHSCALEPATHITEM_H #define VNOBRUSHSCALEPATHITEM_H -#include + #include #include diff --git a/src/libs/vwidgets/vpiecegrainline.cpp b/src/libs/vwidgets/vpiecegrainline.cpp index aa84a471c..3d40fd99d 100644 --- a/src/libs/vwidgets/vpiecegrainline.cpp +++ b/src/libs/vwidgets/vpiecegrainline.cpp @@ -87,12 +87,12 @@ auto VPieceGrainline::operator=(const VPieceGrainline &grainline) -> VPieceGrain #ifdef Q_COMPILER_RVALUE_REFS //--------------------------------------------------------------------------------------------------------------------- -VPieceGrainline::VPieceGrainline(VPieceGrainline &&grainline) Q_DECL_NOTHROW +VPieceGrainline::VPieceGrainline(VPieceGrainline &&grainline) noexcept : d(std::move(grainline.d)) {} //--------------------------------------------------------------------------------------------------------------------- -auto VPieceGrainline::operator=(VPieceGrainline &&grainline) Q_DECL_NOTHROW -> VPieceGrainline & +auto VPieceGrainline::operator=(VPieceGrainline &&grainline) noexcept -> VPieceGrainline & { std::swap(d, grainline.d); return *this; diff --git a/src/libs/vwidgets/vpiecegrainline.h b/src/libs/vwidgets/vpiecegrainline.h index 11288f95c..be7617158 100644 --- a/src/libs/vwidgets/vpiecegrainline.h +++ b/src/libs/vwidgets/vpiecegrainline.h @@ -52,8 +52,8 @@ public: auto operator=(const VPieceGrainline &grainline) -> VPieceGrainline &; #ifdef Q_COMPILER_RVALUE_REFS - VPieceGrainline(VPieceGrainline &&grainline) Q_DECL_NOTHROW; - auto operator=(VPieceGrainline &&grainline) Q_DECL_NOTHROW -> VPieceGrainline &; + VPieceGrainline(VPieceGrainline &&grainline) noexcept; + auto operator=(VPieceGrainline &&grainline) noexcept -> VPieceGrainline &; #endif auto GetMainLine() const -> QLineF; diff --git a/src/libs/vwidgets/vpiecegrainline_p.h b/src/libs/vwidgets/vpiecegrainline_p.h index 5df964878..41146c22c 100644 --- a/src/libs/vwidgets/vpiecegrainline_p.h +++ b/src/libs/vwidgets/vpiecegrainline_p.h @@ -45,24 +45,20 @@ QT_WARNING_DISABLE_GCC("-Wnon-virtual-dtor") class VPieceGrainlinePrivate : public QSharedData { public: - VPieceGrainlinePrivate(){} // NOLINT(modernize-use-equals-default) - VPieceGrainlinePrivate(const QLineF &mainLine, GrainlineArrowDirection arrowType) - : m_mainLine(mainLine), - m_arrowType(arrowType), - m_enabled(true) - {} - + VPieceGrainlinePrivate() = default; + VPieceGrainlinePrivate(const QLineF &mainLine, GrainlineArrowDirection arrowType); VPieceGrainlinePrivate(const VPieceGrainlinePrivate &data) = default; ~VPieceGrainlinePrivate() = default; static auto MainLine(const QPointF &p1, qreal length, qreal angle) -> QLineF; - friend auto operator<<(QDataStream& dataStream, const VPieceGrainlinePrivate& data) -> QDataStream&; - friend auto operator>>(QDataStream& dataStream, VPieceGrainlinePrivate& data) -> QDataStream&; + friend auto operator<<(QDataStream &dataStream, const VPieceGrainlinePrivate &data) -> QDataStream &; + friend auto operator>>(QDataStream &dataStream, VPieceGrainlinePrivate &data) -> QDataStream &; - QLineF m_mainLine{}; // NOLINT(misc-non-private-member-variables-in-classes) - GrainlineArrowDirection m_arrowType{GrainlineArrowDirection::oneWayUp}; // NOLINT(misc-non-private-member-variables-in-classes) - bool m_enabled{false}; // NOLINT(misc-non-private-member-variables-in-classes) + QLineF m_mainLine{}; // NOLINT(misc-non-private-member-variables-in-classes) + // NOLINTNEXTLINE(misc-non-private-member-variables-in-classes) + GrainlineArrowDirection m_arrowType{GrainlineArrowDirection::oneWayUp}; + bool m_enabled{false}; // NOLINT(misc-non-private-member-variables-in-classes) private: Q_DISABLE_ASSIGN_MOVE(VPieceGrainlinePrivate) // NOLINT @@ -74,11 +70,19 @@ private: QT_WARNING_POP // See https://stackoverflow.com/a/46719572/3045403 -#if __cplusplus < 201703L // C++17 -constexpr quint32 VPieceGrainlinePrivate::streamHeader; // NOLINT(readability-redundant-declaration) -constexpr quint16 VPieceGrainlinePrivate::classVersion; // NOLINT(readability-redundant-declaration) +#if __cplusplus < 201703L // C++17 +constexpr quint32 VPieceGrainlinePrivate::streamHeader; // NOLINT(readability-redundant-declaration) +constexpr quint16 VPieceGrainlinePrivate::classVersion; // NOLINT(readability-redundant-declaration) #endif +//--------------------------------------------------------------------------------------------------------------------- +inline VPieceGrainlinePrivate::VPieceGrainlinePrivate(const QLineF &mainLine, GrainlineArrowDirection arrowType) + : m_mainLine(mainLine), + m_arrowType(arrowType), + m_enabled(true) +{ +} + // Friend functions //--------------------------------------------------------------------------------------------------------------------- inline auto operator<<(QDataStream &dataStream, const VPieceGrainlinePrivate &data) -> QDataStream & @@ -115,7 +119,8 @@ inline auto operator>>(QDataStream &dataStream, VPieceGrainlinePrivate &data) -> { QString message = QCoreApplication::tr("VPieceGrainlinePrivate compatibility error: actualClassVersion = %1 " "and classVersion = %2") - .arg(actualClassVersion).arg(VPieceGrainlinePrivate::classVersion); + .arg(actualClassVersion) + .arg(VPieceGrainlinePrivate::classVersion); throw VException(message); } diff --git a/src/libs/vwidgets/vsimplecurve.h b/src/libs/vwidgets/vsimplecurve.h index 3fc784029..6ed89594b 100644 --- a/src/libs/vwidgets/vsimplecurve.h +++ b/src/libs/vwidgets/vsimplecurve.h @@ -29,7 +29,7 @@ #ifndef VSIMPLECURVE_H #define VSIMPLECURVE_H -#include + #include #include #include diff --git a/src/libs/vwidgets/vsimplepoint.h b/src/libs/vwidgets/vsimplepoint.h index c646ec0af..28ae50ffc 100644 --- a/src/libs/vwidgets/vsimplepoint.h +++ b/src/libs/vwidgets/vsimplepoint.h @@ -29,7 +29,7 @@ #ifndef VSIMPLEPOINT_H #define VSIMPLEPOINT_H -#include + #include #include #include diff --git a/src/test/ValentinaTest/tst_misc.cpp b/src/test/ValentinaTest/tst_misc.cpp index 32603e150..c96ad6ce1 100644 --- a/src/test/ValentinaTest/tst_misc.cpp +++ b/src/test/ValentinaTest/tst_misc.cpp @@ -202,7 +202,7 @@ void TST_Misc::TestCLocale() QFETCH(qreal, number); QFETCH(QString, expected); - const QString localized = QString().number(number); + const QString localized = QString::number(number); QCOMPARE(localized, expected); }