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);
133 const QString& basename)
noexcept {
154 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:54
Interface for the integration of the Symbol editor FSM.
Definition symboleditorfsmadapter.h:62
The SymbolEditorState class is the base class of all symbol editor FSM states.
Definition symboleditorstate.h:56
Context mContext
Definition symboleditorstate.h:167
GraphicsScene * getGraphicsScene() noexcept
Definition symboleditorstate.cpp:68
virtual bool processEditProperties() noexcept
Definition symboleditorstate.h:129
virtual bool processAbortCommand() noexcept
Definition symboleditorstate.h:139
void requestPaste(std::unique_ptr< SymbolClipboardData > data) noexcept
Definition symboleditorstate.cpp:62
SymbolEditorFsmAdapter & mAdapter
Definition symboleditorstate.h:168
virtual bool exit() noexcept
Definition symboleditorstate.h:70
const LengthUnit & getLengthUnit() const noexcept
Definition symboleditorstate.cpp:80
virtual bool processGraphicsSceneLeftMouseButtonPressed(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:87
std::unique_ptr< SymbolClipboardData > takeDataToPaste() noexcept
Definition symboleditorstate.cpp:54
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:103
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:84
static const QSet< const Layer * > & getAllowedTextLayers() noexcept
Definition symboleditorstate.cpp:88
virtual bool processRotate(const Angle &rotation) noexcept
Definition symboleditorstate.h:119
SymbolGraphicsItem * getGraphicsItem() noexcept
Definition symboleditorstate.cpp:72
virtual bool processGraphicsSceneMouseMoved(const GraphicsSceneMouseEvent &e) noexcept
Definition symboleditorstate.h:82
virtual ~SymbolEditorState() noexcept
Definition symboleditorstate.cpp:46
virtual bool processImportDxf() noexcept
Definition symboleditorstate.h:131
SymbolEditorState & operator=(const SymbolEditorState &rhs)=delete
SymbolEditorState()=delete
virtual bool processGridIntervalChanged(const PositiveLength &interval) noexcept
Definition symboleditorstate.h:140
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:76
virtual bool processMirror(Qt::Orientation orientation) noexcept
Definition symboleditorstate.h:123
std::unique_ptr< SymbolClipboardData > mDataToPaste
Definition symboleditorstate.h:164
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 processAddImage(const QByteArray &data, const QString &format, const QString &basename) noexcept
Definition symboleditorstate.h:132
virtual bool processRemove() noexcept
Definition symboleditorstate.h:128
The SymbolGraphicsItem class.
Definition symbolgraphicsitem.h:55
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:79