20#ifndef LIBREPCB_EDITOR_BOARDEDITORSTATE_DRAWZONE_H
21#define LIBREPCB_EDITOR_BOARDEDITORSTATE_DRAWZONE_H
46class CmdBoardZoneEdit;
66 virtual
bool entry() noexcept override;
67 virtual
bool exit() noexcept override;
83 void setLayers(
const QSet<const Layer*>& layers)
noexcept;
The BI_Zone class.
Definition bi_zone.h:46
The BoardZoneData class.
Definition boardzonedata.h:44
const QSet< const Layer * > & getLayers() const noexcept
Definition boardzonedata.h:57
Zone::Rules getRules() const noexcept
Definition boardzonedata.h:58
The Layer class provides all supported geometry layers.
Definition layer.h:42
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition point.h:78
The "draw zone" state/tool of the board editor.
Definition boardeditorstate_drawzone.h:55
virtual ~BoardEditorState_DrawZone() noexcept
Definition boardeditorstate_drawzone.cpp:62
virtual bool processGraphicsSceneMouseMoved(const GraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_drawzone.cpp:100
BoardZoneData mCurrentProperties
Definition boardeditorstate_drawzone.h:109
void rulesChanged(Zone::Rules rules)
Point mLastVertexPos
Definition boardeditorstate_drawzone.h:106
Zone::Rules getRules() const noexcept
Definition boardeditorstate_drawzone.h:84
QSet< const Layer * > getAvailableLayers() noexcept
Definition boardeditorstate_drawzone.cpp:127
virtual bool processGraphicsSceneLeftMouseButtonPressed(const GraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_drawzone.cpp:106
virtual bool processAbortCommand() noexcept override
Definition boardeditorstate_drawzone.cpp:90
BoardEditorState_DrawZone(const BoardEditorState_DrawZone &other)=delete
BI_Zone * mCurrentZone
Definition boardeditorstate_drawzone.h:113
std::unique_ptr< CmdBoardZoneEdit > mCurrentZoneEditCmd
Definition boardeditorstate_drawzone.h:114
BoardEditorState_DrawZone()=delete
QSet< const Layer * > getLayers() const noexcept
Definition boardeditorstate_drawzone.h:80
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked(const GraphicsSceneMouseEvent &e) noexcept override
Definition boardeditorstate_drawzone.cpp:118
bool abortCommand(bool showErrMsgBox) noexcept
Definition boardeditorstate_drawzone.cpp:249
BoardEditorState_DrawZone & operator=(const BoardEditorState_DrawZone &rhs)=delete
void layersChanged(const QSet< const Layer * > &layers)
bool mIsUndoCmdActive
Definition boardeditorstate_drawzone.h:105
virtual bool exit() noexcept override
Definition boardeditorstate_drawzone.cpp:77
bool addSegment(const Point &pos) noexcept
Definition boardeditorstate_drawzone.cpp:192
void setLayers(const QSet< const Layer * > &layers) noexcept
Definition boardeditorstate_drawzone.cpp:131
bool startAddZone(const Point &pos) noexcept
Definition boardeditorstate_drawzone.cpp:159
void setRule(Zone::Rule rule, bool enable) noexcept
Definition boardeditorstate_drawzone.cpp:142
bool updateLastVertexPosition(const Point &pos) noexcept
Definition boardeditorstate_drawzone.cpp:237
virtual bool entry() noexcept override
Definition boardeditorstate_drawzone.cpp:69
The board editor state base class.
Definition boardeditorstate.h:60
Definition occmodel.cpp:77
FSM Context.
Definition boardeditorfsm.h:88
Definition graphicsscene.h:45