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 Slots | Signals | Public Member Functions | Private Member Functions | Private Attributes | List of all members
ToolManager Class Reference
+ Inheritance diagram for ToolManager:
Inheritance graph
[legend]
+ Collaboration diagram for ToolManager:
Collaboration graph
[legend]

Public Slots

void resetAllTools ()
 

Signals

void toolChanged (ToolType)
 
void toolsReset ()
 

Public Member Functions

 ToolManager (Editor *editor)
 
bool init () override
 
Status load (Object *) override
 
Status save (Object *) override
 
BaseTool * currentTool () const
 
BaseTool * getTool (ToolType eToolType)
 
void setDefaultTool ()
 
void setCurrentTool (ToolType eToolType)
 
void tabletSwitchToEraser ()
 
void tabletRestorePrevTool ()
 
bool setTemporaryTool (ToolType eToolType, QFlags< Qt::Key > keys, Qt::KeyboardModifiers modifiers)
 
bool setTemporaryTool (ToolType eToolType, Qt::MouseButtons buttons)
 
bool tryClearTemporaryTool (Qt::Key key)
 
bool tryClearTemporaryTool (Qt::MouseButton button)
 
void clearTemporaryTool ()
 
void cleanupAllToolsData ()
 
bool leavingThisTool ()
 
bool isTransformTool (const BaseTool *baseTool) const
 
bool isStrokeTool (const BaseTool *baseTool) const
 
StrokeTool * currentStrokeTool () const
 
TransformTool * currentTransformTool () const
 
- Public Member Functions inherited from BaseManager
Editor * editor () const
 
Object * object () const
 
virtual bool init ()=0
 
virtual Status load (Object *o)=0
 
virtual Status save (Object *o)=0
 
virtual void workingLayerChanged (Layer *)
 
- 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 setTemporaryTool (ToolType eToolType)
 

Private Attributes

BaseTool * mCurrentTool = nullptr
 
BaseTool * mTabletEraserTool = nullptr
 
BaseTool * mTemporaryTool = nullptr
 
Qt::KeyboardModifiers mTemporaryTriggerModifiers = Qt::NoModifier
 
QFlags< Qt::Key > mTemporaryTriggerKeys
 
Qt::MouseButtons mTemporaryTriggerMouseButtons = Qt::NoButton
 
QHash< ToolType, BaseTool * > mToolSetHash
 

Additional Inherited Members

- 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 BaseManager
 BaseManager (Editor *editor, const QString &name)
 
- 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)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 31 of file toolmanager.h.

Constructor & Destructor Documentation

◆ ToolManager()

ToolManager::ToolManager ( Editor *  editor)
explicit

Definition at line 38 of file toolmanager.cpp.

◆ ~ToolManager()

ToolManager::~ToolManager ( )
override

Definition at line 42 of file toolmanager.cpp.

Member Function Documentation

◆ cleanupAllToolsData()

void ToolManager::cleanupAllToolsData ( )

Definition at line 158 of file toolmanager.cpp.

◆ clearTemporaryTool()

void ToolManager::clearTemporaryTool ( )

Definition at line 267 of file toolmanager.cpp.

◆ currentStrokeTool()

StrokeTool * ToolManager::currentStrokeTool ( ) const

Definition at line 99 of file toolmanager.cpp.

◆ currentTool()

BaseTool * ToolManager::currentTool ( ) const

Definition at line 86 of file toolmanager.cpp.

◆ currentTransformTool()

TransformTool * ToolManager::currentTransformTool ( ) const

Definition at line 114 of file toolmanager.cpp.

◆ getTool()

BaseTool * ToolManager::getTool ( ToolType  eToolType)

Definition at line 119 of file toolmanager.cpp.

◆ init()

bool ToolManager::init ( )
overridevirtual

Implements BaseManager.

Definition at line 50 of file toolmanager.cpp.

◆ isStrokeTool()

bool ToolManager::isStrokeTool ( const BaseTool *  baseTool) const

Definition at line 104 of file toolmanager.cpp.

◆ isTransformTool()

bool ToolManager::isTransformTool ( const BaseTool *  baseTool) const

Definition at line 109 of file toolmanager.cpp.

◆ leavingThisTool()

bool ToolManager::leavingThisTool ( )

Definition at line 153 of file toolmanager.cpp.

◆ load()

Status ToolManager::load ( Object *  )
overridevirtual

Implements BaseManager.

Definition at line 75 of file toolmanager.cpp.

◆ resetAllTools

void ToolManager::resetAllTools ( )
slot

Definition at line 166 of file toolmanager.cpp.

◆ save()

Status ToolManager::save ( Object *  )
overridevirtual

Implements BaseManager.

Definition at line 81 of file toolmanager.cpp.

◆ setCurrentTool()

void ToolManager::setCurrentTool ( ToolType  eToolType)

Definition at line 135 of file toolmanager.cpp.

◆ setDefaultTool()

void ToolManager::setDefaultTool ( )

Definition at line 124 of file toolmanager.cpp.

◆ setTemporaryTool() [1/3]

void ToolManager::setTemporaryTool ( ToolType  eToolType)
private

Definition at line 261 of file toolmanager.cpp.

◆ setTemporaryTool() [2/3]

bool ToolManager::setTemporaryTool ( ToolType  eToolType,
QFlags< Qt::Key >  keys,
Qt::KeyboardModifiers  modifiers 
)

Definition at line 201 of file toolmanager.cpp.

◆ setTemporaryTool() [3/3]

bool ToolManager::setTemporaryTool ( ToolType  eToolType,
Qt::MouseButtons  buttons 
)

Definition at line 211 of file toolmanager.cpp.

◆ tabletRestorePrevTool()

void ToolManager::tabletRestorePrevTool ( )

Definition at line 192 of file toolmanager.cpp.

◆ tabletSwitchToEraser()

void ToolManager::tabletSwitchToEraser ( )

Definition at line 180 of file toolmanager.cpp.

◆ tryClearTemporaryTool() [1/2]

bool ToolManager::tryClearTemporaryTool ( Qt::Key  key)

Definition at line 221 of file toolmanager.cpp.

◆ tryClearTemporaryTool() [2/2]

bool ToolManager::tryClearTemporaryTool ( Qt::MouseButton  button)

Definition at line 251 of file toolmanager.cpp.

Member Data Documentation

◆ mCurrentTool

BaseTool* ToolManager::mCurrentTool = nullptr
private

Definition at line 72 of file toolmanager.h.

◆ mTabletEraserTool

BaseTool* ToolManager::mTabletEraserTool = nullptr
private

Definition at line 73 of file toolmanager.h.

◆ mTemporaryTool

BaseTool* ToolManager::mTemporaryTool = nullptr
private

Definition at line 74 of file toolmanager.h.

◆ mTemporaryTriggerKeys

QFlags<Qt::Key> ToolManager::mTemporaryTriggerKeys
private

Definition at line 77 of file toolmanager.h.

◆ mTemporaryTriggerModifiers

Qt::KeyboardModifiers ToolManager::mTemporaryTriggerModifiers = Qt::NoModifier
private

Definition at line 76 of file toolmanager.h.

◆ mTemporaryTriggerMouseButtons

Qt::MouseButtons ToolManager::mTemporaryTriggerMouseButtons = Qt::NoButton
private

Definition at line 78 of file toolmanager.h.

◆ mToolSetHash

QHash<ToolType, BaseTool*> ToolManager::mToolSetHash
private

Definition at line 80 of file toolmanager.h.


The documentation for this class was generated from the following files:
  • core_lib/src/managers/toolmanager.h
  • core_lib/src/managers/toolmanager.cpp
Generated on Sun Jan 4 2026 06:39:22 for Pencil2D by doxygen 1.9.6 based on revision f960686b9664502345cde3fe2ff693b0a779c087