20#ifndef LIBREPCB_EDITOR_SYMBOLEDITORSTATE_H
21#define LIBREPCB_EDITOR_SYMBOLEDITORSTATE_H
26#include "../../../graphics/graphicsscene.h"
27#include "../../../utils/toolbarproxy.h"
46class SymbolClipboardData;
69 virtual
bool entry() noexcept {
return true; }
70 virtual bool exit() noexcept {
return true; }
111 std::unique_ptr<SymbolClipboardData> data =
nullptr) noexcept {
124 Q_UNUSED(orientation);
146 void requestPaste(std::unique_ptr<SymbolClipboardData> data)
noexcept;
The Angle class is used to represent an angle (for example 12.75 degrees)
Definition angle.h:76
The Layer class provides all supported geometry layers.
Definition layer.h:42
The LengthUnit class represents a length unit (millimeters, inches,...) and provides some useful meth...
Definition lengthunit.h:62
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition point.h:78
The GraphicsScene class.
Definition graphicsscene.h:64
The SymbolClipboardData class.
Definition symbolclipboarddata.h:49
Interface for the integration of the Symbol editor FSM.
Definition symboleditorfsmadapter.h:61
The SymbolEditorState class is the base class of all symbol editor FSM states.
Definition symboleditorstate.h:56
Context mContext
Definition symboleditorstate.h:159
GraphicsScene * getGraphicsScene() noexcept
Definition symboleditorstate.cpp:69
virtual bool processEditProperties() noexcept
Definition symboleditorstate.h:129
virtual bool processAbortCommand() noexcept
Definition symboleditorstate.h:132
void requestPaste(std::unique_ptr< SymbolClipboardData > data) noexcept
Definition symboleditorstate.cpp:63
virtual bool processGridIntervalChanged(const PositiveLength &inverval) noexcept
Definition symboleditorstate.h:133
SymbolEditorFsmAdapter & mAdapter
Definition symboleditorstate.h:160
virtual bool exit() noexcept
Definition symboleditorstate.h:70
const LengthUnit & getLengthUnit() const noexcept
Definition symboleditorstate.cpp:81
virtual bool processGraphicsSceneLeftMouseButtonPressed(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:87
std::unique_ptr< SymbolClipboardData > takeDataToPaste() noexcept
Definition symboleditorstate.cpp:55
virtual bool processSnapToGrid() noexcept
Definition symboleditorstate.h:127
virtual bool processMove(const Point &delta)
Definition symboleditorstate.h:115
static const QSet< const Layer * > & getAllowedCircleAndPolygonLayers() noexcept
Definition symboleditorstate.cpp:104
virtual bool entry() noexcept
Definition symboleditorstate.h:69
virtual bool processSelectAll() noexcept
Definition symboleditorstate.h:107
SymbolEditorState(const SymbolEditorState &other)=delete
virtual bool processPaste(std::unique_ptr< SymbolClipboardData > data=nullptr) noexcept
Definition symboleditorstate.h:110
QWidget * parentWidget() noexcept
Definition symboleditorstate.cpp:85
static const QSet< const Layer * > & getAllowedTextLayers() noexcept
Definition symboleditorstate.cpp:89
virtual bool processRotate(const Angle &rotation) noexcept
Definition symboleditorstate.h:119
SymbolGraphicsItem * getGraphicsItem() noexcept
Definition symboleditorstate.cpp:73
virtual bool processGraphicsSceneMouseMoved(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:82
virtual ~SymbolEditorState() noexcept
Definition symboleditorstate.cpp:47
virtual bool processImportDxf() noexcept
Definition symboleditorstate.h:131
SymbolEditorState & operator=(const SymbolEditorState &rhs)=delete
SymbolEditorState()=delete
virtual bool processImportPins() noexcept
Definition symboleditorstate.h:130
virtual bool processKeyReleased(const GraphicsSceneKeyEvent &e) noexcept
Definition symboleditorstate.h:78
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:97
virtual bool processKeyPressed(const GraphicsSceneKeyEvent &e) noexcept
Definition symboleditorstate.h:74
PositiveLength getGridInterval() const noexcept
Definition symboleditorstate.cpp:77
virtual bool processMirror(Qt::Orientation orientation) noexcept
Definition symboleditorstate.h:123
std::unique_ptr< SymbolClipboardData > mDataToPaste
Definition symboleditorstate.h:156
virtual bool processGraphicsSceneLeftMouseButtonReleased(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:92
virtual bool processCopy() noexcept
Definition symboleditorstate.h:109
virtual bool processCut() noexcept
Definition symboleditorstate.h:108
virtual bool processGraphicsSceneRightMouseButtonReleased(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:102
virtual bool processRemove() noexcept
Definition symboleditorstate.h:128
The SymbolGraphicsItem class.
Definition symbolgraphicsitem.h:56
Definition occmodel.cpp:77
type_safe::constrained_type< Length, PositiveLengthConstraint, PositiveLengthVerifier > PositiveLength
Definition length.h:810
Definition graphicsscene.h:52
Definition graphicsscene.h:45
Definition symboleditorfsm.h:75