HAL
hal::DragController Class Reference

#include <drag_controller.h>

Inheritance diagram for hal::DragController:
Inheritance graph
Collaboration diagram for hal::DragController:
Collaboration graph

Public Member Functions

 DragController (GraphWidget *gw, QObject *parent=nullptr)
 
void clear ()
 
void set (GraphicsNode *drgItem, const QPoint &eventPos)
 
void enterDrag (bool wantSwap)
 
void move (const QPoint &eventPos, bool wantSwap, const QPoint &gridPos)
 
void clearShadows (GraphicsScene *sc)
 
bool hasDragged (const QPoint &eventPos)
 
bool isDropAllowed () const
 
GridPlacementfinalGridPlacement () const
 
NodeDragShadow::DragCue dragCue () const
 
- Public Member Functions inherited from QObject
virtual const QMetaObjectmetaObject () const const
 
 QObject (QObject *parent)
 
virtual ~QObject ()
 
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
 

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 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 42 of file drag_controller.h.

Constructor & Destructor Documentation

◆ DragController()

hal::DragController::DragController ( GraphWidget gw,
QObject parent = nullptr 
)

Definition at line 9 of file drag_controller.cpp.

Member Function Documentation

◆ clear()

◆ clearShadows()

void hal::DragController::clearShadows ( GraphicsScene sc)

Remove all painted shadows from graphics scene

Definition at line 23 of file drag_controller.cpp.

References QGraphicsScene::removeItem(), and hal::GraphicsScene::setDragController().

Referenced by clear().

◆ dragCue()

NodeDragShadow::DragCue hal::DragController::dragCue ( ) const

◆ enterDrag()

void hal::DragController::enterDrag ( bool  wantSwap)

Starts the dragging of a gate or module to show its shadow meanwhile.

Parameters
wantSwap- True if keyboard swap modifier has been pressed, false otherwise

Definition at line 145 of file drag_controller.cpp.

References hal::NodeBox::gridPosition().

Referenced by hal::GraphGraphicsView::dragEnterEvent().

◆ finalGridPlacement()

◆ hasDragged()

bool hal::DragController::hasDragged ( const QPoint eventPos)

◆ isDropAllowed()

◆ move()

void hal::DragController::move ( const QPoint eventPos,
bool  wantSwap,
const QPoint gridPos 
)

Moves the shadow that appears while dragging a gate or module.

Parameters
eventPos- The mouse position in scene coordinates while dragging
wantSwap- True if keyboard swap modifier has been pressed, false otherwise
gridPos- The new grid position of the primary node

Definition at line 156 of file drag_controller.cpp.

References dragCue(), hal::GraphWidget::getContext(), hal::GraphContext::getLayouter(), hal::NodeBox::gridPosition(), hal::GraphLayouter::gridXposition(), hal::GraphLayouter::gridYposition(), isDropAllowed(), QPoint::x(), and QPoint::y().

Referenced by hal::GraphGraphicsView::dragMoveEvent().

◆ set()


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