QgsLayoutViewMouseEvent class

A QgsLayoutViewMouseEvent is the result of a user interaction with the mouse on a QgsLayoutView.

It is sent whenever the user moves, clicks, releases or double clicks the mouse. In addition to the coordinates in pixel space it also knows the coordinates the layout space.

Constructors, destructors, conversion operators

QgsLayoutViewMouseEvent(QgsLayoutView* view, QMouseEvent* event, bool snap = false)
Constructor for QgsLayoutViewMouseEvent.

Public functions

auto isSnapped() const -> bool
Returns true if point was snapped, e.g.
auto layoutPoint() const -> QPointF
Returns the event point location in layout coordinates.
auto snappedPoint() const -> QPointF
Returns the snapped event point location in layout coordinates.
void snapPoint(QGraphicsLineItem* horizontalSnapLine = nullptr, QGraphicsLineItem* verticalSnapLine = nullptr, const QList<QgsLayoutItem*>& ignoreItems = QList<QgsLayoutItem*>())
Manually triggers a snap for the mouse event position using the layout's snapper.

Function documentation

QgsLayoutViewMouseEvent::QgsLayoutViewMouseEvent(QgsLayoutView* view, QMouseEvent* event, bool snap = false)

Constructor for QgsLayoutViewMouseEvent.

Parameters
view The view in which the event occurred.
event The original mouse event
snap set to true to snap the point using the layout's snapping settings

Should only be required to be called from the QgsLayoutView.

bool QgsLayoutViewMouseEvent::isSnapped() const

Returns true if point was snapped, e.g.

to grid or guide lines.

QPointF QgsLayoutViewMouseEvent::snappedPoint() const

Returns the snapped event point location in layout coordinates.

The snapped point will consider all possible snapping methods, such as snapping to grid or guide lines.

void QgsLayoutViewMouseEvent::snapPoint(QGraphicsLineItem* horizontalSnapLine = nullptr, QGraphicsLineItem* verticalSnapLine = nullptr, const QList<QgsLayoutItem*>& ignoreItems = QList<QgsLayoutItem*>())

Manually triggers a snap for the mouse event position using the layout's snapper.

If the horizontalSnapLine and verticalSnapLine arguments are specified, then the snapper will automatically display and position these lines to indicate snapping positions to item bounds.

The ignoreItems argument can be used to specify a list of items to avoid snapping to.