All Classes Namespaces Functions Variables Enumerations Properties Pages
Signals | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
SelectionManager Class Reference
+ Inheritance diagram for SelectionManager:

Signals

void selectionChanged ()
 
void selectionReset ()
 
void needDeleteSelection ()
 

Public Member Functions

 SelectionManager (Editor *editor)
 
bool init () override
 
Status load (Object *) override
 
Status save (Object *) override
 
void workingLayerChanged (Layer *) override
 
void flipSelection (bool flipVertical)
 ScribbleArea::flipSelection flip selection along the X or Y axis.
 
void setSelection (QRectF rect, bool roundPixels=false)
 
void translate (QPointF point)
 
void rotate (qreal angle, qreal lockedAngle)
 
void scale (qreal sX, qreal sY)
 
void maintainAspectRatio (bool state)
 
void alignPositionToAxis (bool state)
 Locks movement either horizontally or vertically depending on drag direction. More...
 
void setMoveModeForAnchorInRange (const QPointF &point)
 
MoveMode getMoveMode () const
 
void setMoveMode (const MoveMode moveMode)
 
bool somethingSelected () const
 
void adjustSelection (const QPointF &currentPoint, const QPointF &offset, qreal rotationOffset, int rotationIncrement=0)
 
QTransform selectionTransform () const
 
void setSelectionTransform (const QTransform &transform)
 
void resetSelectionTransform ()
 
void resetSelectionTransformProperties ()
 SelectionManager::resetSelectionTransformProperties should be used whenever translate, rotate, transform, scale has been applied to a selection, but don't want to reset size nor position.
 
void resetSelectionProperties ()
 
void deleteSelection ()
 
bool isOutsideSelectionArea (const QPointF &point) const
 
qreal selectionTolerance () const
 
qreal selectionWidth () const
 
qreal selectionHeight () const
 
QPointF currentTransformAnchor () const
 
QPointF getSelectionAnchorPoint () const
 
void setTransformAnchor (const QPointF &point)
 
const QRectFmySelectionRect () const
 
const qreal & myRotation () const
 
const qreal & myScaleX () const
 
const qreal & myScaleY () const
 
const QPointFmyTranslation () const
 
void setRotation (const qreal &rotation)
 
void setScale (const qreal scaleX, const qreal scaleY)
 
void setTranslation (const QPointF &translation)
 
qreal angleFromPoint (const QPointF &point, const QPointF &anchorPoint) const
 
QPointF mapToSelection (const QPointF &point) const
 
QPointF mapFromLocalSpace (const QPointF &point) const
 
QPolygonF mapToSelection (const QPolygonF &polygon) const
 
QPolygonF mapFromLocalSpace (const QPolygonF &polygon) const
 
void setCurves (const QList< int > &curves)
 
void setVertices (const QList< VertexRef > &vertices)
 
void clearCurves ()
 
void clearVertices ()
 
void setAlignToPosition (const QPointF point)
 The point from where the dragging will be based of. More...
 
const QList< int > closestCurves () const
 
const QList< VertexRefclosestVertices () const
 
void calculateSelectionTransformation ()
 This should be called to update the selection transform.
 
- Public Member Functions inherited from BaseManager
Editoreditor () const
 
Objectobject () const
 
- Public Member Functions inherited from QObject
virtual const QMetaObjectmetaObject () 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)
 
QThreadthread () 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)
 
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 QObjectListchildren () 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< QByteArraydynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
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
 

Public Attributes

VectorSelection vectorSelection
 
- Public Attributes inherited from QObject
typedef QObjectList
 

Private Member Functions

QPointF alignPositionToAxis (QPointF currentPoint) const
 Aligns the input position to the nearest axis. More...
 
int constrainRotationToAngle (const qreal rotatedAngle, const int rotationIncrement) const
 

Private Attributes

bool mAspectRatioFixed = false
 
bool mLockAxis = false
 
QPolygonF mSelectionPolygon
 
QRectF mOriginalRect
 
qreal mScaleX
 
qreal mScaleY
 
QPointF mTranslation
 
qreal mRotatedAngle = 0.0
 
QList< int > mClosestCurves
 
QList< VertexRefmClosestVertices
 
QPointF mAlignToAxisStartPosition
 
MoveMode mMoveMode = MoveMode::NONE
 
QTransform mSelectionTransform
 
const qreal mSelectionTolerance = 10.0
 
QPointF mAnchorPoint
 

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)
 
- Protected Member Functions inherited from BaseManager
 BaseManager (Editor *editor, const QString &name)
 
- Protected Member Functions inherited from QObject
QObjectsender () 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 32 of file selectionmanager.h.

Member Function Documentation

void SelectionManager::alignPositionToAxis ( bool  state)
inline

Locks movement either horizontally or vertically depending on drag direction.

Parameters
state

Definition at line 55 of file selectionmanager.h.

QPointF SelectionManager::alignPositionToAxis ( QPointF  currentPoint) const
private

Aligns the input position to the nearest axis.

Eg. draggin along the x axis, will keep the selection to that axis.

Parameters
currentPositionthe position of the cursor
Returns
A point that is either horizontally or vertically aligned with the current position.

Definition at line 311 of file selectionmanager.cpp.

void SelectionManager::setAlignToPosition ( const QPointF  point)
inline

The point from where the dragging will be based of.

This is only usable in combination with mLockAxis

Definition at line 118 of file selectionmanager.h.


The documentation for this class was generated from the following files: