Class: QgsLayoutViewRubberBand

An abstract base class for temporary rubber band items in various shapes, for use within QgsLayoutView widgets.

Note

This is an abstract class, with methods which must be implemented by a subclass.

The following methods must be implemented: create(), finish(), start(), update()

Class Hierarchy

Inheritance diagram of qgis.gui.QgsLayoutViewRubberBand

Base classes

QObject

Subclasses

QgsLayoutViewEllipticalRubberBand

An elliptical rubber band for use within QgsLayoutView widgets.

QgsLayoutViewRectangularRubberBand

A rectangular rubber band for use within QgsLayoutView widgets.

QgsLayoutViewTriangleRubberBand

A triangular rubber band for use within QgsLayoutView widgets.

class qgis.gui.QgsLayoutViewRubberBand[source]

Bases: QObject

__init__(view: QgsLayoutView | None = None)

Constructor for QgsLayoutViewRubberBand.

Parameters:

view (Optional[QgsLayoutView] = None)

brush(self) QBrush[source]

Returns the brush used for drawing the rubber band.

See also

setBrush()

See also

pen()

Return type:

QBrush

abstract create(self, view: QgsLayoutView | None) QgsLayoutViewRubberBand | None[source]

Creates a new instance of the QgsLayoutViewRubberBand subclass.

Parameters:

view (Optional[QgsLayoutView])

Return type:

Optional[QgsLayoutViewRubberBand]

abstract finish(self, position: QPointF | QPoint = QPointF(), modifiers: Qt.KeyboardModifiers | Qt.KeyboardModifier = Qt.KeyboardModifiers()) QRectF[source]

Called when a rubber band use has finished and the rubber band is no longer required. Returns the final bounding box of the rubber band.

Parameters:
  • position (Union[QPointF, QPoint] = QPointF())

  • modifiers (Union[Qt.KeyboardModifiers, Qt.KeyboardModifier] = Qt.KeyboardModifiers())

Return type:

QRectF

layout(self) QgsLayout | None[source]

Returns the layout associated with the rubber band.

See also

view()

Return type:

Optional[QgsLayout]

pen(self) QPen[source]

Returns the pen used for drawing the rubber band.

See also

setPen()

See also

brush()

Return type:

QPen

setBrush(self, brush: QBrush | QColor | Qt.GlobalColor | QGradient)[source]

Sets the brush used for drawing the rubber band.

See also

brush()

See also

setPen()

Parameters:

brush (Union[QBrush, Union[QColor, Qt.GlobalColor], QGradient])

setPen(self, pen: QPen | QColor | Qt.GlobalColor)[source]

Sets the pen used for drawing the rubber band.

See also

pen()

See also

setBrush()

Parameters:

pen (Union[QPen, Union[QColor, Qt.GlobalColor]])

signal sizeChanged[source]

pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL

types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.

abstract start(self, position: QPointF | QPoint, modifiers: Qt.KeyboardModifiers | Qt.KeyboardModifier)[source]

Called when a rubber band should be created at the specified starting position (in layout coordinate space).

Parameters:
  • position (Union[QPointF, QPoint])

  • modifiers (Union[Qt.KeyboardModifiers, Qt.KeyboardModifier])

abstract update(self, position: QPointF | QPoint, modifiers: Qt.KeyboardModifiers | Qt.KeyboardModifier)[source]

Called when a rubber band should be updated to reflect a temporary ending position (in layout coordinate space).

Parameters:
  • position (Union[QPointF, QPoint])

  • modifiers (Union[Qt.KeyboardModifiers, Qt.KeyboardModifier])

updateRect(self, start: QPointF | QPoint, position: QPointF | QPoint, constrainSquare: bool, fromCenter: bool) QRectF[source]

Calculates an updated bounding box rectangle from a original start position and new position. If constrainSquare is True then the bounding box will be forced to a square shape. If fromCenter is True then the original start position will form the center point of the returned rectangle.

Parameters:
  • start (Union[QPointF, QPoint])

  • position (Union[QPointF, QPoint])

  • constrainSquare (bool)

  • fromCenter (bool)

Return type:

QRectF

view(self) QgsLayoutView | None[source]

Returns the view associated with the rubber band.

See also

layout()

Return type:

Optional[QgsLayoutView]