The VToolNormal class tool for creation point on normal. Normal begin from first point of line. More...
#include <vtoolnormal.h>
Public Types | |
enum | { Type = UserType + static_cast<int>(Tool::Normal) } |
Public Types inherited from VToolLinePoint | |
enum | { Type = UserType + static_cast<int>(Tool::LinePoint) } |
Public Types inherited from VToolSinglePoint | |
enum | { Type = UserType + static_cast<int>(Tool::SinglePoint) } |
Public Types inherited from VScenePoint | |
enum | { Type = UserType + static_cast<int>(Vis::ScenePoint) } |
Public Member Functions | |
virtual void | setDialog () Q_DECL_OVERRIDE |
setDialog set dialog when user want change tool option. More... | |
virtual int | type () const Q_DECL_OVERRIDE |
QString | SecondPointName () const |
quint32 | GetSecondPointId () const |
void | SetSecondPointId (const quint32 &value) |
virtual void | ShowVisualization (bool show) Q_DECL_OVERRIDE |
Public Member Functions inherited from VToolLinePoint | |
VToolLinePoint (VAbstractPattern *doc, VContainer *data, const quint32 &id, const QString &lineType, const QString &lineWeight, const QString &lineColor, const QString &formula, const quint32 &basePointId, const qreal &angle, QGraphicsItem *parent=nullptr) | |
VToolLinePoint constructor. More... | |
virtual | ~VToolLinePoint () Q_DECL_OVERRIDE |
virtual void | paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=nullptr) Q_DECL_OVERRIDE |
VFormula | GetFormulaLength () const |
void | SetFormulaLength (const VFormula &value) |
QString | BasePointName () const |
quint32 | GetBasePointId () const |
void | SetBasePointId (const quint32 &value) |
qreal | GetAngle () const |
void | SetAngle (const qreal &value) |
QString | getLineColor () const |
void | setLineColor (const QString &value) |
Public Member Functions inherited from VToolSinglePoint | |
VToolSinglePoint (VAbstractPattern *doc, VContainer *data, quint32 id, const QColor &lineColor, QGraphicsItem *parent=nullptr) | |
VToolSinglePoint constructor. More... | |
virtual | ~VToolSinglePoint () Q_DECL_EQ_DEFAULT |
QString | name () const |
void | setName (const QString &name) |
void | SetEnabled (bool enabled) |
virtual void | GroupVisibility (quint32 object, bool visible) Q_DECL_OVERRIDE |
virtual bool | isPointNameVisible (quint32 id) const Q_DECL_OVERRIDE |
virtual void | setPointNameVisiblity (quint32 id, bool visible) Q_DECL_OVERRIDE |
virtual void | setPointNamePosition (quint32 id, const QPointF &pos) Q_DECL_OVERRIDE |
Public Member Functions inherited from VAbstractPoint | |
VAbstractPoint (VAbstractPattern *doc, VContainer *data, quint32 id) | |
virtual | ~VAbstractPoint () Q_DECL_EQ_DEFAULT |
virtual QString | getTagName () const Q_DECL_OVERRIDE |
template<typename T > | |
void | ShowToolVisualization (bool show) |
Public Member Functions inherited from VDrawTool | |
VDrawTool (VAbstractPattern *doc, VContainer *data, quint32 id, QObject *parent=nullptr) | |
VDrawTool constructor. More... | |
virtual | ~VDrawTool () Q_DECL_EQ_DEFAULT |
QString | getLineType () const |
virtual void | setLineType (const QString &value) |
QString | getLineWeight () const |
virtual void | setLineWeight (const QString &value) |
Public Member Functions inherited from VInteractiveTool | |
VInteractiveTool (VAbstractPattern *doc, VContainer *data, quint32 id, QObject *parent=nullptr) | |
virtual | ~VInteractiveTool () Q_DECL_EQ_DEFAULT |
void | DialogLinkDestroy () |
Public Member Functions inherited from VAbstractTool | |
VAbstractTool (VAbstractPattern *doc, VContainer *data, quint32 id, QObject *parent=nullptr) | |
VAbstractTool container. More... | |
virtual | ~VAbstractTool () Q_DECL_OVERRIDE |
quint32 | getId () const |
getId return object id. More... | |
const VContainer * | getData () const |
getData return pointer to data container. More... | |
QMap< QString, quint32 > | PointsList () const |
Public Member Functions inherited from VDataTool | |
VDataTool (VContainer *data, QObject *parent=nullptr) | |
VDataTool constructor. More... | |
virtual | ~VDataTool () Q_DECL_EQ_DEFAULT |
VContainer | getData () const |
getData return data container. More... | |
void | setData (const VContainer *value) |
setData set data container. More... | |
virtual quint32 | referens () const |
referens return count of referens. More... | |
virtual void | incrementReferens () |
incrementReferens increment referens. More... | |
virtual void | decrementReferens () |
decrementReferens decrement referens. More... | |
Public Member Functions inherited from VScenePoint | |
VScenePoint (const QColor &lineColor, QGraphicsItem *parent=nullptr) | |
virtual | ~VScenePoint ()=default |
virtual void | refreshPointGeometry (const VPointF &point) |
void | refreshLeader () |
Static Public Member Functions | |
static VToolNormal * | Create (QSharedPointer< DialogTool > dialog, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) |
Create help create tool from GUI. More... | |
static VToolNormal * | Create (const quint32 _id, QString &formula, quint32 firstPointId, quint32 secondPointId, const QString &typeLine, const QString &lineWeight, const QString &lineColor, const QString &pointName, const qreal angle, qreal mx, qreal my, bool showPointName, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data, const Document &parse, const Source &typeCreation) |
Create help create tool. More... | |
static QPointF | FindPoint (const QPointF &firstPoint, const QPointF &secondPoint, const qreal &length, const qreal &angle=0) |
FindPoint return normal point. More... | |
Static Public Member Functions inherited from VAbstractTool | |
static qreal | CheckFormula (const quint32 &toolId, QString &formula, VContainer *data) |
CheckFormula check formula. More... | |
static const QStringList | Colors () |
static QMap< QString, QString > | ColorsList () |
static QMap< QString, QString > | supportColorsList () |
static QMap< QString, QString > | backgroundColorsList () |
static QPixmap | createColorIcon (const int w, const int h, const QString &color) |
static const QStringList | fills () |
static void | AddRecord (const quint32 id, const Tool &toolType, VAbstractPattern *doc) |
AddRecord add record about tool in history. More... | |
static void | AddNodes (VAbstractPattern *doc, QDomElement &domElement, const VPiecePath &path) |
static void | AddNodes (VAbstractPattern *doc, QDomElement &domElement, const VPiece &piece) |
template<typename T > | |
static quint32 | CreateNode (VContainer *data, quint32 id) |
CreateNode create new node for detail. More... | |
Static Public Attributes | |
static const QString | ToolType = QStringLiteral("normal") |
Static Public Attributes inherited from VAbstractTool | |
static bool | m_suppressContextMenu = false |
static const QString | AttrInUse = QStringLiteral("inUse") |
Protected Slots | |
virtual void | showContextMenu (QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID) Q_DECL_OVERRIDE |
contextMenuEvent handle context menu events. More... | |
Protected Slots inherited from VDrawTool | |
virtual void | showContextMenu (QGraphicsSceneContextMenuEvent *event, quint32 id=NULL_ID)=0 |
Protected Member Functions | |
virtual void | RemoveReferens () Q_DECL_OVERRIDE |
RemoveReferens decrement value of reference. More... | |
virtual void | SaveDialog (QDomElement &domElement) Q_DECL_OVERRIDE |
SaveDialog save options into file after change in dialog. More... | |
virtual void | SaveOptions (QDomElement &tag, QSharedPointer< VGObject > &obj) Q_DECL_OVERRIDE |
virtual void | ReadToolAttributes (const QDomElement &domElement) Q_DECL_OVERRIDE |
virtual void | SetVisualization () Q_DECL_OVERRIDE |
Protected Member Functions inherited from VToolLinePoint | |
virtual void | RefreshGeometry () |
lineColor color of a line. More... | |
virtual void | hoverEnterEvent (QGraphicsSceneHoverEvent *event) Q_DECL_OVERRIDE |
virtual void | hoverLeaveEvent (QGraphicsSceneHoverEvent *event) Q_DECL_OVERRIDE |
virtual QString | makeToolTip () const Q_DECL_OVERRIDE |
Protected Member Functions inherited from VToolSinglePoint | |
virtual void | updatePointNameVisibility (quint32 id, bool visible) Q_DECL_OVERRIDE |
virtual void | updatePointNamePosition (quint32 id, const QPointF &pos) Q_DECL_OVERRIDE |
updatePointNamePosition save new position text to the pattern file. More... | |
virtual void | mousePressEvent (QGraphicsSceneMouseEvent *event) Q_DECL_OVERRIDE |
virtual void | mouseReleaseEvent (QGraphicsSceneMouseEvent *event) Q_DECL_OVERRIDE |
mouseReleaseEvent handle mouse release events. More... | |
virtual QVariant | itemChange (GraphicsItemChange change, const QVariant &value) Q_DECL_OVERRIDE |
itemChange hadle item change. More... | |
virtual void | keyReleaseEvent (QKeyEvent *event) Q_DECL_OVERRIDE |
keyReleaseEvent handle key release events. More... | |
virtual void | contextMenuEvent (QGraphicsSceneContextMenuEvent *event) Q_DECL_OVERRIDE |
Protected Member Functions inherited from VAbstractPoint | |
void | SetPointName (quint32 id, const QString &name) |
Protected Member Functions inherited from VDrawTool | |
void | AddToCalculation (const QDomElement &domElement) |
typeLine line weight. More... | |
void | addDependence (QList< quint32 > &list, quint32 objectId) const |
virtual void | SaveDialogChange () Q_DECL_FINAL |
virtual void | AddToFile () Q_DECL_OVERRIDE |
AddToFile add tag with Information about tool into file. More... | |
void | SaveOption (QSharedPointer< VGObject > &obj) |
bool | CorrectDisable (bool disable, const QString &draftBlockName) const |
void | ReadAttributes () |
template<typename Dialog > | |
void | ContextMenu (QGraphicsSceneContextMenuEvent *event, quint32 itemId=NULL_ID, const RemoveOption &showRemove=RemoveOption::Enable, const Referens &ref=Referens::Follow) |
ContextMenu show context menu for tool. More... | |
template<typename Item > | |
void | ShowItem (Item *item, quint32 id, bool enable) |
ShowItem highlight tool. More... | |
template<typename T > | |
QString | ObjectName (quint32 id) const |
ObjectName get object (point, curve, arc) name. More... | |
Protected Member Functions inherited from VAbstractTool | |
virtual void | RefreshDataInFile () |
RefreshDataInFile refresh attributes in file. If attributes don't exist create them. More... | |
virtual void | deleteTool (bool ask=true) |
deleteTool full delete object form scene and file. More... | |
template<typename T > | |
void | AddVisualization () |
virtual void | ToolCreation (const Source &typeCreation) |
Protected Member Functions inherited from VScenePoint | |
void | setOnlyPoint (bool value) |
bool | isOnlyPoint () const |
void | setPointColor (const QString &value) |
Private Member Functions | |
VToolNormal (VAbstractPattern *doc, VContainer *data, const quint32 &id, const QString &typeLine, const QString &lineWeight, const QString &lineColor, const QString &formula, const qreal &angle, const quint32 &firstPointId, const quint32 &secondPointId, const Source &typeCreation, QGraphicsItem *parent=nullptr) | |
VToolNormal constructor. More... | |
Private Attributes | |
quint32 | secondPointId |
secondPointId id second line point. More... | |
Additional Inherited Members | |
Public Slots inherited from VToolLinePoint | |
virtual void | Disable (bool disable, const QString &draftBlockName) Q_DECL_OVERRIDE |
virtual void | FullUpdateFromFile () Q_DECL_OVERRIDE |
FullUpdateFromFile update tool data form file. More... | |
Public Slots inherited from VToolSinglePoint | |
void | pointnameChangedPosition (const QPointF &pos) |
pointnameChangedPosition handle change position point text. More... | |
virtual void | Disable (bool disable, const QString &draftBlockName) Q_DECL_OVERRIDE |
virtual void | EnableToolMove (bool move) Q_DECL_OVERRIDE |
void | pointChosen () |
void | pointSelected (bool selected) |
virtual void | FullUpdateFromFile () Q_DECL_OVERRIDE |
FullUpdateFromFile update tool data form file. More... | |
virtual void | AllowHover (bool enabled) Q_DECL_OVERRIDE |
virtual void | AllowSelecting (bool enabled) Q_DECL_OVERRIDE |
void | allowTextHover (bool enabled) |
void | allowTextSelectable (bool enabled) |
virtual void | ToolSelectionType (const SelectionType &type) Q_DECL_OVERRIDE |
Public Slots inherited from VAbstractPoint | |
virtual void | ShowTool (quint32 id, bool enable) Q_DECL_OVERRIDE |
ShowTool highlight tool. More... | |
void | deletePoint () |
Public Slots inherited from VDrawTool | |
virtual void | ShowTool (quint32 id, bool enable) |
ShowTool highlight tool. More... | |
virtual void | activeBlockChanged (const QString &newName) |
activeBlockChanged disable or enable context menu after change active draft block. More... | |
void | blockNameChanged (const QString &oldName, const QString &newName) |
blockNameChanged save new name active draft block. More... | |
virtual void | EnableToolMove (bool move) |
virtual void | Disable (bool disable, const QString &draftBlockName)=0 |
virtual void | piecesMode (bool mode) |
Public Slots inherited from VInteractiveTool | |
void | FullUpdateFromGuiOk (int result) |
FullUpdateFromGuiOk refresh tool data after change in options. More... | |
void | FullUpdateFromGuiApply () |
FullUpdateFromGuiApply refresh tool data after change in options but do not delete dialog. More... | |
Public Slots inherited from VAbstractTool | |
virtual void | FullUpdateFromFile ()=0 |
FullUpdateFromFile update tool data form file. More... | |
virtual void | AllowHover (bool enabled)=0 |
virtual void | AllowSelecting (bool enabled)=0 |
virtual void | ToolSelectionType (const SelectionType &type) |
Signals inherited from VDrawTool | |
void | ChangedToolSelection (bool selected, quint32 object, quint32 tool) |
Signals inherited from VAbstractTool | |
void | toolHasChanges () |
toolHasChanges emit if tool create change that need save. More... | |
void | chosenTool (quint32 id, SceneObject type) |
chosenTool emit if object was clicked. More... | |
void | LiteUpdateTree (const Document &parse) |
FullUpdateTree emit if need reparse pattern file. More... | |
void | ToolTip (const QString &toolTip) |
Protected Types inherited from VDrawTool | |
enum class | RemoveOption : bool { Disable = false , Enable = true } |
enum class | Referens : bool { Follow = true , Ignore = false } |
Static Protected Member Functions inherited from VAbstractPoint | |
template<typename T > | |
static void | InitToolConnections (VMainGraphicsScene *scene, T *tool) |
Static Protected Member Functions inherited from VDrawTool | |
template<typename T > | |
static void | InitDrawToolConnections (VMainGraphicsScene *scene, T *tool) |
Static Protected Member Functions inherited from VAbstractTool | |
static int | ConfirmDeletion () |
static QDomElement | AddSANode (VAbstractPattern *doc, const QString &tagName, const VPieceNode &node) |
static void | AddNode (VAbstractPattern *doc, QDomElement &domElement, const VPieceNode &node) |
static QVector< VPieceNode > | PrepareNodes (const VPiecePath &path, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) |
static quint32 | PrepareNode (const VPieceNode &node, VMainGraphicsScene *scene, VAbstractPattern *doc, VContainer *data) |
Protected Attributes inherited from VToolLinePoint | |
QString | formulaLength |
qreal | angle |
formula string with length formula. More... | |
quint32 | basePointId |
angle line angle. More... | |
VScaledLine * | mainLine |
basePointId id base line point. More... | |
QString | lineColor |
mainLine line item. More... | |
Protected Attributes inherited from VDrawTool | |
QString | activeBlockName |
QString | m_lineType |
activeBlockName name of tool's pattern peace. More... | |
QString | m_lineWeight |
typeLine line type. More... | |
Protected Attributes inherited from VInteractiveTool | |
QSharedPointer< DialogTool > | m_dialog |
m_dialog tool's dialog options. More... | |
Protected Attributes inherited from VAbstractTool | |
VAbstractPattern * | doc |
doc dom document container More... | |
const quint32 | m_id |
id object id. More... | |
QPointer< Visualization > | vis |
SelectionType | selectionType |
Protected Attributes inherited from VDataTool | |
VContainer | data |
data container with data More... | |
quint32 | _referens |
_referens keep count tools what use this tool. If value more than 1 you can't delete tool. More... | |
Protected Attributes inherited from VScenePoint | |
VGraphicsSimpleTextItem * | m_pointName |
VScaledLine * | m_pointLeader |
namePoint point text. More... | |
QColor | m_pointColor |
pointL line that we see if Text is moved too away from point. More... | |
bool | m_onlyPoint |
m_pointColor color of point. More... | |
bool | m_isHovered |
bool | m_showPointName |
The VToolNormal class tool for creation point on normal. Normal begin from first point of line.
Definition at line 73 of file vtoolnormal.h.
anonymous enum |
Enumerator | |
---|---|
Type |
Definition at line 93 of file vtoolnormal.h.
|
private |
VToolNormal constructor.
doc | dom document container. |
data | container with variables. |
id | object id in container. |
lineType | line type. |
lineWeight | line weight. |
lineColor | line color. |
formula | string with formula normal length. |
angle | additional angle. |
firstPointId | id first line point. |
secondPointId | id second line point. |
typeCreation | way we create this tool. |
parent | parent object. |
Definition at line 98 of file vtoolnormal.cpp.
References VAbstractTool::ToolCreation().
Referenced by Create().
|
static |
Create help create tool.
_id | tool id, 0 if tool doesn't exist yet. |
formula | string with formula normal length. |
firstPointId | id first line point. |
secondPointId | id second line point. |
lineType | line type. |
lineWeight | line weight. |
lineColor | line color. |
pointName | point name. |
angle | additional angle. |
mx | label bias x axis. |
my | label bias y axis. |
showPointName | show/hide point name text. |
scene | pointer to scene. |
doc | dom document container. |
data | container with variables. |
parse | parser file mode. |
typeCreation | way we create this tool. |
Definition at line 182 of file vtoolnormal.cpp.
References VContainer::AddGObject(), VContainer::AddLine(), VAbstractTool::AddRecord(), VAbstractPattern::AddTool(), VToolLinePoint::angle, VAbstractTool::CheckFormula(), VDataTool::data, VAbstractTool::doc, FindPoint(), FromGui, FullParse, VContainer::GeometricObject(), VAbstractPattern::IncrementReferens(), VAbstractPoint::InitToolConnections(), VToolLinePoint::lineColor, Normal, qApp, secondPointId, VPointF::setShowPointName(), VContainer::UpdateGObject(), VAbstractPattern::UpdateToolData(), and VToolNormal().
|
static |
Create help create tool from GUI.
dialog | dialog. |
scene | pointer to scene. |
doc | dom document container. |
data | container with variables. |
Definition at line 138 of file vtoolnormal.cpp.
References VToolLinePoint::angle, VDataTool::data, VAbstractTool::doc, FromGui, FullParse, VToolLinePoint::lineColor, VInteractiveTool::m_dialog, SCASSERT, and secondPointId.
Referenced by VPattern::ParseToolNormal().
|
static |
FindPoint return normal point.
firstPoint | first line point. |
secondPoint | second line point. |
length | normal length. |
angle | additional angle. |
Definition at line 240 of file vtoolnormal.cpp.
References VToolLinePoint::angle.
Referenced by Create(), and VisToolNormal::RefreshGeometry().
quint32 VToolNormal::GetSecondPointId | ( | ) | const |
Definition at line 347 of file vtoolnormal.cpp.
References secondPointId.
|
protectedvirtual |
Implements VDrawTool.
Definition at line 317 of file vtoolnormal.cpp.
References VToolLinePoint::angle, AttrAngle, AttrFirstPoint, AttrLength, AttrLineColor, AttrLineType, AttrLineWeight, AttrSecondPoint, VToolLinePoint::basePointId, ColorBlack, VAbstractTool::doc, VToolLinePoint::formulaLength, VDomDocument::GetParametrDouble(), VDomDocument::GetParametrString(), VDomDocument::GetParametrUInt(), VToolLinePoint::lineColor, LineTypeSolidLine, VDrawTool::m_lineType, VDrawTool::m_lineWeight, NULL_ID_STR, and secondPointId.
|
protectedvirtual |
RemoveReferens decrement value of reference.
Reimplemented from VToolLinePoint.
Definition at line 278 of file vtoolnormal.cpp.
References VDataTool::data, VAbstractPattern::DecrementReferens(), VAbstractTool::doc, VContainer::GetGObject(), VToolLinePoint::RemoveReferens(), and secondPointId.
|
protectedvirtual |
SaveDialog save options into file after change in dialog.
Implements VDrawTool.
Definition at line 289 of file vtoolnormal.cpp.
References AttrAngle, AttrFirstPoint, AttrLength, AttrLineColor, AttrLineType, AttrLineWeight, AttrName, AttrSecondPoint, VAbstractTool::doc, VInteractiveTool::m_dialog, SCASSERT, and VDomDocument::SetAttribute().
|
protectedvirtual |
Reimplemented from VToolLinePoint.
Definition at line 305 of file vtoolnormal.cpp.
References VToolLinePoint::angle, AttrAngle, AttrFirstPoint, AttrLength, AttrSecondPoint, AttrType, VToolLinePoint::basePointId, VAbstractTool::doc, VToolLinePoint::formulaLength, VToolLinePoint::SaveOptions(), secondPointId, VDomDocument::SetAttribute(), and ToolType.
QString VToolNormal::SecondPointName | ( | ) | const |
Definition at line 251 of file vtoolnormal.cpp.
References VDataTool::data, VContainer::GetGObject(), and secondPointId.
Referenced by VToolOptionsPropertyBrowser::showOptionsToolNormal(), and VToolOptionsPropertyBrowser::updateOptionsToolNormal().
|
virtual |
setDialog set dialog when user want change tool option.
Reimplemented from VInteractiveTool.
Definition at line 114 of file vtoolnormal.cpp.
References VToolLinePoint::angle, VToolLinePoint::basePointId, VDataTool::data, VToolLinePoint::formulaLength, VContainer::GeometricObject(), VToolLinePoint::lineColor, VInteractiveTool::m_dialog, VAbstractTool::m_id, VDrawTool::m_lineType, VDrawTool::m_lineWeight, SCASSERT, and secondPointId.
void VToolNormal::SetSecondPointId | ( | const quint32 & | value | ) |
Definition at line 353 of file vtoolnormal.cpp.
References VDataTool::data, VContainer::GetGObject(), VAbstractTool::m_id, NULL_ID, VDrawTool::SaveOption(), and secondPointId.
Referenced by VToolOptionsPropertyBrowser::changeDataToolNormal().
|
protectedvirtual |
Implements VAbstractTool.
Definition at line 329 of file vtoolnormal.cpp.
References VToolLinePoint::angle, VToolLinePoint::basePointId, VToolLinePoint::formulaLength, lineTypeToPenStyle(), VDrawTool::m_lineType, VDrawTool::m_lineWeight, qApp, VisToolNormal::RefreshGeometry(), SCASSERT, secondPointId, VisToolNormal::SetAngle(), VisToolNormal::setLength(), Visualization::setLineStyle(), Visualization::setLineWeight(), Visualization::setObject1Id(), VisToolNormal::setObject2Id(), and VAbstractTool::vis.
|
protectedvirtualslot |
contextMenuEvent handle context menu events.
event | context menu event. |
Definition at line 261 of file vtoolnormal.cpp.
|
virtual |
Implements VAbstractTool.
Definition at line 365 of file vtoolnormal.cpp.
Referenced by VToolOptionsPropertyBrowser::showOptionsToolNormal().
|
inlinevirtual |
|
private |
secondPointId id second line point.
Definition at line 116 of file vtoolnormal.h.
Referenced by Create(), GetSecondPointId(), ReadToolAttributes(), RemoveReferens(), SaveOptions(), SecondPointName(), setDialog(), SetSecondPointId(), and SetVisualization().
|
static |
Definition at line 91 of file vtoolnormal.h.
Referenced by VPattern::ParsePointElement(), and SaveOptions().