20#ifndef LIBREPCB_EDITOR_SYMBOLEDITORSTATE_H
21#define LIBREPCB_EDITOR_SYMBOLEDITORSTATE_H
26#include "../../../utils/toolbarproxy.h"
44class SymbolClipboardData;
67 virtual
bool entry() noexcept {
return true; }
68 virtual bool exit() noexcept {
return true; }
83 QGraphicsSceneMouseEvent& e)
noexcept {
88 QGraphicsSceneMouseEvent& e)
noexcept {
93 QGraphicsSceneMouseEvent& e)
noexcept {
98 QGraphicsSceneMouseEvent& e)
noexcept {
103 QGraphicsSceneMouseEvent& e)
noexcept {
111 std::unique_ptr<SymbolClipboardData> data =
nullptr) noexcept {
124 Q_UNUSED(orientation);
142 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:78
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:60
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition: point.h:79
The SymbolClipboardData class.
Definition: symbolclipboarddata.h:52
The SymbolEditorState class is the base class of all symbol editor FSM states.
Definition: symboleditorstate.h:54
Context mContext
Definition: symboleditorstate.h:152
virtual bool processEditProperties() noexcept
Definition: symboleditorstate.h:129
const PositiveLength & getGridInterval() const noexcept
Definition: symboleditorstate.cpp:69
virtual bool processAbortCommand() noexcept
Definition: symboleditorstate.h:131
void requestPaste(std::unique_ptr< SymbolClipboardData > data) noexcept
Definition: symboleditorstate.cpp:63
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked(QGraphicsSceneMouseEvent &e) noexcept
Definition: symboleditorstate.h:97
virtual bool exit() noexcept
Definition: symboleditorstate.h:68
void statusBarMessageChanged(const QString &message, int timeoutMs=-1)
const LengthUnit & getLengthUnit() const noexcept
Definition: symboleditorstate.cpp:73
virtual bool processKeyPressed(const QKeyEvent &e) noexcept
Definition: symboleditorstate.h:74
std::unique_ptr< SymbolClipboardData > takeDataToPaste() noexcept
Definition: symboleditorstate.cpp:55
virtual bool processSnapToGrid() noexcept
Definition: symboleditorstate.h:127
virtual QSet< EditorWidgetBase::Feature > getAvailableFeatures() const noexcept=0
virtual bool processMove(const Point &delta)
Definition: symboleditorstate.h:115
static const QSet< const Layer * > & getAllowedCircleAndPolygonLayers() noexcept
Definition: symboleditorstate.cpp:92
virtual bool entry() noexcept
Definition: symboleditorstate.h:67
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
virtual bool processGraphicsSceneRightMouseButtonReleased(QGraphicsSceneMouseEvent &e) noexcept
Definition: symboleditorstate.h:102
static const QSet< const Layer * > & getAllowedTextLayers() noexcept
Definition: symboleditorstate.cpp:77
virtual bool processGraphicsSceneLeftMouseButtonReleased(QGraphicsSceneMouseEvent &e) noexcept
Definition: symboleditorstate.h:92
virtual bool processRotate(const Angle &rotation) noexcept
Definition: symboleditorstate.h:119
virtual ~SymbolEditorState() noexcept
Definition: symboleditorstate.cpp:47
virtual bool processImportDxf() noexcept
Definition: symboleditorstate.h:130
SymbolEditorState & operator=(const SymbolEditorState &rhs)=delete
SymbolEditorState()=delete
virtual bool processKeyReleased(const QKeyEvent &e) noexcept
Definition: symboleditorstate.h:78
virtual bool processGraphicsSceneMouseMoved(QGraphicsSceneMouseEvent &e) noexcept
Definition: symboleditorstate.h:82
virtual bool processGraphicsSceneLeftMouseButtonPressed(QGraphicsSceneMouseEvent &e) noexcept
Definition: symboleditorstate.h:87
virtual bool processMirror(Qt::Orientation orientation) noexcept
Definition: symboleditorstate.h:123
std::unique_ptr< SymbolClipboardData > mDataToPaste
Definition: symboleditorstate.h:149
virtual bool processCopy() noexcept
Definition: symboleditorstate.h:109
virtual bool processCut() noexcept
Definition: symboleditorstate.h:108
virtual bool processRemove() noexcept
Definition: symboleditorstate.h:128
void availableFeaturesChanged()
Definition: occmodel.cpp:77
type_safe::constrained_type< Length, PositiveLengthConstraint, PositiveLengthVerifier > PositiveLength
Definition: length.h:812
Definition: symboleditorfsm.h:76