20#ifndef LIBREPCB_EDITOR_BOARDEDITORSTATE_ADDDEVICE_H
21#define LIBREPCB_EDITOR_BOARDEDITORSTATE_ADDDEVICE_H
40class ComponentInstance;
44class CmdDeviceInstanceEditAll;
64 virtual
bool entry() noexcept override;
65 virtual
bool exit() noexcept override;
70 const
Uuid& footprint) noexcept override;
72 virtual
bool processFlip(Qt::Orientation orientation) noexcept override;
74 QGraphicsSceneMouseEvent& e) noexcept override;
76 QGraphicsSceneMouseEvent& e) noexcept override;
78 QGraphicsSceneMouseEvent& e) noexcept override;
80 QGraphicsSceneMouseEvent& e) noexcept override;
89 const
Uuid& fpt) noexcept;
The Angle class is used to represent an angle (for example 12.75 degrees)
Definition angle.h:76
The BI_Device class.
Definition bi_device.h:57
The ComponentInstance class.
Definition componentinstance.h:54
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition uuid.h:56
The "add device" state/tool of the board editor.
Definition boardeditorstate_adddevice.h:53
bool mirrorDevice(Qt::Orientation orientation) noexcept
Definition boardeditorstate_adddevice.cpp:201
virtual bool processGraphicsSceneMouseMoved(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_adddevice.cpp:92
bool addDevice(ComponentInstance &cmp, const Uuid &dev, const Uuid &fpt) noexcept
Definition boardeditorstate_adddevice.cpp:152
bool rotateDevice(const Angle &angle) noexcept
Definition boardeditorstate_adddevice.cpp:192
BoardEditorState_AddDevice()=delete
virtual bool processAddDevice(ComponentInstance &component, const Uuid &device, const Uuid &footprint) noexcept override
Definition boardeditorstate_adddevice.cpp:75
virtual bool processRotate(const Angle &rotation) noexcept override
Definition boardeditorstate_adddevice.cpp:83
std::unique_ptr< CmdDeviceInstanceEditAll > mCurrentDeviceEditCmd
Definition boardeditorstate_adddevice.h:100
bool abortCommand(bool showErrMsgBox) noexcept
Definition boardeditorstate_adddevice.cpp:218
BI_Device * mCurrentDeviceToPlace
Definition boardeditorstate_adddevice.h:99
bool mIsUndoCmdActive
Definition boardeditorstate_adddevice.h:95
BoardEditorState_AddDevice(const BoardEditorState_AddDevice &other)=delete
virtual bool exit() noexcept override
Definition boardeditorstate_adddevice.cpp:66
virtual bool processGraphicsSceneRightMouseButtonReleased(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_adddevice.cpp:136
virtual bool processFlip(Qt::Orientation orientation) noexcept override
Definition boardeditorstate_adddevice.cpp:87
virtual bool processGraphicsSceneLeftMouseButtonPressed(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_adddevice.cpp:106
virtual ~BoardEditorState_AddDevice() noexcept
Definition boardeditorstate_adddevice.cpp:54
virtual bool entry() noexcept override
Definition boardeditorstate_adddevice.cpp:61
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked(QGraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_adddevice.cpp:131
The board editor state base class.
Definition boardeditorstate.h:59
The CmdDeviceInstanceEditAll class.
Definition cmddeviceinstanceeditall.h:51
Definition occmodel.cpp:76
FSM Context.
Definition boardeditorfsm.h:88