20#ifndef LIBREPCB_EDITOR_SYMBOLEDITORSTATE_ADDPINS_H
21#define LIBREPCB_EDITOR_SYMBOLEDITORSTATE_ADDPINS_H
40class CmdSymbolPinEdit;
41class SymbolPinGraphicsItem;
61 bool entry() noexcept override;
62 bool exit() noexcept override;
72 bool processMirror(Qt::Orientation orientation) noexcept override;
96 bool hasPin(const QString& name) const noexcept;
The Angle class is used to represent an angle (for example 12.75 degrees)
Definition angle.h:76
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition point.h:78
The SymbolPin class represents one pin of a symbol.
Definition symbolpin.h:51
const CircuitIdentifier & getName() const noexcept
Definition symbolpin.h:84
const UnsignedLength & getLength() const noexcept
Definition symbolpin.h:86
The CmdSymbolPinEdit class.
Definition cmdsymbolpinedit.h:48
The SymbolEditorState_AddPins class.
Definition symboleditorstate_addpins.h:50
void lengthChanged(const UnsignedLength &length)
bool hasPin(const QString &name) const noexcept
Definition symboleditorstate_addpins.cpp:257
bool processGraphicsSceneMouseMoved(const GraphicsSceneMouseEvent &e) noexcept override
Definition symboleditorstate_addpins.cpp:141
SymbolEditorState_AddPins(const SymbolEditorState_AddPins &other)=delete
void nameChanged(const CircuitIdentifier &name)
bool processGraphicsSceneRightMouseButtonReleased(const GraphicsSceneMouseEvent &e) noexcept override
Definition symboleditorstate_addpins.cpp:169
std::shared_ptr< SymbolPinGraphicsItem > mCurrentGraphicsItem
Definition symboleditorstate_addpins.h:102
std::unique_ptr< CmdSymbolPinEdit > mCurrentEditCmd
Definition symboleditorstate_addpins.h:103
bool processGraphicsSceneLeftMouseButtonPressed(const GraphicsSceneMouseEvent &e) noexcept override
Definition symboleditorstate_addpins.cpp:150
~SymbolEditorState_AddPins() noexcept
Definition symboleditorstate_addpins.cpp:67
void setLength(const UnsignedLength &length) noexcept
Definition symboleditorstate_addpins.cpp:121
SymbolPin mCurrentProperties
Definition symboleditorstate_addpins.h:99
const CircuitIdentifier & getName() const noexcept
Definition symboleditorstate_addpins.h:76
bool processImportPins() noexcept override
Definition symboleditorstate_addpins.cpp:192
CircuitIdentifier determineNextPinName() const noexcept
Definition symboleditorstate_addpins.cpp:250
SymbolEditorState_AddPins()=delete
bool processRotate(const Angle &rotation) noexcept override
Definition symboleditorstate_addpins.cpp:175
SymbolEditorState_AddPins & operator=(const SymbolEditorState_AddPins &rhs)=delete
const UnsignedLength & getLength() const noexcept
Definition symboleditorstate_addpins.h:80
void setName(const CircuitIdentifier &name) noexcept
Definition symboleditorstate_addpins.cpp:110
bool exit() noexcept override
Definition symboleditorstate_addpins.cpp:88
std::shared_ptr< SymbolPin > mCurrentPin
Definition symboleditorstate_addpins.h:101
bool processMirror(Qt::Orientation orientation) noexcept override
Definition symboleditorstate_addpins.cpp:183
bool addNextPin(const Point &pos) noexcept
Definition symboleditorstate_addpins.cpp:224
bool entry() noexcept override
Definition symboleditorstate_addpins.cpp:74
The SymbolEditorState class is the base class of all symbol editor FSM states.
Definition symboleditorstate.h:56
The SymbolPinGraphicsItem class.
Definition symbolpingraphicsitem.h:50
Definition occmodel.cpp:77
type_safe::constrained_type< QString, CircuitIdentifierConstraint, CircuitIdentifierVerifier > CircuitIdentifier
Definition circuitidentifier.h:88
type_safe::constrained_type< Length, UnsignedLengthConstraint, UnsignedLengthVerifier > UnsignedLength
Definition length.h:694
Definition graphicsscene.h:45
Definition symboleditorfsm.h:79