PaintContext Class

(QAbstractTextDocumentLayout::PaintContext)

The QAbstractTextDocumentLayout::PaintContext class is a convenience class defining the parameters used when painting a document's layout. More...

Header: #include <PaintContext>
qmake: QT += gui

Public Variables

QRectF clip
int cursorPosition
QPalette palette
QVector<Selection> selections

Detailed Description

The QAbstractTextDocumentLayout::PaintContext class is a convenience class defining the parameters used when painting a document's layout.

A paint context is used when rendering custom layouts for QTextDocuments with the QAbstractTextDocumentLayout::draw() function. It is specified by a cursor position, default text color, clip rectangle and a collection of selections.

See also QAbstractTextDocumentLayout.

Member Variable Documentation

QRectF PaintContext::clip

This variable holds a hint to the layout specifying the area around paragraphs, frames or text require painting.

Everything outside of this rectangle does not need to be painted.

Specifying a clip rectangle can speed up drawing of large documents significantly. Note that the clip rectangle is in document coordinates (not in viewport coordinates). It is not a substitute for a clip region set on the painter but merely a hint.

The default value is a null rectangle indicating everything needs to be painted.

int PaintContext::cursorPosition

This variable holds the position within the document, where the cursor line should be drawn.

The default value is -1.

QPalette PaintContext::palette

This variable holds the default color that is used for the text, when no color is specified.

The default value is the application's default palette.

QVector<Selection> PaintContext::selections

This variable holds the collection of selections that will be rendered when passing this paint context to QAbstractTextDocumentLayout's draw() function.

The default value is an empty vector indicating no selection.

© 2020 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.