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 Attributes | List of all members
PencilTool Class Reference
+ Inheritance diagram for PencilTool:
Inheritance graph
[legend]
+ Collaboration diagram for PencilTool:
Collaboration graph
[legend]

Public Member Functions

 PencilTool (QObject *parent)
 
ToolType type () override
 
void loadSettings () override
 
void saveSettings () override
 
QCursor cursor () override
 
void resetToDefault () override
 
void pointerPressEvent (PointerEvent *) override
 
void pointerMoveEvent (PointerEvent *) override
 
void pointerReleaseEvent (PointerEvent *) override
 
void drawStroke ()
 
void paintAt (QPointF point)
 
void paintVectorStroke (Layer *layer)
 
void setWidth (const qreal width) override
 
void setFeather (const qreal feather) override
 
void setUseFeather (const bool useFeather) override
 
void setInvisibility (const bool invisibility) override
 
void setPressure (const bool pressure) override
 
void setPreserveAlpha (const bool preserveAlpha) override
 
void setStabilizerLevel (const int level) override
 
void setUseFillContour (const bool useFillContour) override
 
- Public Member Functions inherited from StrokeTool
 StrokeTool (QObject *parent)
 
void startStroke (PointerEvent::InputType inputType)
 
void drawStroke ()
 
void endStroke ()
 
bool leavingThisTool () override
 Will clean up active connections.
 
bool enteringThisTool () override
 Setup active connections here that should only emit while tool is active leavingThisTool will handle the cleanup of active connections.
 
void updateCanvasCursor ()
 
void loadSettings () override
 
bool isActive () const override
 Check if the tool is active.
 
bool keyPressEvent (QKeyEvent *event) override
 
void pointerPressEvent (PointerEvent *event) override
 
void pointerMoveEvent (PointerEvent *event) override
 
void pointerReleaseEvent (PointerEvent *event) override
 
bool enterEvent (QEnterEvent *) override
 
bool leaveEvent (QEvent *) override
 
bool handleQuickSizing (PointerEvent *event)
 
void paint (QPainter &painter, const QRect &blitRect) override
 
- Public Member Functions inherited from BaseTool
QString typeName ()
 
void initialize (Editor *editor)
 
virtual ToolType type ()=0
 
virtual void loadSettings ()=0
 
virtual void saveSettings ()=0
 
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 void resetToDefault ()
 
virtual bool isActive () const
 Check if the tool is active.
 
virtual void setWidth (const qreal width)
 
virtual void setFeather (const qreal feather)
 
virtual void setInvisibility (const bool invisibility)
 
virtual void setBezier (const bool bezier_state)
 
virtual void setClosedPath (const bool closed)
 
virtual void setPressure (const bool pressure)
 
virtual void setUseFeather (const bool usingFeather)
 
virtual void setPreserveAlpha (const bool preserveAlpha)
 
virtual void setVectorMergeEnabled (const bool vectorMergeEnabled)
 
virtual void setAA (const int useAA)
 
virtual void setFillMode (const int mode)
 
virtual void setStabilizerLevel (const int level)
 
virtual void setTolerance (const int tolerance)
 
virtual void setToleranceEnabled (const bool enabled)
 
virtual void setFillExpand (const int fillExpandValue)
 
virtual void setFillExpandEnabled (const bool enabled)
 
virtual void setFillReferenceMode (int referenceMode)
 
virtual void setUseFillContour (const bool useFillContour)
 
virtual void setShowSelectionInfo (const bool b)
 
virtual void setShowCameraPath (const bool showCameraPath)
 
virtual void setPathDotColorType (const DotColorType dotColorType)
 
virtual void resetCameraPath ()
 
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 (ToolPropertyType t)
 
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 interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds 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 Attributes

QPointF mLastBrushPoint { 0, 0 }
 
QPointF mMouseDownPoint
 

Additional Inherited Members

- Public Slots inherited from StrokeTool
void onPreferenceChanged (SETTING setting)
 
void onViewUpdated ()
 
- 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 BaseTool
Properties properties
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Static Public Attributes inherited from StrokeTool
static const qreal FEATHER_MIN = 1.
 
static const qreal FEATHER_MAX = 99.
 
static const qreal WIDTH_MIN = 1.
 
static const qreal WIDTH_MAX = 200.
 
- Protected Member Functions inherited from StrokeTool
QPointF getCurrentPressPixel () const
 
QPointF getCurrentPressPoint () const
 
QPointF getCurrentPixel () const
 
QPointF getCurrentPoint () const
 
QPointF getLastPixel () const
 
QPointF getLastPoint () const
 
virtual bool startAdjusting (Qt::KeyboardModifiers modifiers)
 
virtual void stopAdjusting ()
 
virtual void adjustCursor (Qt::KeyboardModifiers modifiers)
 
virtual bool emptyFrameActionEnabled ()
 Whether to enable the "drawing on empty frame" preference.
 
- 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 StrokeTool
QHash< Qt::KeyboardModifiers, ToolPropertyType > mQuickSizingProperties
 
bool mFirstDraw = false
 
QList< QPointF > mStrokePoints
 
QList< qreal > mStrokePressures
 
qreal mCurrentWidth = 0.0
 
qreal mCurrentPressure = 0.5
 
PointerEvent::InputType mCurrentInputType = PointerEvent::Unknown
 
bool mCanvasCursorEnabled = false
 
QPointF mLastPixel { 0, 0 }
 
QPointF mAdjustPosition
 
CanvasCursorPainter mCanvasCursorPainter
 
StrokeInterpolator mInterpolator
 
const UndoSaveState * mUndoSaveState = nullptr
 
- Protected Attributes inherited from BaseTool
QHash< ToolPropertyType, bool > mPropertyEnabled
 
Editor * mEditor = nullptr
 
ScribbleArea * mScribbleArea = nullptr
 
QList< QMetaObject::Connection > mActiveConnections
 
- Static Protected Attributes inherited from StrokeTool
static bool mQuickSizingEnabled = false
 
static bool msIsAdjusting = false
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 26 of file penciltool.h.

Constructor & Destructor Documentation

◆ PencilTool()

PencilTool::PencilTool ( QObject *  parent)
explicit

Definition at line 36 of file penciltool.cpp.

Member Function Documentation

◆ cursor()

QCursor PencilTool::cursor ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 129 of file penciltool.cpp.

◆ drawStroke()

void PencilTool::drawStroke ( )

Definition at line 229 of file penciltool.cpp.

◆ loadSettings()

void PencilTool::loadSettings ( )
overridevirtual

Implements BaseTool.

Definition at line 40 of file penciltool.cpp.

◆ paintAt()

void PencilTool::paintAt ( QPointF  point)

Definition at line 208 of file penciltool.cpp.

◆ paintVectorStroke()

void PencilTool::paintVectorStroke ( Layer *  layer)

Definition at line 287 of file penciltool.cpp.

◆ pointerMoveEvent()

void PencilTool::pointerMoveEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 159 of file penciltool.cpp.

◆ pointerPressEvent()

void PencilTool::pointerPressEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 138 of file penciltool.cpp.

◆ pointerReleaseEvent()

void PencilTool::pointerReleaseEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 178 of file penciltool.cpp.

◆ resetToDefault()

void PencilTool::resetToDefault ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 74 of file penciltool.cpp.

◆ saveSettings()

void PencilTool::saveSettings ( )
overridevirtual

Implements BaseTool.

Definition at line 61 of file penciltool.cpp.

◆ setFeather()

void PencilTool::setFeather ( const qreal  feather)
overridevirtual

Reimplemented from BaseTool.

Definition at line 88 of file penciltool.cpp.

◆ setInvisibility()

void PencilTool::setInvisibility ( const bool  invisibility)
overridevirtual

Reimplemented from BaseTool.

Definition at line 100 of file penciltool.cpp.

◆ setPreserveAlpha()

void PencilTool::setPreserveAlpha ( const bool  preserveAlpha)
overridevirtual

Reimplemented from BaseTool.

Definition at line 112 of file penciltool.cpp.

◆ setPressure()

void PencilTool::setPressure ( const bool  pressure)
overridevirtual

Reimplemented from BaseTool.

Definition at line 106 of file penciltool.cpp.

◆ setStabilizerLevel()

void PencilTool::setStabilizerLevel ( const int  level)
overridevirtual

Reimplemented from BaseTool.

Definition at line 119 of file penciltool.cpp.

◆ setUseFeather()

void PencilTool::setUseFeather ( const bool  useFeather)
overridevirtual

Reimplemented from BaseTool.

Definition at line 93 of file penciltool.cpp.

◆ setUseFillContour()

void PencilTool::setUseFillContour ( const bool  useFillContour)
overridevirtual

Reimplemented from BaseTool.

Definition at line 124 of file penciltool.cpp.

◆ setWidth()

void PencilTool::setWidth ( const qreal  width)
overridevirtual

Reimplemented from BaseTool.

Definition at line 82 of file penciltool.cpp.

◆ type()

ToolType PencilTool::type ( )
inlineoverridevirtual

Implements BaseTool.

Definition at line 31 of file penciltool.h.

Member Data Documentation

◆ mLastBrushPoint

QPointF PencilTool::mLastBrushPoint { 0, 0 }
private

Definition at line 55 of file penciltool.h.

◆ mMouseDownPoint

QPointF PencilTool::mMouseDownPoint
private

Definition at line 56 of file penciltool.h.


The documentation for this class was generated from the following files:
  • core_lib/src/tool/penciltool.h
  • core_lib/src/tool/penciltool.cpp
Generated on Thu May 8 2025 04:47:54 for Pencil2D by doxygen 1.9.6 based on revision 4513250b1d5b1a3676ec0e67b06b7a885ceaae39