Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QTextDocument Class Reference

\reentrant \inmodule QtGui More...

#include <qtextdocument.h>

Inheritance diagram for QTextDocument:
Collaboration diagram for QTextDocument:

Public Types

enum  MetaInformation { DocumentTitle , DocumentUrl , CssMedia , FrontMatter }
 This enum describes the different types of meta information that can be added to a document. More...
enum  FindFlag { FindBackward = 0x00001 , FindCaseSensitively = 0x00002 , FindWholeWords = 0x00004 }
 This enum describes the options available to QTextDocument's find function. More...
enum  ResourceType {
  UnknownResource = 0 , HtmlResource = 1 , ImageResource = 2 , StyleSheetResource = 3 ,
  MarkdownResource = 4 , UserResource = 100
}
 This enum describes the types of resources that can be loaded by QTextDocument's loadResource() function or by QTextBrowser::setSource(). More...
enum  Stacks { UndoStack = 0x01 , RedoStack = 0x02 , UndoAndRedoStacks = UndoStack | RedoStack }
 \value UndoStack The undo stack. More...
using ResourceProvider = std::function<QVariant(const QUrl&)>

Public Slots

void undo ()
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void redo ()
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Redoes the last editing operation on the document if \l{QTextDocument::isRedoAvailable()}{redo is available}.
void appendUndoItem (QAbstractUndoItem *)
void setModified (bool m=true)
Public Slots inherited from QObject
void deleteLater ()
 \threadsafe

Signals

void contentsChange (int from, int charsRemoved, int charsAdded)
 This signal is emitted whenever the document's content changes; for example, when text is inserted or deleted, or when formatting is applied.
void contentsChanged ()
 This signal is emitted whenever the document's content changes; for example, when text is inserted or deleted, or when formatting is applied.
void undoAvailable (bool)
 This signal is emitted whenever undo operations become available (available is true) or unavailable (available is false).
void redoAvailable (bool)
 This signal is emitted whenever redo operations become available (available is true) or unavailable (available is false).
void undoCommandAdded ()
void modificationChanged (bool m)
 This signal is emitted whenever the content of the document changes in a way that affects the modification state.
void cursorPositionChanged (const QTextCursor &cursor)
 This signal is emitted whenever the position of a cursor changed due to an editing operation.
void blockCountChanged (int newBlockCount)
void baseUrlChanged (const QUrl &url)
void documentLayoutChanged ()
Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.

Public Member Functions

 QTextDocument (QObject *parent=nullptr)
 Constructs an empty QTextDocument with the given parent.
 QTextDocument (const QString &text, QObject *parent=nullptr)
 Constructs a QTextDocument containing the plain (unformatted) text specified, and with the given parent.
 ~QTextDocument ()
 Destroys the document.
QTextDocumentclone (QObject *parent=nullptr) const
 Creates a new QTextDocument that is a copy of this text document.
bool isEmpty () const
 Returns true if the document is empty; otherwise returns false.
virtual void clear ()
 Clears the document.
void setUndoRedoEnabled (bool enable)
bool isUndoRedoEnabled () const
bool isUndoAvailable () const
 Returns true if undo is available; otherwise returns false.
bool isRedoAvailable () const
 Returns true if redo is available; otherwise returns false.
int availableUndoSteps () const
int availableRedoSteps () const
int revision () const
void setDocumentLayout (QAbstractTextDocumentLayout *layout)
 Sets the document to use the given layout.
QAbstractTextDocumentLayoutdocumentLayout () const
 Returns the document layout for this document.
void setMetaInformation (MetaInformation info, const QString &)
 Sets the document's meta information of the type specified by info to the given string.
QString metaInformation (MetaInformation info) const
 Returns meta information about the document of the type specified by info.
QString toHtml () const
 Returns a string containing an HTML representation of the document.
void setHtml (const QString &html)
 Replaces the entire contents of the document with the given HTML-formatted text in the html string.
QString toRawText () const
 Returns the raw text contained in the document without any formatting information.
QString toPlainText () const
 Returns the plain text contained in the document.
void setPlainText (const QString &text)
 Replaces the entire contents of the document with the given plain text.
QChar characterAt (int pos) const
QTextCursor find (const QString &subString, int from=0, FindFlags options=FindFlags()) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Finds the next occurrence of the string, subString, in the document.
QTextCursor find (const QString &subString, const QTextCursor &cursor, FindFlags options=FindFlags()) const
 Finds the next occurrence of the string, subString, in the document.
QTextFrameframeAt (int pos) const
QTextFramerootFrame () const
 Returns the document's root frame.
QTextObjectobject (int objectIndex) const
 Returns the text object associated with the given objectIndex.
QTextObjectobjectForFormat (const QTextFormat &) const
 Returns the text object associated with the format f.
QTextBlock findBlock (int pos) const
 Returns the text block that contains the {pos}-th character.
QTextBlock findBlockByNumber (int blockNumber) const
QTextBlock findBlockByLineNumber (int blockNumber) const
QTextBlock begin () const
 Returns the document's first text block.
QTextBlock end () const
 This function returns a block to test for the end of the document while iterating over it.
QTextBlock firstBlock () const
QTextBlock lastBlock () const
void setPageSize (const QSizeF &size)
QSizeF pageSize () const
void setDefaultFont (const QFont &font)
 Sets the default font to use in the document layout.
QFont defaultFont () const
 Returns the default font to be used in the document layout.
void setSuperScriptBaseline (qreal baseline)
qreal superScriptBaseline () const
void setSubScriptBaseline (qreal baseline)
qreal subScriptBaseline () const
void setBaselineOffset (qreal baseline)
qreal baselineOffset () const
int pageCount () const
 returns the number of pages in this document.
bool isModified () const
void print (QPagedPaintDevice *printer) const
 Prints the document to the given printer.
QVariant resource (int type, const QUrl &name) const
 Returns data of the specified type from the resource with the given name.
void addResource (int type, const QUrl &name, const QVariant &resource)
 Adds the resource resource to the resource cache, using type and name as identifiers.
QTextDocument::ResourceProvider resourceProvider () const
void setResourceProvider (const ResourceProvider &provider)
QList< QTextFormatallFormats () const
 Returns a list of text formats for all the formats used in the document.
void markContentsDirty (int from, int length)
 Marks the contents specified by the given position and length as "dirty", informing the document that it needs to be laid out again.
void setUseDesignMetrics (bool b)
bool useDesignMetrics () const
void setLayoutEnabled (bool b)
bool isLayoutEnabled () const
void drawContents (QPainter *painter, const QRectF &rect=QRectF())
void setTextWidth (qreal width)
qreal textWidth () const
qreal idealWidth () const
qreal indentWidth () const
void setIndentWidth (qreal width)
qreal documentMargin () const
void setDocumentMargin (qreal margin)
void adjustSize ()
QSizeF size () const
int blockCount () const
int lineCount () const
int characterCount () const
void setDefaultStyleSheet (const QString &sheet)
QString defaultStyleSheet () const
void undo (QTextCursor *cursor)
void redo (QTextCursor *cursor)
void clearUndoRedoStacks (Stacks historyToClear=UndoAndRedoStacks)
int maximumBlockCount () const
void setMaximumBlockCount (int maximum)
QTextOption defaultTextOption () const
 the default text option will be set on all \l{QTextLayout}s in the document.
void setDefaultTextOption (const QTextOption &option)
QUrl baseUrl () const
void setBaseUrl (const QUrl &url)
Qt::CursorMoveStyle defaultCursorMoveStyle () const
void setDefaultCursorMoveStyle (Qt::CursorMoveStyle style)
Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
virtual bool event (QEvent *event)
 This virtual function receives events to an object and should return true if the event e was recognized and processed.
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
QString objectName () const
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
QBindable< QStringbindableObjectName ()
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
bool isQmlObjectType () const
 Returns whether the object has been created by the QML engine or ownership has been explicitly set via QJSEngine::setObjectOwnership().
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
QThreadthread () const
 Returns the thread in which the object lives.
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
void killTimer (int id)
 Kills the timer with timer identifier, id.
void killTimer (Qt::TimerId id)
template<typename T>
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
template<typename T>
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
template<typename T>
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
template<typename T>
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
const QObjectListchildren () const
 Returns a list of child objects.
void setParent (QObject *parent)
 Makes the object a child of parent.
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
bool disconnect (const QObject *receiver, const char *member=nullptr) const
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
bool setProperty (const char *name, QVariant &&value)
QVariant property (const char *name) const
 Returns the value of the object's name property.
QList< QByteArraydynamicPropertyNames () const
QBindingStoragebindingStorage ()
const QBindingStoragebindingStorage () const
QObjectparent () const
 Returns a pointer to the parent object.
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.

Static Public Member Functions

static QTextDocument::ResourceProvider defaultResourceProvider ()
static void setDefaultResourceProvider (const ResourceProvider &provider)
Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
template<typename Func1, typename Func2>
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
template<typename Func1, typename Func2>
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
template<typename Func1, typename Func2>
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
template<typename Func1>
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)

Protected Member Functions

virtual QTextObjectcreateObject (const QTextFormat &f)
 Creates and returns a new document object (a QTextObject), based on the given format.
virtual Q_INVOKABLE QVariant loadResource (int type, const QUrl &name)
 Loads data of the specified type from the resource with the given name.
 QTextDocument (QTextDocumentPrivate &dd, QObject *parent)
Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
int senderSignalIndex () const
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
bool isSignalConnected (const QMetaMethod &signal) const
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
virtual void connectNotify (const QMetaMethod &signal)
virtual void disconnectNotify (const QMetaMethod &signal)
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)

Properties

bool undoRedoEnabled
 whether undo/redo are enabled for this document
bool modified
 whether the document has been modified by the user
QSizeF pageSize
 the page size that should be used for laying out the document
QFont defaultFont
 the default font used to display the document's text
bool useDesignMetrics
 whether the document uses design metrics of fonts to improve the accuracy of text layout
bool layoutEnabled
 whether QTextDocument should recalculate the layout after every change
QSizeF size
 the actual size of the document. This is equivalent to documentLayout()->documentSize();
qreal textWidth
int blockCount
 the number of text blocks in the document.
qreal indentWidth
QString defaultStyleSheet
int maximumBlockCount
 Specifies the limit for blocks in the document.
qreal documentMargin
QUrl baseUrl
 the base URL used to resolve relative resource URLs within the document.
Properties inherited from QObject
QString objectName
 the name of this object

Friends

class QTextObjectPrivate

Additional Inherited Members

Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr

Detailed Description

\reentrant \inmodule QtGui

The QTextDocument class holds formatted text.

QTextDocument is a container for structured rich text documents, providing support for styled text and various types of document elements, such as lists, tables, frames, and images. They can be created for use in a QTextEdit, or used independently.

Each document element is described by an associated format object. Each format object is treated as a unique object by QTextDocuments, and can be passed to objectForFormat() to obtain the document element that it is applied to.

A QTextDocument can be edited programmatically using a QTextCursor, and its contents can be examined by traversing the document structure. The entire document structure is stored as a hierarchy of document elements beneath the root frame, found with the rootFrame() function. Alternatively, if you just want to iterate over the textual contents of the document you can use begin(), end(), and findBlock() to retrieve text blocks that you can examine and iterate over.

The layout of a document is determined by the documentLayout(); you can create your own QAbstractTextDocumentLayout subclass and set it using setDocumentLayout() if you want to use your own layout logic. The document's title and other meta-information can be obtained by calling the metaInformation() function. For documents that are exposed to users through the QTextEdit class, the document title is also available via the QTextEdit::documentTitle() function.

The toPlainText() and toHtml() convenience functions allow you to retrieve the contents of the document as plain text and HTML. The document's text can be searched using the find() functions.

Undo/redo of operations performed on the document can be controlled using the setUndoRedoEnabled() function. The undo/redo system can be controlled by an editor widget through the undo() and redo() slots; the document also provides contentsChanged(), undoAvailable(), and redoAvailable() signals that inform connected editor widgets about the state of the undo/redo system. The following are the undo/redo operations of a QTextDocument:

\list

  • Insertion or removal of characters. A sequence of insertions or removals within the same text block are regarded as a single undo/redo operation.
  • Insertion or removal of text blocks. Sequences of insertion or removals in a single operation (e.g., by selecting and then deleting text) are regarded as a single undo/redo operation.
  • Text character format changes.
  • Text block format changes.
  • Text block group format changes. \endlist
See also
QTextCursor, QTextEdit, {Rich Text Processing}

Definition at line 55 of file qtextdocument.h.

Member Typedef Documentation

◆ ResourceProvider

using QTextDocument::ResourceProvider = std::function<QVariant(const QUrl&)>

Definition at line 207 of file qtextdocument.h.

Member Enumeration Documentation

◆ FindFlag

This enum describes the options available to QTextDocument's find function.

The options can be OR-ed together from the following list:

\value FindBackward Search backwards instead of forwards. \value FindCaseSensitively By default find works case insensitive. Specifying this option changes the behaviour to a case sensitive find operation. \value FindWholeWords Makes find match only complete words.

Enumerator
FindBackward 
FindCaseSensitively 
FindWholeWords 

Definition at line 139 of file qtextdocument.h.

◆ MetaInformation

This enum describes the different types of meta information that can be added to a document.

\value DocumentTitle The title of the document. \value DocumentUrl The url of the document. The loadResource() function uses this url as the base when loading relative resources. \value CssMedia This value is used to select the corresponding '@media' rule, if any, from a specified CSS stylesheet when setHtml() is called. This enum value has been introduced in Qt 6.3. \value FrontMatter This value is used to select header material, if any was extracted during parsing of the source file (currently only from Markdown format). This enum value has been introduced in Qt 6.8.

See also
metaInformation(), setMetaInformation(), setHtml()
Enumerator
DocumentTitle 
DocumentUrl 
CssMedia 
FrontMatter 

Definition at line 101 of file qtextdocument.h.

◆ ResourceType

This enum describes the types of resources that can be loaded by QTextDocument's loadResource() function or by QTextBrowser::setSource().

\value UnknownResource No resource is loaded, or the resource type is not known. \value HtmlResource The resource contains HTML. \value ImageResource The resource contains image data. Currently supported data types are QMetaType::QPixmap and QMetaType::QImage. If the corresponding variant is of type QMetaType::QByteArray then Qt attempts to load the image using QImage::loadFromData. QMetaType::QIcon is currently not supported. The icon needs to be converted to one of the supported types first, for example using QIcon::pixmap. \value StyleSheetResource The resource contains CSS. \value MarkdownResource The resource contains Markdown. \value UserResource The first available value for user defined resource types.

See also
loadResource(), QTextBrowser::sourceType()
Enumerator
UnknownResource 
HtmlResource 
ImageResource 
StyleSheetResource 
MarkdownResource 
UserResource 

Definition at line 193 of file qtextdocument.h.

◆ Stacks

\value UndoStack The undo stack.

\value RedoStack The redo stack. \value UndoAndRedoStacks Both the undo and redo stacks.

Enumerator
UndoStack 
RedoStack 
UndoAndRedoStacks 

Definition at line 253 of file qtextdocument.h.

Constructor & Destructor Documentation

◆ QTextDocument() [1/3]

QTextDocument::QTextDocument ( QObject * parent = nullptr)
explicit

Constructs an empty QTextDocument with the given parent.

Definition at line 278 of file qtextdocument.cpp.

◆ QTextDocument() [2/3]

QTextDocument::QTextDocument ( const QString & text,
QObject * parent = nullptr )
explicit

Constructs a QTextDocument containing the plain (unformatted) text specified, and with the given parent.

Definition at line 289 of file qtextdocument.cpp.

◆ ~QTextDocument()

QTextDocument::~QTextDocument ( )

Destroys the document.

Definition at line 310 of file qtextdocument.cpp.

◆ QTextDocument() [3/3]

QTextDocument::QTextDocument ( QTextDocumentPrivate & dd,
QObject * parent )
protected

Definition at line 300 of file qtextdocument.cpp.

Member Function Documentation

◆ addResource()

void QTextDocument::addResource ( int type,
const QUrl & name,
const QVariant & resource )

Adds the resource resource to the resource cache, using type and name as identifiers.

type should be a value from QTextDocument::ResourceType.

For example, you can add an image as a resource in order to reference it from within the document:

QUrl("mydata://image.png"), QVariant(image));

The image can be inserted into the document using the QTextCursor API:

QTextImageFormat imageFormat;
imageFormat.setName("mydata://image.png");
cursor.insertImage(imageFormat);

Alternatively, you can insert images using the HTML img tag:

editor->append("<img src=\"mydata://image.png\" />");

Definition at line 2187 of file qtextdocument.cpp.

◆ adjustSize()

void QTextDocument::adjustSize ( )
Since
4.2

Adjusts the document to a reasonable size.

See also
idealWidth(), textWidth, size

Definition at line 837 of file qtextdocument.cpp.

◆ allFormats()

QList< QTextFormat > QTextDocument::allFormats ( ) const

Returns a list of text formats for all the formats used in the document.

Since
5.14 Replaces the entire contents of the document with the given Markdown-formatted text in the markdown string, with the given features supported. By default, all supported GitHub-style Markdown features are included; pass MarkdownDialectCommonMark for a more basic parse.

The Markdown formatting is respected as much as possible; for example, "*bold* text" will produce text where the first word has a font weight that gives it an emphasized appearance.

Parsing of HTML included in the markdown string is handled in the same way as in \l setHtml; however, Markdown formatting inside HTML blocks is not supported.

Some features of the parser can be enabled or disabled via the features argument. The default is MarkdownDialectGitHub.

The undo/redo history is reset when this function is called.

Definition at line 3762 of file qtextdocument.cpp.

◆ appendUndoItem

void QTextDocument::appendUndoItem ( QAbstractUndoItem * item)
slot

Appends a custom undo item to the undo stack.

Definition at line 464 of file qtextdocument.cpp.

◆ availableRedoSteps()

int QTextDocument::availableRedoSteps ( ) const
Since
4.6

Returns the number of available redo steps.

See also
isRedoAvailable()

Definition at line 1098 of file qtextdocument.cpp.

◆ availableUndoSteps()

int QTextDocument::availableUndoSteps ( ) const
Since
4.6

Returns the number of available undo steps.

See also
isUndoAvailable()

Definition at line 1086 of file qtextdocument.cpp.

◆ baselineOffset()

qreal QTextDocument::baselineOffset ( ) const
Since
6.0

Returns the baseline offset in % used in the document layout.

See also
setBaselineOffset(), setSubScriptBaseline(), subScriptBaseline(), setSuperScriptBaseline(), superScriptBaseline()

Definition at line 1879 of file qtextdocument.cpp.

◆ baseUrl()

QUrl QTextDocument::baseUrl ( ) const

Definition at line 566 of file qtextdocument.cpp.

◆ baseUrlChanged

void QTextDocument::baseUrlChanged ( const QUrl & url)
signal

◆ begin()

QTextBlock QTextDocument::begin ( ) const

Returns the document's first text block.

See also
firstBlock()

Definition at line 1696 of file qtextdocument.cpp.

◆ blockCount()

int QTextDocument::blockCount ( ) const

Definition at line 892 of file qtextdocument.cpp.

◆ blockCountChanged

void QTextDocument::blockCountChanged ( int newBlockCount)
signal
Since
4.3

This signal is emitted when the total number of text blocks in the document changes. The value passed in newBlockCount is the new total.

◆ characterAt()

QChar QTextDocument::characterAt ( int pos) const
Since
4.5

Returns the character at position pos, or a null character if the position is out of range.

See also
characterCount()

Definition at line 937 of file qtextdocument.cpp.

◆ characterCount()

int QTextDocument::characterCount ( ) const
Since
4.5

Returns the number of characters of this document.

Note
As a QTextDocument always contains at least one QChar::ParagraphSeparator, this method will return at least 1.
See also
blockCount(), characterAt()

Definition at line 923 of file qtextdocument.cpp.

◆ clear()

void QTextDocument::clear ( )
virtual

Clears the document.

Definition at line 369 of file qtextdocument.cpp.

◆ clearUndoRedoStacks()

void QTextDocument::clearUndoRedoStacks ( Stacks stacksToClear = UndoAndRedoStacks)
Since
4.7 Clears the stacks specified by stacksToClear.

This method clears any commands on the undo stack, the redo stack, or both (the default). If commands are cleared, the appropriate signals are emitted, QTextDocument::undoAvailable() or QTextDocument::redoAvailable().

See also
QTextDocument::undoAvailable(), QTextDocument::redoAvailable()

Definition at line 433 of file qtextdocument.cpp.

◆ clone()

QTextDocument * QTextDocument::clone ( QObject * parent = nullptr) const

Creates a new QTextDocument that is a copy of this text document.

parent is the parent of the returned text document.

Definition at line 319 of file qtextdocument.cpp.

◆ contentsChange

void QTextDocument::contentsChange ( int position,
int charsRemoved,
int charsAdded )
signal

This signal is emitted whenever the document's content changes; for example, when text is inserted or deleted, or when formatting is applied.

Information is provided about the position of the character in the document where the change occurred, the number of characters removed (charsRemoved), and the number of characters added (charsAdded).

The signal is emitted before the document's layout manager is notified about the change. This hook allows you to implement syntax highlighting for the document.

See also
QAbstractTextDocumentLayout::documentChanged(), contentsChanged()

◆ contentsChanged

void QTextDocument::contentsChanged ( )
signal

This signal is emitted whenever the document's content changes; for example, when text is inserted or deleted, or when formatting is applied.

See also
contentsChange()

◆ createObject()

QTextObject * QTextDocument::createObject ( const QTextFormat & format)
protectedvirtual

Creates and returns a new document object (a QTextObject), based on the given format.

QTextObjects will always get created through this method, so you must reimplement it if you use custom text objects inside your document.

Definition at line 1606 of file qtextdocument.cpp.

◆ cursorPositionChanged

void QTextDocument::cursorPositionChanged ( const QTextCursor & cursor)
signal

This signal is emitted whenever the position of a cursor changed due to an editing operation.

The cursor that changed is passed in cursor. If the document is used with the QTextEdit class and you need a signal when the cursor is moved with the arrow keys you can use the \l{QTextEdit::}{cursorPositionChanged()} signal in QTextEdit.

◆ defaultCursorMoveStyle()

Qt::CursorMoveStyle QTextDocument::defaultCursorMoveStyle ( ) const
Since
4.8

The default cursor movement style is used by all QTextCursor objects created from the document. The default is Qt::LogicalMoveStyle.

Definition at line 589 of file qtextdocument.cpp.

◆ defaultFont()

QFont QTextDocument::defaultFont ( ) const

Returns the default font to be used in the document layout.

Definition at line 1790 of file qtextdocument.cpp.

◆ defaultResourceProvider()

QTextDocument::ResourceProvider QTextDocument::defaultResourceProvider ( )
static
Since
6.1

Returns the default resource provider.

See also
resourceProvider(), loadResource()

Definition at line 2249 of file qtextdocument.cpp.

◆ defaultStyleSheet()

QString QTextDocument::defaultStyleSheet ( ) const

Definition at line 975 of file qtextdocument.cpp.

◆ defaultTextOption()

QTextOption QTextDocument::defaultTextOption ( ) const

the default text option will be set on all \l{QTextLayout}s in the document.

When \l{QTextBlock}s are created, the defaultTextOption is set on their QTextLayout. This allows setting global properties for the document such as the default word wrap mode.

Since
4.3

The default text option is used on all QTextLayout objects in the document. This allows setting global properties for the document such as the default word wrap mode.

Definition at line 531 of file qtextdocument.cpp.

◆ documentLayout()

QAbstractTextDocumentLayout * QTextDocument::documentLayout ( ) const

Returns the document layout for this document.

Definition at line 1136 of file qtextdocument.cpp.

◆ documentLayoutChanged

void QTextDocument::documentLayoutChanged ( )
signal
Since
4.4

This signal is emitted when a new document layout is set.

See also
setDocumentLayout()

◆ documentMargin()

qreal QTextDocument::documentMargin ( ) const

Definition at line 768 of file qtextdocument.cpp.

◆ drawContents()

void QTextDocument::drawContents ( QPainter * p,
const QRectF & rect = QRectF() )
Since
4.2

Draws the content of the document with painter p, clipped to rect. If rect is a null rectangle (default) then the document is painted unclipped.

Definition at line 697 of file qtextdocument.cpp.

◆ end()

QTextBlock QTextDocument::end ( ) const

This function returns a block to test for the end of the document while iterating over it.

for (QTextBlock it = doc->begin(); it != doc->end(); it = it.next())
std::cout << it.text().toStdString() << "\n";

The block returned is invalid and represents the block after the last block in the document. You can use lastBlock() to retrieve the last valid block of the document.

See also
lastBlock()

Definition at line 1714 of file qtextdocument.cpp.

◆ find() [1/2]

QTextCursor QTextDocument::find ( const QString & subString,
const QTextCursor & cursor,
FindFlags options = FindFlags() ) const

Finds the next occurrence of the string, subString, in the document.

The search starts at the position of the given cursor, and proceeds forwards through the document unless specified otherwise in the search options. The options control the type of search performed.

Returns a cursor with the match selected if subString was found; otherwise returns a null cursor.

If the given cursor has a selection, the search begins after the selection; otherwise it begins at the cursor's position.

By default the search is case insensitive, and can match text anywhere in the document.

Definition at line 1452 of file qtextdocument.cpp.

◆ find() [2/2]

QTextCursor QTextDocument::find ( const QString & subString,
int position = 0,
FindFlags options = FindFlags() ) const

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Finds the next occurrence of the string, subString, in the document.

The search starts at the given position, and proceeds forwards through the document unless specified otherwise in the search options. The options control the type of search performed.

Returns a cursor with the match selected if subString was found; otherwise returns a null cursor.

If the position is 0 (the default) the search begins from the beginning of the document; otherwise it begins at the specified position.

Definition at line 1396 of file qtextdocument.cpp.

◆ findBlock()

QTextBlock QTextDocument::findBlock ( int pos) const

Returns the text block that contains the {pos}-th character.

Definition at line 1661 of file qtextdocument.cpp.

◆ findBlockByLineNumber()

QTextBlock QTextDocument::findBlockByLineNumber ( int lineNumber) const
Since
4.5 Returns the text block that contains the specified lineNumber.
See also
QTextBlock::firstLineNumber()

Definition at line 1685 of file qtextdocument.cpp.

◆ findBlockByNumber()

QTextBlock QTextDocument::findBlockByNumber ( int blockNumber) const
Since
4.4 Returns the text block with the specified blockNumber.
See also
QTextBlock::blockNumber()

Definition at line 1673 of file qtextdocument.cpp.

◆ firstBlock()

QTextBlock QTextDocument::firstBlock ( ) const
Since
4.4 Returns the document's first text block.

Definition at line 1724 of file qtextdocument.cpp.

◆ frameAt()

QTextFrame * QTextDocument::frameAt ( int pos) const

Returns the frame that contains the text cursor position pos.

Definition at line 1624 of file qtextdocument.cpp.

◆ idealWidth()

qreal QTextDocument::idealWidth ( ) const
Since
4.2

Returns the ideal width of the text document. The ideal width is the actually used width of the document without optional alignments taken into account. It is always <= size().width().

See also
adjustSize(), textWidth

Definition at line 755 of file qtextdocument.cpp.

◆ indentWidth()

qreal QTextDocument::indentWidth ( ) const

Definition at line 800 of file qtextdocument.cpp.

◆ isEmpty()

bool QTextDocument::isEmpty ( ) const

Returns true if the document is empty; otherwise returns false.

Definition at line 358 of file qtextdocument.cpp.

◆ isLayoutEnabled()

bool QTextDocument::isLayoutEnabled ( ) const

Definition at line 685 of file qtextdocument.cpp.

◆ isModified()

bool QTextDocument::isModified ( ) const

Definition at line 1908 of file qtextdocument.cpp.

◆ isRedoAvailable()

bool QTextDocument::isRedoAvailable ( ) const

Returns true if redo is available; otherwise returns false.

See also
isUndoAvailable(), availableRedoSteps()

Definition at line 1074 of file qtextdocument.cpp.

◆ isUndoAvailable()

bool QTextDocument::isUndoAvailable ( ) const

Returns true if undo is available; otherwise returns false.

See also
isRedoAvailable(), availableUndoSteps()

Definition at line 1063 of file qtextdocument.cpp.

◆ isUndoRedoEnabled()

bool QTextDocument::isUndoRedoEnabled ( ) const

Definition at line 483 of file qtextdocument.cpp.

◆ lastBlock()

QTextBlock QTextDocument::lastBlock ( ) const
Since
4.4 Returns the document's last (valid) text block.

Definition at line 1734 of file qtextdocument.cpp.

◆ lineCount()

int QTextDocument::lineCount ( ) const
Since
4.5

Returns the number of lines of this document (if the layout supports this). Otherwise, this is identical to the number of blocks.

See also
blockCount(), characterCount()

Definition at line 907 of file qtextdocument.cpp.

◆ loadResource()

QVariant QTextDocument::loadResource ( int type,
const QUrl & name )
protectedvirtual

Loads data of the specified type from the resource with the given name.

This function is called by the rich text engine to request data that isn't directly stored by QTextDocument, but still associated with it. For example, images are referenced indirectly by the name attribute of a QTextImageFormat object.

When called by Qt, type is one of the values of QTextDocument::ResourceType.

If the QTextDocument is a child object of a QObject that has an invokable loadResource method such as QTextEdit, QTextBrowser or a QTextDocument itself then the default implementation tries to retrieve the data from the parent.

See also
QTextDocument::ResourceProvider

Definition at line 2273 of file qtextdocument.cpp.

◆ markContentsDirty()

void QTextDocument::markContentsDirty ( int from,
int length )

Marks the contents specified by the given position and length as "dirty", informing the document that it needs to be laid out again.

Definition at line 613 of file qtextdocument.cpp.

◆ maximumBlockCount()

int QTextDocument::maximumBlockCount ( ) const

Definition at line 510 of file qtextdocument.cpp.

◆ metaInformation()

QString QTextDocument::metaInformation ( MetaInformation info) const

Returns meta information about the document of the type specified by info.

See also
setMetaInformation()

Definition at line 1153 of file qtextdocument.cpp.

◆ modificationChanged

void QTextDocument::modificationChanged ( bool changed)
signal

This signal is emitted whenever the content of the document changes in a way that affects the modification state.

If changed is true, the document has been modified; otherwise it is false.

For example, calling setModified(false) on a document and then inserting text causes the signal to get emitted. If you undo that operation, causing the document to return to its original unmodified state, the signal will get emitted again.

◆ object()

QTextObject * QTextDocument::object ( int objectIndex) const

Returns the text object associated with the given objectIndex.

Definition at line 1642 of file qtextdocument.cpp.

◆ objectForFormat()

QTextObject * QTextDocument::objectForFormat ( const QTextFormat & f) const

Returns the text object associated with the format f.

Definition at line 1651 of file qtextdocument.cpp.

◆ pageCount()

int QTextDocument::pageCount ( ) const

returns the number of pages in this document.

Definition at line 1771 of file qtextdocument.cpp.

◆ pageSize()

QSizeF QTextDocument::pageSize ( ) const

Definition at line 1762 of file qtextdocument.cpp.

◆ print()

void QTextDocument::print ( QPagedPaintDevice * printer) const

Prints the document to the given printer.

The QPagedPaintDevice must be set up before being used with this function.

This is only a convenience method to print the whole document to the printer.

If the document is already paginated through a specified height in the pageSize() property it is printed as-is.

If the document is not paginated, like for example a document used in a QTextEdit, then a temporary copy of the document is created and the copy is broken into multiple pages according to the size of the paint device's paperRect(). By default a 2 cm margin is set around the document contents. In addition the current page number is printed at the bottom of each page.

See also
QTextEdit::print()

Definition at line 1971 of file qtextdocument.cpp.

◆ redo [1/2]

void QTextDocument::redo ( )
slot

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Redoes the last editing operation on the document if \l{QTextDocument::isRedoAvailable()}{redo is available}.

Definition at line 453 of file qtextdocument.cpp.

◆ redo() [2/2]

void QTextDocument::redo ( QTextCursor * cursor)
Since
4.2 Redoes the last editing operation on the document if \l{QTextDocument::isRedoAvailable()}{redo is available}.

The provided cursor is positioned at the end of the location where the edition operation was redone.

Definition at line 405 of file qtextdocument.cpp.

◆ redoAvailable

void QTextDocument::redoAvailable ( bool available)
signal

This signal is emitted whenever redo operations become available (available is true) or unavailable (available is false).

◆ resource()

QVariant QTextDocument::resource ( int type,
const QUrl & name ) const

Returns data of the specified type from the resource with the given name.

This function is called by the rich text engine to request data that isn't directly stored by QTextDocument, but still associated with it. For example, images are referenced indirectly by the name attribute of a QTextImageFormat object.

Resources are cached internally in the document. If a resource can not be found in the cache, loadResource is called to try to load the resource. loadResource should then use addResource to add the resource to the cache.

If loadResource does not load the resource, then the resourceProvider and lastly the defaultResourceProvider will be called, if set. Note that the result from the provider will not be added automatically to the cache.

See also
QTextDocument::ResourceType, resourceProvider()

Definition at line 2149 of file qtextdocument.cpp.

◆ resourceProvider()

QTextDocument::ResourceProvider QTextDocument::resourceProvider ( ) const
Since
6.1

Returns the resource provider for this text document.

See also
setResourceProvider(), defaultResourceProvider(), loadResource()

Definition at line 2201 of file qtextdocument.cpp.

◆ revision()

int QTextDocument::revision ( ) const
Since
4.4

Returns the document's revision (if undo is enabled).

The revision is guaranteed to increase when a document that is not modified is edited.

See also
QTextBlock::revision(), isModified()

Definition at line 1113 of file qtextdocument.cpp.

◆ rootFrame()

QTextFrame * QTextDocument::rootFrame ( ) const

Returns the document's root frame.

Definition at line 1633 of file qtextdocument.cpp.

◆ setBaselineOffset()

void QTextDocument::setBaselineOffset ( qreal baseline)
Since
6.0

Sets the base line as a% of font height to use in the document layout to baseline. The default value is 0. A positive value moves up the text, by the corresponding %; a negative value moves it down.

See also
baselineOffset(), setSubScriptBaseline(), subScriptBaseline(), setSuperScriptBaseline(), superScriptBaseline()

Definition at line 1864 of file qtextdocument.cpp.

◆ setBaseUrl()

void QTextDocument::setBaseUrl ( const QUrl & url)

Definition at line 572 of file qtextdocument.cpp.

◆ setDefaultCursorMoveStyle()

void QTextDocument::setDefaultCursorMoveStyle ( Qt::CursorMoveStyle style)
Since
4.8

Sets the default cursor movement style to the given style.

Definition at line 600 of file qtextdocument.cpp.

◆ setDefaultFont()

void QTextDocument::setDefaultFont ( const QFont & font)

Sets the default font to use in the document layout.

Definition at line 1779 of file qtextdocument.cpp.

◆ setDefaultResourceProvider()

void QTextDocument::setDefaultResourceProvider ( const ResourceProvider & provider)
static
Since
6.1

Sets the default resource provider to provider.

The default provider will be used by all QTextDocuments that don't have an explicit provider set.

See also
setResourceProvider(), loadResource()

Definition at line 2237 of file qtextdocument.cpp.

◆ setDefaultStyleSheet()

void QTextDocument::setDefaultStyleSheet ( const QString & sheet)

Definition at line 965 of file qtextdocument.cpp.

◆ setDefaultTextOption()

void QTextDocument::setDefaultTextOption ( const QTextOption & option)
Since
4.3

Sets the default text option to option.

Definition at line 542 of file qtextdocument.cpp.

◆ setDocumentLayout()

void QTextDocument::setDocumentLayout ( QAbstractTextDocumentLayout * layout)

Sets the document to use the given layout.

The previous layout is deleted.

See also
documentLayoutChanged()

Definition at line 1127 of file qtextdocument.cpp.

◆ setDocumentMargin()

void QTextDocument::setDocumentMargin ( qreal margin)

Definition at line 774 of file qtextdocument.cpp.

◆ setHtml()

void QTextDocument::setHtml ( const QString & html)

Replaces the entire contents of the document with the given HTML-formatted text in the html string.

The undo/redo history is reset when this function is called.

The HTML formatting is respected as much as possible; for example, "<b>bold</b> text" will produce text where the first word has a font weight that gives it a bold appearance: "\b{bold} text".

To select a css media rule other than the default "screen" rule, use setMetaInformation() with 'CssMedia' as "info" parameter.

Note
It is the responsibility of the caller to make sure that the text is correctly decoded when a QString containing HTML is created and passed to setHtml().
See also
setPlainText(), {Supported HTML Subset}, setMetaInformation()

Definition at line 1298 of file qtextdocument.cpp.

◆ setIndentWidth()

void QTextDocument::setIndentWidth ( qreal width)
Since
4.4

Sets the width used for text list and text block indenting.

The indent properties of QTextListFormat and QTextBlockFormat specify multiples of this value. The default indent width is 40 .

See also
indentWidth()

Definition at line 817 of file qtextdocument.cpp.

◆ setLayoutEnabled()

void QTextDocument::setLayoutEnabled ( bool b)

Definition at line 675 of file qtextdocument.cpp.

◆ setMaximumBlockCount()

void QTextDocument::setMaximumBlockCount ( int maximum)

Definition at line 516 of file qtextdocument.cpp.

◆ setMetaInformation()

void QTextDocument::setMetaInformation ( MetaInformation info,
const QString & string )

Sets the document's meta information of the type specified by info to the given string.

See also
metaInformation()

Definition at line 1175 of file qtextdocument.cpp.

◆ setModified

void QTextDocument::setModified ( bool m = true)
slot

Definition at line 1914 of file qtextdocument.cpp.

◆ setPageSize()

void QTextDocument::setPageSize ( const QSizeF & size)

Definition at line 1754 of file qtextdocument.cpp.

◆ setPlainText()

void QTextDocument::setPlainText ( const QString & text)

Replaces the entire contents of the document with the given plain text.

The undo/redo history is reset when this function is called.

See also
setHtml()

Definition at line 1265 of file qtextdocument.cpp.

◆ setResourceProvider()

void QTextDocument::setResourceProvider ( const ResourceProvider & provider)
Since
6.1 \typealias QTextDocument::ResourceProvider

Type alias for std::function<QVariant(const QUrl&)>.

Since
6.1

Sets the provider of resources for the text document to provider.

See also
resourceProvider(), loadResource()

Definition at line 2221 of file qtextdocument.cpp.

◆ setSubScriptBaseline()

void QTextDocument::setSubScriptBaseline ( qreal baseline)
Since
6.0

Sets the default subscript's base line as a % of font height to use in the document layout to baseline. The default value is 16.67% (1/6 of height).

See also
subScriptBaseline(), setSuperScriptBaseline(), superScriptBaseline(), setBaselineOffset(), baselineOffset()

Definition at line 1834 of file qtextdocument.cpp.

◆ setSuperScriptBaseline()

void QTextDocument::setSuperScriptBaseline ( qreal baseline)
Since
6.0

Sets the default superscript's base line as a % of font height to use in the document layout to baseline. The default value is 50% (1/2 of height).

See also
superScriptBaseline(), setSubScriptBaseline(), subScriptBaseline(), setBaselineOffset(), baselineOffset()

Definition at line 1805 of file qtextdocument.cpp.

◆ setTextWidth()

void QTextDocument::setTextWidth ( qreal width)

Definition at line 730 of file qtextdocument.cpp.

◆ setUndoRedoEnabled()

void QTextDocument::setUndoRedoEnabled ( bool enable)

Definition at line 477 of file qtextdocument.cpp.

◆ setUseDesignMetrics()

void QTextDocument::setUseDesignMetrics ( bool b)

Definition at line 641 of file qtextdocument.cpp.

◆ size()

QSizeF QTextDocument::size ( ) const

Definition at line 876 of file qtextdocument.cpp.

◆ subScriptBaseline()

qreal QTextDocument::subScriptBaseline ( ) const
Since
6.0

Returns the superscript's base line as a % of font height used in the document layout.

See also
setSubScriptBaseline(), setSuperScriptBaseline(), superScriptBaseline(), setBaselineOffset(), baselineOffset()

Definition at line 1848 of file qtextdocument.cpp.

◆ superScriptBaseline()

qreal QTextDocument::superScriptBaseline ( ) const
Since
6.0

Returns the superscript's base line as a % of font height used in the document layout.

See also
setSuperScriptBaseline(), setSubScriptBaseline(), subScriptBaseline(), setBaselineOffset(), baselineOffset()

Definition at line 1819 of file qtextdocument.cpp.

◆ textWidth()

qreal QTextDocument::textWidth ( ) const

Definition at line 741 of file qtextdocument.cpp.

◆ toHtml()

QString QTextDocument::toHtml ( ) const

Returns a string containing an HTML representation of the document.

The content of the document specifies its encoding to be UTF-8. If you later on convert the returned html string into a byte array for transmission over a network or when saving to disk you should use QString::toUtf8() to convert the string to a QByteArray.

See also
{Supported HTML Subset}

Definition at line 3667 of file qtextdocument.cpp.

◆ toPlainText()

QString QTextDocument::toPlainText ( ) const

Returns the plain text contained in the document.

If you want formatting information use a QTextCursor instead.

This function returns the same as toRawText(), but will replace some unicode characters with ASCII alternatives. In particular, no-break space (U+00A0) is replaced by a regular space (U+0020), and both paragraph (U+2029) and line (U+2028) separators are replaced by line feed (U+000A). If you need the precise contents of the document, use toRawText() instead.

Note
Embedded objects, such as images, are represented by a Unicode value U+FFFC (OBJECT REPLACEMENT CHARACTER).
See also
toHtml()

Definition at line 1225 of file qtextdocument.cpp.

◆ toRawText()

QString QTextDocument::toRawText ( ) const

Returns the raw text contained in the document without any formatting information.

If you want formatting information use a QTextCursor instead.

Since
5.9
See also
toPlainText()

Definition at line 1202 of file qtextdocument.cpp.

◆ undo [1/2]

void QTextDocument::undo ( )
slot

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 443 of file qtextdocument.cpp.

◆ undo() [2/2]

void QTextDocument::undo ( QTextCursor * cursor)
Since
4.2

Undoes the last editing operation on the document if undo is available. The provided cursor is positioned at the end of the location where the edition operation was undone.

See the \l {Overview of Qt's Undo Framework}{Qt Undo Framework} documentation for details.

See also
undoAvailable(), isUndoRedoEnabled()

Definition at line 388 of file qtextdocument.cpp.

◆ undoAvailable

void QTextDocument::undoAvailable ( bool available)
signal

This signal is emitted whenever undo operations become available (available is true) or unavailable (available is false).

See the \l {Overview of Qt's Undo Framework}{Qt Undo Framework} documentation for details.

See also
undo(), isUndoRedoEnabled()

◆ undoCommandAdded

void QTextDocument::undoCommandAdded ( )
signal
Since
4.4

This signal is emitted every time a new level of undo is added to the QTextDocument.

◆ useDesignMetrics()

bool QTextDocument::useDesignMetrics ( ) const

Definition at line 651 of file qtextdocument.cpp.

◆ QTextObjectPrivate

friend class QTextObjectPrivate
friend

Definition at line 298 of file qtextdocument.h.

Property Documentation

◆ baseUrl

QUrl QTextDocument::baseUrl
readwrite

the base URL used to resolve relative resource URLs within the document.

Since
5.3

Resource URLs are resolved to be within the same directory as the target of the base URL meaning any portion of the path after the last '/' will be ignored.

\table \header

Definition at line 75 of file qtextdocument.h.

◆ blockCount

int QTextDocument::blockCount
read

the number of text blocks in the document.

Since
4.2

The value of this property is undefined in documents with tables or frames.

By default, if defined, this property contains a value of 1.

See also
lineCount(), characterCount()

Definition at line 67 of file qtextdocument.h.

◆ defaultFont

QFont QTextDocument::defaultFont
readwrite

the default font used to display the document's text

Definition at line 62 of file qtextdocument.h.

◆ defaultStyleSheet

QString QTextDocument::defaultStyleSheet
readwrite
Since
4.2

The default style sheet is applied to all newly HTML formatted text that is inserted into the document, for example using setHtml() or QTextCursor::insertHtml().

The style sheet needs to be compliant to CSS 2.1 syntax.

{Note:} Changing the default style sheet does not have any effect to the existing content of the document.

See also
{Supported HTML Subset}

Definition at line 70 of file qtextdocument.h.

◆ documentMargin

qreal QTextDocument::documentMargin
readwrite
Since
4.5

The margin around the document. The default is 4.

Definition at line 73 of file qtextdocument.h.

◆ indentWidth

qreal QTextDocument::indentWidth
readwrite
Since
4.4

Returns the width used for text list and text block indenting.

The indent properties of QTextListFormat and QTextBlockFormat specify multiples of this value. The default indent width is 40.

Definition at line 68 of file qtextdocument.h.

◆ layoutEnabled

bool QTextDocument::layoutEnabled
readwrite

whether QTextDocument should recalculate the layout after every change

Since
6.4

If this property is set to true, any change to the document triggers a layout, which makes everything work as expected but takes time.

Temporarily disabling the layout can save time when making multiple changes (not just text content, but also default font, default text option....) so that the document is only laid out once at the end. This can be useful when the text width or page size isn't yet known, for instance.

By default, this property is true.

See also
setTextWidth

Definition at line 64 of file qtextdocument.h.

◆ maximumBlockCount

int QTextDocument::maximumBlockCount
readwrite

Specifies the limit for blocks in the document.

Since
4.2

Specifies the maximum number of blocks the document may have. If there are more blocks in the document that specified with this property blocks are removed from the beginning of the document.

A negative or zero value specifies that the document may contain an unlimited amount of blocks.

The default value is 0.

Note that setting this property will apply the limit immediately to the document contents.

Setting this property also disables the undo redo history.

This property is undefined in documents with tables or frames.

Definition at line 72 of file qtextdocument.h.

◆ modified

bool QTextDocument::modified
readwrite

whether the document has been modified by the user

By default, this property is false.

See also
modificationChanged()

Definition at line 60 of file qtextdocument.h.

◆ pageSize

QSizeF QTextDocument::pageSize
readwrite

the page size that should be used for laying out the document

The units are determined by the underlying paint device. The size is measured in logical pixels when painting to the screen, and in points (1/72 inch) when painting to a printer.

By default, for a newly-created, empty document, this property contains an undefined size.

See also
modificationChanged()

Definition at line 61 of file qtextdocument.h.

◆ size

QSizeF QTextDocument::size
read

the actual size of the document. This is equivalent to documentLayout()->documentSize();

Since
4.2

The size of the document can be changed either by setting a text width or setting an entire page size.

Note that the width is always >= pageSize().width().

By default, for a newly-created, empty document, this property contains a configuration-dependent size.

See also
setTextWidth(), setPageSize(), idealWidth()

Definition at line 65 of file qtextdocument.h.

◆ textWidth

qreal QTextDocument::textWidth
readwrite
Since
4.2

The text width specifies the preferred width for text in the document. If the text (or content in general) is wider than the specified with it is broken into multiple lines and grows vertically. If the text cannot be broken into multiple lines to fit into the specified text width it will be larger and the size() and the idealWidth() property will reflect that.

If the text width is set to -1 then the text will not be broken into multiple lines unless it is enforced through an explicit line break or a new paragraph.

The default value is -1.

Setting the text width will also set the page height to -1, causing the document to grow or shrink vertically in a continuous way. If you want the document layout to break the text into multiple pages then you have to set the pageSize property instead.

See also
size(), idealWidth(), pageSize()

Definition at line 66 of file qtextdocument.h.

◆ undoRedoEnabled

bool QTextDocument::undoRedoEnabled
readwrite

whether undo/redo are enabled for this document

This defaults to true. If disabled, the undo stack is cleared and no items will be added to it.

Definition at line 59 of file qtextdocument.h.

◆ useDesignMetrics

bool QTextDocument::useDesignMetrics
readwrite

whether the document uses design metrics of fonts to improve the accuracy of text layout

Since
4.1

If this property is set to true, the layout will use design metrics. Otherwise, the metrics of the paint device as set on QAbstractTextDocumentLayout::setPaintDevice() will be used.

Using design metrics makes a layout have a width that is no longer dependent on hinting and pixel-rounding. This means that WYSIWYG text layout becomes possible because the width scales much more linearly based on paintdevice metrics than it would otherwise.

By default, this property is false.

Definition at line 63 of file qtextdocument.h.


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