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

Signals

void bezierPathEnabledChanged (bool useBezier)
 
void closePathChanged (bool closePath)
 
- Signals inherited from StrokeTool
void widthChanged (qreal value)
 
void featherChanged (qreal value)
 
void pressureEnabledChanged (bool enabled)
 
void featherEnabledChanged (bool enabled)
 
void antiAliasingEnabledChanged (bool enabled)
 
void fillContourEnabledChanged (bool enabled)
 
void invisibleStrokeEnabledChanged (bool enabled)
 
void stabilizationLevelChanged (int level)
 
- Signals inherited from BaseTool
bool isActiveChanged (ToolType, bool)
 

Public Member Functions

 PolylineTool (QObject *parent=0)
 
ToolType type () const override
 
ToolProperties & toolProperties () override
 
const StrokeToolProperties & strokeToolProperties () const override
 
const PolylineToolProperties & settings () const
 
void loadSettings () override
 
QCursor cursor () override
 
void setUseBezier (bool useBezier)
 
void setClosePath (bool closePath)
 
void pointerPressEvent (PointerEvent *) override
 
void pointerReleaseEvent (PointerEvent *) override
 
void pointerMoveEvent (PointerEvent *event) override
 
void pointerDoubleClickEvent (PointerEvent *) override
 
bool keyPressEvent (QKeyEvent *event) override
 
bool keyReleaseEvent (QKeyEvent *event) override
 
void clearToolData () override
 
bool leavingThisTool () override
 Will clean up active connections.
 
bool isActive () const override
 Check if the tool is active.
 
- Public Member Functions inherited from StrokeTool
 StrokeTool (QObject *parent)
 
virtual const StrokeToolProperties & strokeToolProperties () const =0
 
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
 
virtual void setStablizationLevel (int level)
 
virtual void setWidth (qreal width)
 
virtual void setFeather (qreal feather)
 
virtual void setPressureEnabled (bool enabled)
 
virtual void setFeatherEnabled (bool enabled)
 
virtual void setAntiAliasingEnabled (bool enabled)
 
virtual void setFillContourEnabled (bool enabled)
 
virtual void setStrokeInvisibleEnabled (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 drawPolyline (QList< QPointF > points, QPointF endPoint)
 
void removeLastPolylineSegment ()
 
void cancelPolyline ()
 
void endPolyline (QList< QPointF > points)
 

Private Attributes

PolylineToolProperties mSettings
 
QList< QPointF > mPoints
 
bool mClosedPathOverrideEnabled = false
 

Additional Inherited Members

- Public Slots inherited from StrokeTool
void onPreferenceChanged (SETTING setting)
 
void onViewUpdated ()
 
- 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 StrokeTool
QPointF getCurrentPressPixel () const
 
QPointF getCurrentPressPoint () const
 
QPointF getCurrentPixel () const
 
QPointF getCurrentPoint () const
 
QPointF getLastPixel () const
 
QPointF getLastPoint () const
 
QRectF cursorRect (StrokeToolProperties::Type settingType, const QPointF &point)
 
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, int > 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 }
 
StrokeInterpolator mInterpolator
 
const UndoSaveState * mUndoSaveState = nullptr
 
- Protected Attributes inherited from BaseTool
QHash< int, QSet< Layer::LAYER_TYPE > > mPropertyUsed
 
Editor * mEditor = nullptr
 
ScribbleArea * mScribbleArea = nullptr
 
QList< QMetaObject::Connection > mActiveConnections
 
- Static Protected Attributes inherited from StrokeTool
static bool mQuickSizingEnabled = false
 
static const qreal FEATHER_MIN = 1.
 
static const qreal FEATHER_MAX = 99.
 
static const qreal WIDTH_MIN = 1.
 
static const qreal WIDTH_MAX = 200.
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Definition at line 25 of file polylinetool.h.

Constructor & Destructor Documentation

◆ PolylineTool()

PolylineTool::PolylineTool ( QObject *  parent = 0)
explicit

Definition at line 34 of file polylinetool.cpp.

Member Function Documentation

◆ cancelPolyline()

void PolylineTool::cancelPolyline ( )
private

Definition at line 305 of file polylinetool.cpp.

◆ clearToolData()

void PolylineTool::clearToolData ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 97 of file polylinetool.cpp.

◆ cursor()

QCursor PolylineTool::cursor ( )
overridevirtual

Reimplemented from BaseTool.

Definition at line 92 of file polylinetool.cpp.

◆ drawPolyline()

void PolylineTool::drawPolyline ( QList< QPointF >  points,
QPointF  endPoint 
)
private

Definition at line 254 of file polylinetool.cpp.

◆ endPolyline()

void PolylineTool::endPolyline ( QList< QPointF >  points)
private

Definition at line 310 of file polylinetool.cpp.

◆ isActive()

bool PolylineTool::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 87 of file polylinetool.cpp.

◆ keyPressEvent()

bool PolylineTool::keyPressEvent ( QKeyEvent *  event)
overridevirtual

Reimplemented from BaseTool.

Definition at line 197 of file polylinetool.cpp.

◆ keyReleaseEvent()

bool PolylineTool::keyReleaseEvent ( QKeyEvent *  event)
overridevirtual

Reimplemented from BaseTool.

Definition at line 237 of file polylinetool.cpp.

◆ leavingThisTool()

bool PolylineTool::leavingThisTool ( )
overridevirtual

Will clean up active connections.

Reimplemented from BaseTool.

Definition at line 77 of file polylinetool.cpp.

◆ loadSettings()

void PolylineTool::loadSettings ( )
overridevirtual

Implements BaseTool.

Definition at line 43 of file polylinetool.cpp.

◆ pointerDoubleClickEvent()

void PolylineTool::pointerDoubleClickEvent ( PointerEvent *  event)
overridevirtual

Reimplemented from BaseTool.

Definition at line 170 of file polylinetool.cpp.

◆ pointerMoveEvent()

void PolylineTool::pointerMoveEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 144 of file polylinetool.cpp.

◆ pointerPressEvent()

void PolylineTool::pointerPressEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 111 of file polylinetool.cpp.

◆ pointerReleaseEvent()

void PolylineTool::pointerReleaseEvent ( PointerEvent *  event)
overridevirtual

Implements BaseTool.

Definition at line 160 of file polylinetool.cpp.

◆ removeLastPolylineSegment()

void PolylineTool::removeLastPolylineSegment ( )
private

Definition at line 183 of file polylinetool.cpp.

◆ setClosePath()

void PolylineTool::setClosePath ( bool  closePath)

Definition at line 350 of file polylinetool.cpp.

◆ settings()

const PolylineToolProperties & PolylineTool::settings ( ) const
inline

Definition at line 35 of file polylinetool.h.

◆ setUseBezier()

void PolylineTool::setUseBezier ( bool  useBezier)

Definition at line 344 of file polylinetool.cpp.

◆ strokeToolProperties()

const StrokeToolProperties & PolylineTool::strokeToolProperties ( ) const
inlineoverridevirtual

Implements StrokeTool.

Definition at line 34 of file polylinetool.h.

◆ toolProperties()

ToolProperties & PolylineTool::toolProperties ( )
inlineoverridevirtual

Implements BaseTool.

Definition at line 33 of file polylinetool.h.

◆ type()

ToolType PolylineTool::type ( ) const
overridevirtual

Implements BaseTool.

Definition at line 38 of file polylinetool.cpp.

Member Data Documentation

◆ mClosedPathOverrideEnabled

bool PolylineTool::mClosedPathOverrideEnabled = false
private

Definition at line 65 of file polylinetool.h.

◆ mPoints

QList<QPointF> PolylineTool::mPoints
private

Definition at line 64 of file polylinetool.h.

◆ mSettings

PolylineToolProperties PolylineTool::mSettings
private

Definition at line 63 of file polylinetool.h.


The documentation for this class was generated from the following files:
  • core_lib/src/tool/polylinetool.h
  • core_lib/src/tool/polylinetool.cpp
Generated on Tue Dec 23 2025 02:59:17 for Pencil2D by doxygen 1.9.6 based on revision ba57a3de29b42de06bbb5b1757aa7f34e6bc4514