20#ifndef LIBREPCB_EDITOR_BOARDEDITORSTATE_ADDVIA_H
21#define LIBREPCB_EDITOR_BOARDEDITORSTATE_ADDVIA_H
44class BoardGraphicsScene;
65 virtual
bool entry() noexcept override;
66 virtual
bool exit() noexcept override;
92 void setNet(
bool autoNet,
const std::optional<Uuid>& net)
noexcept;
101 void netChanged(
bool autoNet,
const std::optional<Uuid>& net);
111 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:55
const std::optional< PositiveLength > & getDrillDiameter() const noexcept
Definition via.h:86
const std::optional< PositiveLength > & getSize() const noexcept
Definition via.h:89
The "add via" state/tool of the board editor.
Definition boardeditorstate_addvia.h:54
bool mUseAutoNetSignal
Whether the net signal is determined automatically or not.
Definition boardeditorstate_addvia.h:122
std::optional< Uuid > getNet() const noexcept
Definition boardeditorstate_addvia.h:91
PositiveLength getDrillDiameter() const noexcept
Definition boardeditorstate_addvia.cpp:145
virtual bool processGraphicsSceneMouseMoved(const GraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_addvia.cpp:119
QVector< std::pair< Uuid, QString > > getAvailableNets() const noexcept
Definition boardeditorstate_addvia.cpp:262
void saveDrillDiameterInNetClass() noexcept
Definition boardeditorstate_addvia.cpp:208
bool addVia(const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:305
void updateClosestNetSignal(BoardGraphicsScene &scene, const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:498
bool mClosestNetSignalIsUpToDate
Whether mCurrentNetSignal contains an up-to-date closest net signal.
Definition boardeditorstate_addvia.h:128
BI_Via * mCurrentViaToPlace
Definition boardeditorstate_addvia.h:132
void sizeChanged(bool autoSize, const PositiveLength &size)
bool getUseAutoSize() const noexcept
Definition boardeditorstate_addvia.h:84
virtual bool processGraphicsSceneLeftMouseButtonPressed(const GraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_addvia.cpp:128
BoardEditorState_AddVia & operator=(const BoardEditorState_AddVia &rhs)=delete
void setNet(bool autoNet, const std::optional< Uuid > &net) noexcept
Definition boardeditorstate_addvia.cpp:279
virtual ~BoardEditorState_AddVia() noexcept
Definition boardeditorstate_addvia.cpp:86
std::optional< Uuid > mCurrentNetSignal
The current net signal of the via.
Definition boardeditorstate_addvia.h:125
BoardEditorState_AddVia(const BoardEditorState_AddVia &other)=delete
bool getAutoDrillDiameter() const noexcept
Definition boardeditorstate_addvia.h:77
BoardEditorState_AddVia()=delete
void applySelectedNetSignal() noexcept
Definition boardeditorstate_addvia.cpp:476
void drillDiameterChanged(bool autoDrill, const PositiveLength &diameter)
void netChanged(bool autoNet, const std::optional< Uuid > &net)
void saveDrillDiameterInBoard() noexcept
Definition boardeditorstate_addvia.cpp:189
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked(const GraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_addvia.cpp:136
bool abortCommand(bool showErrMsgBox) noexcept
Definition boardeditorstate_addvia.cpp:451
void setNetSignal(NetSignal *netsignal) noexcept
bool mIsUndoCmdActive
Definition boardeditorstate_addvia.h:116
std::unique_ptr< CmdBoardViaEdit > mCurrentViaEditCmd
Definition boardeditorstate_addvia.h:133
virtual bool exit() noexcept override
Definition boardeditorstate_addvia.cpp:106
void setSize(const std::optional< PositiveLength > &size) noexcept
Definition boardeditorstate_addvia.cpp:239
bool updatePosition(BoardGraphicsScene &scene, const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:339
bool getUseAutoNet() const noexcept
Definition boardeditorstate_addvia.h:90
NetSignal * getCurrentNetSignal() const noexcept
Definition boardeditorstate_addvia.cpp:545
Via mCurrentProperties
Definition boardeditorstate_addvia.h:119
bool fixPosition(const Point &pos) noexcept
Definition boardeditorstate_addvia.cpp:354
PositiveLength getSize() const noexcept
Definition boardeditorstate_addvia.cpp:229
virtual bool entry() noexcept override
Definition boardeditorstate_addvia.cpp:93
void setDrillDiameter(const std::optional< PositiveLength > &diameter) noexcept
Definition boardeditorstate_addvia.cpp:158
The board editor state base class.
Definition boardeditorstate.h:60
The BoardGraphicsScene class.
Definition boardgraphicsscene.h:77
The CmdBoardViaEdit class.
Definition cmdboardviaedit.h:49
Definition occmodel.cpp:77
type_safe::constrained_type< Length, PositiveLengthConstraint, PositiveLengthVerifier > PositiveLength
Definition length.h:810
FSM Context.
Definition boardeditorfsm.h:99
Definition graphicsscene.h:45