20#ifndef LIBREPCB_EDITOR_BOARDEDITORSTATE_ADDVIA_H
21#define LIBREPCB_EDITOR_BOARDEDITORSTATE_ADDVIA_H
44class BoardGraphicsScene;
46class PositiveLengthEdit;
66 virtual
bool entry() noexcept override;
67 virtual
bool exit() noexcept override;
71 QGraphicsSceneMouseEvent& e) noexcept override;
73 QGraphicsSceneMouseEvent& e) noexcept override;
75 QGraphicsSceneMouseEvent& e) noexcept override;
91 const
Point& pos) noexcept;
The BI_Via class.
Definition bi_via.h:44
The NetSignal class.
Definition netsignal.h:50
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition point.h:78
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition uuid.h:56
The Via class represents a via of a board.
Definition via.h:52
The "add via" state/tool of the board editor.
Definition boardeditorstate_addvia.h:55
virtual bool processGraphicsSceneMouseMoved(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_addvia.cpp:201
bool mUseAutoNetSignal
Whether the net signal is determined automatically or not.
Definition boardeditorstate_addvia.h:100
bool addVia(const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:227
void updateClosestNetSignal(BoardGraphicsScene &scene, const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:447
bool mClosestNetSignalIsUpToDate
Whether mCurrentNetSignal contains an up-to-date closest net signal.
Definition boardeditorstate_addvia.h:106
BI_Via * mCurrentViaToPlace
Definition boardeditorstate_addvia.h:110
virtual ~BoardEditorState_AddVia() noexcept
Definition boardeditorstate_addvia.cpp:88
void drillDiameterEditValueChanged(const PositiveLength &value) noexcept
Definition boardeditorstate_addvia.cpp:409
std::optional< Uuid > mCurrentNetSignal
The current net signal of the via.
Definition boardeditorstate_addvia.h:103
BoardEditorState_AddVia(const BoardEditorState_AddVia &other)=delete
BoardEditorState_AddVia()=delete
void applySelectedNetSignal() noexcept
Definition boardeditorstate_addvia.cpp:418
bool abortCommand(bool showErrMsgBox) noexcept
Definition boardeditorstate_addvia.cpp:376
void setNetSignal(NetSignal *netsignal) noexcept
bool mIsUndoCmdActive
Definition boardeditorstate_addvia.h:96
Via mLastViaProperties
Definition boardeditorstate_addvia.h:97
QPointer< QComboBox > mNetSignalComboBox
Definition boardeditorstate_addvia.h:114
std::unique_ptr< CmdBoardViaEdit > mCurrentViaEditCmd
Definition boardeditorstate_addvia.h:111
virtual bool exit() noexcept override
Definition boardeditorstate_addvia.cpp:186
bool updatePosition(BoardGraphicsScene &scene, const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:264
NetSignal * getCurrentNetSignal() const noexcept
Definition boardeditorstate_addvia.cpp:484
bool fixPosition(const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:279
virtual bool processGraphicsSceneLeftMouseButtonPressed(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_addvia.cpp:210
void sizeEditValueChanged(const PositiveLength &value) noexcept
Definition boardeditorstate_addvia.cpp:401
virtual bool entry() noexcept override
Definition boardeditorstate_addvia.cpp:95
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_addvia.cpp:218
The board editor state base class.
Definition boardeditorstate.h:59
The BoardGraphicsScene class.
Definition boardgraphicsscene.h:77
The CmdBoardViaEdit class.
Definition cmdboardviaedit.h:49
Definition occmodel.cpp:76
type_safe::constrained_type< Length, PositiveLengthConstraint, PositiveLengthVerifier > PositiveLength
Definition length.h:810
FSM Context.
Definition boardeditorfsm.h:88