Pencil2D Animation
Download Community News Docs Contribute
  • Overview
  • Articles
  • Code
  •  
  • Class List
  • Class Index
  • Class Hierarchy
  • Class Members
  • File List
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
MoveTool Class Reference
+ Inheritance diagram for MoveTool:
Inheritance graph
[legend]
+ Collaboration diagram for MoveTool:
Collaboration graph
[legend]

Public Member Functions

 MoveTool (QObject *parent)
 
QCursor cursor () override
 
QCursor cursor (MoveMode mode) const
 
ToolType type () const override
 
ToolProperties & toolProperties () override
 
void loadSettings () override
 
void pointerPressEvent (PointerEvent *) override
 
void pointerReleaseEvent (PointerEvent *) override
 
void pointerMoveEvent (PointerEvent *) override
 
bool leavingThisTool () override
 Will clean up active connections.
 
bool isActive () const override
 Check if the tool is active.
 
- Public Member Functions inherited from TransformTool
 TransformTool (QObject *parent=nullptr)
 
ToolProperties & toolProperties () override
 
const TransformToolProperties & transformSettings () const
 
void setShowSelectionInfo (bool enabled)
 
void setAntiAliasingEnabled (bool enabled)
 
- Public Member Functions inherited from BaseTool
QString typeName ()
 
void initialize (Editor *editor)
 
virtual ToolType type () const =0
 
virtual ToolProperties & toolProperties ()=0
 
virtual void loadSettings ()=0
 
void saveSettings ()
 
void resetSettings ()
 
virtual QCursor cursor ()
 
virtual void pointerPressEvent (PointerEvent *)=0
 
virtual void pointerMoveEvent (PointerEvent *)=0
 
virtual void pointerReleaseEvent (PointerEvent *)=0
 
virtual void pointerDoubleClickEvent (PointerEvent *)
 
virtual bool keyPressEvent (QKeyEvent *)
 
virtual bool keyReleaseEvent (QKeyEvent *)
 
virtual bool enterEvent (QEnterEvent *)
 
virtual bool leaveEvent (QEvent *)
 
virtual void clearToolData ()
 
virtual bool isActive () const
 Check if the tool is active.
 
virtual void paint (QPainter &painter, const QRect &blitRect)
 
virtual bool leavingThisTool ()
 Will clean up active connections.
 
virtual bool enteringThisTool ()
 Setup active connections here that should only emit while tool is active leavingThisTool will handle the cleanup of active connections.
 
bool isPropertyEnabled (int rawType)
 
bool isDrawingTool ()
 BaseTool::isDrawingTool - A drawing tool is anything that applies something to the canvas.
 
- Public Member Functions inherited from QObject
virtual const QMetaObject * metaObject () const const
 
 QObject (QObject *parent)
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
QString objectName () const const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
bool blockSignals (bool block)
 
QThread * thread () const const
 
void moveToThread (QThread *targetThread)
 
int startTimer (int time, Qt::TimerType timerType)
 
void killTimer (int id)
 
T findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
const QObjectList & children () const const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
void dumpObjectTree () const const
 
void dumpObjectInfo () const const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const const
 
QList< QByteArray > dynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObject * parent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
T qobject_cast (QObject *object)
 
T qobject_cast (const QObject *object)
 
T qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
 Q_CLASSINFO (Name, Value)
 
 Q_INTERFACES (...)
 
 Q_PROPERTY (...)
 
 Q_ENUMS (...)
 
 Q_FLAGS (...)
 
 Q_ENUM (...)
 
 Q_FLAG (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG_NS (...)
 
 Q_OBJECT Q_OBJECT
 
 Q_GADGET Q_GADGET
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SLOTS Q_SLOTS
 
 Q_SLOT Q_SLOT
 
 Q_EMIT Q_EMIT
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 

Private Member Functions

void applyTransformation ()
 
void updateSettings (const SETTING setting)
 
void beginInteraction (const QPointF &pos, Qt::KeyboardModifiers keyMod, Layer *layer)
 
void createVectorSelection (const QPointF &pos, Qt::KeyboardModifiers keyMod, Layer *layer)
 MoveTool::createVectorSelection In vector the selection rectangle is based on the bounding box of the curves We can therefore create a selection just by clicking near/on a curve.
 
void transformSelection (const QPointF &pos, Qt::KeyboardModifiers keyMod)
 
void storeClosestVectorCurve (const QPointF &pos, Layer *layer)
 MoveTool::storeClosestVectorCurve stores the curves closest to the mouse position in mClosestCurves.
 
void setCurveSelected (VectorImage *vectorImage, Qt::KeyboardModifiers keyMod)
 
void setAreaSelected (const QPointF &pos, VectorImage *vectorImage, Qt::KeyboardModifiers keyMod)
 
Layer * currentPaintableLayer ()
 

Private Attributes

QPointF mCurrentPoint
 
qreal mRotatedAngle = 0.0
 
int mRotationIncrement = 0
 
MoveMode mPerspMode
 
QPointF mOffset
 
const UndoSaveState * mUndoSaveState = nullptr
 

Additional Inherited Members

- Signals inherited from TransformTool
void showSelectionInfoChanged (bool enabled)
 
void antiAliasingChanged (bool enabled)
 
- Signals inherited from BaseTool
bool isActiveChanged (ToolType, bool)
 
- Static Public Member Functions inherited from BaseTool
static QString TypeName (ToolType)
 
- Static Public Member Functions inherited from QObject
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from BaseTool
 BaseTool (QObject *parent)
 
Editor * editor ()
 
- Protected Member Functions inherited from QObject
QObject * sender () const const
 
int senderSignalIndex () const const
 
int receivers (const char *signal) const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
- Protected Attributes inherited from TransformTool
TransformToolProperties mSettings
 
- Protected Attributes inherited from BaseTool
QHash< int, QSet< Layer::LAYER_TYPE > > mPropertyUsed
 
Editor * mEditor = nullptr
 
ScribbleArea * mScribbleArea = nullptr
 
QList< QMetaObject::Connection > mActiveConnections
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 30 of file movetool.h.

Constructor & Destructor Documentation

◆ MoveTool()

MoveTool::MoveTool ( QObject *  parent)
explicit

Definition at line 38 of file movetool.cpp.

Member Function Documentation

◆ applyTransformation()

void MoveTool::applyTransformation ( )
private

Definition at line 321 of file movetool.cpp.

◆ beginInteraction()

void MoveTool::beginInteraction ( const QPointF &  pos,
Qt::KeyboardModifiers  keyMod,
Layer *  layer 
)
private

Definition at line 217 of file movetool.cpp.

◆ createVectorSelection()

void MoveTool::createVectorSelection ( const QPointF &  pos,
Qt::KeyboardModifiers  keyMod,
Layer *  layer 
)
private

MoveTool::createVectorSelection In vector the selection rectangle is based on the bounding box of the curves We can therefore create a selection just by clicking near/on a curve.

Definition at line 263 of file movetool.cpp.

◆ currentPaintableLayer()

Layer * MoveTool::currentPaintableLayer ( )
private

Definition at line 349 of file movetool.cpp.

◆ cursor() [1/2]

QCursor MoveTool::cursor ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 70 of file movetool.cpp.

◆ cursor() [2/2]

QCursor MoveTool::cursor ( MoveMode  mode) const

Definition at line 359 of file movetool.cpp.

◆ isActive()

bool MoveTool::isActive ( ) const
overridevirtual

Check if the tool is active.

An active tool is definied as one which is actively modifying the buffer. This is used to check if an full frame cache can be used instead of redrawing with CanvasPainter.

Returns
Returns true if the tool is currently active, else returns false.

Reimplemented from BaseTool.

Definition at line 344 of file movetool.cpp.

◆ leavingThisTool()

bool MoveTool::leavingThisTool ( )
overridevirtual

Will clean up active connections.

Reimplemented from BaseTool.

Definition at line 332 of file movetool.cpp.

◆ loadSettings()

void MoveTool::loadSettings ( )
overridevirtual

Implements BaseTool.

Definition at line 47 of file movetool.cpp.

◆ pointerMoveEvent()

void MoveTool::pointerMoveEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 130 of file movetool.cpp.

◆ pointerPressEvent()

void MoveTool::pointerPressEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 107 of file movetool.cpp.

◆ pointerReleaseEvent()

void MoveTool::pointerReleaseEvent ( PointerEvent *  )
overridevirtual

Implements BaseTool.

Definition at line 171 of file movetool.cpp.

◆ setAreaSelected()

void MoveTool::setAreaSelected ( const QPointF &  pos,
VectorImage *  vectorImage,
Qt::KeyboardModifiers  keyMod 
)
private

Definition at line 294 of file movetool.cpp.

◆ setCurveSelected()

void MoveTool::setCurveSelected ( VectorImage *  vectorImage,
Qt::KeyboardModifiers  keyMod 
)
private

Definition at line 280 of file movetool.cpp.

◆ storeClosestVectorCurve()

void MoveTool::storeClosestVectorCurve ( const QPointF &  pos,
Layer *  layer 
)
private

MoveTool::storeClosestVectorCurve stores the curves closest to the mouse position in mClosestCurves.

Definition at line 312 of file movetool.cpp.

◆ toolProperties()

ToolProperties & MoveTool::toolProperties ( )
inlineoverridevirtual

Implements BaseTool.

Definition at line 40 of file movetool.h.

◆ transformSelection()

void MoveTool::transformSelection ( const QPointF &  pos,
Qt::KeyboardModifiers  keyMod 
)
private

Definition at line 189 of file movetool.cpp.

◆ type()

ToolType MoveTool::type ( ) const
overridevirtual

Implements BaseTool.

Definition at line 42 of file movetool.cpp.

◆ updateSettings()

void MoveTool::updateSettings ( const SETTING  setting)
private

Definition at line 86 of file movetool.cpp.

Member Data Documentation

◆ mCurrentPoint

QPointF MoveTool::mCurrentPoint
private

Definition at line 64 of file movetool.h.

◆ mOffset

QPointF MoveTool::mOffset
private

Definition at line 68 of file movetool.h.

◆ mPerspMode

MoveMode MoveTool::mPerspMode
private

Definition at line 67 of file movetool.h.

◆ mRotatedAngle

qreal MoveTool::mRotatedAngle = 0.0
private

Definition at line 65 of file movetool.h.

◆ mRotationIncrement

int MoveTool::mRotationIncrement = 0
private

Definition at line 66 of file movetool.h.

◆ mUndoSaveState

const UndoSaveState* MoveTool::mUndoSaveState = nullptr
private

Definition at line 70 of file movetool.h.


The documentation for this class was generated from the following files:
  • core_lib/src/tool/movetool.h
  • core_lib/src/tool/movetool.cpp
Generated on Tue Jan 6 2026 11:38:52 for Pencil2D by doxygen 1.9.6 based on revision f91a96748ec6712509b9b0ff47979db9c34d556f