From 4724dfff627f3cd3754f5d4a827c6b6790a89955 Mon Sep 17 00:00:00 2001 From: Eskil Abrahamsen Blomfeldt Date: Wed, 19 Feb 2020 11:26:57 +0100 Subject: Remove references to QTextDocumentPrivate from public API The private object of QTextDocument has been exposed through public APIs marked internal, which we should avoid as much as possible, since it clutters the headers. For accessing private data without adding friends, we have a nice pattern of adding a static get() function to the private class itself. Fixes: QTBUG-55059 Change-Id: I03e949a677e03487e95f24e3608a06aa0a3511ab Reviewed-by: Konstantin Ritt Reviewed-by: Simon Hausmann --- src/gui/text/qabstracttextdocumentlayout.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/gui/text/qabstracttextdocumentlayout.cpp') diff --git a/src/gui/text/qabstracttextdocumentlayout.cpp b/src/gui/text/qabstracttextdocumentlayout.cpp index bfce38797a..48b7f85413 100644 --- a/src/gui/text/qabstracttextdocumentlayout.cpp +++ b/src/gui/text/qabstracttextdocumentlayout.cpp @@ -567,7 +567,7 @@ void QAbstractTextDocumentLayoutPrivate::_q_handlerDestroyed(QObject *obj) */ int QAbstractTextDocumentLayout::formatIndex(int pos) { - QTextDocumentPrivate *pieceTable = qobject_cast(parent())->docHandle(); + QTextDocumentPrivate *pieceTable = QTextDocumentPrivate::get(qobject_cast(parent())); return pieceTable->find(pos).value()->format; } @@ -578,7 +578,7 @@ int QAbstractTextDocumentLayout::formatIndex(int pos) */ QTextCharFormat QAbstractTextDocumentLayout::format(int pos) { - QTextDocumentPrivate *pieceTable = qobject_cast(parent())->docHandle(); + QTextDocumentPrivate *pieceTable = QTextDocumentPrivate::get(qobject_cast(parent())); int idx = pieceTable->find(pos).value()->format; return pieceTable->formatCollection()->charFormat(idx); } @@ -644,7 +644,7 @@ QTextFormat QAbstractTextDocumentLayout::formatAt(const QPointF &pos) const block = block.next(); } - QTextDocumentPrivate *pieceTable = qobject_cast(parent())->docHandle(); + const QTextDocumentPrivate *pieceTable = QTextDocumentPrivate::get(qobject_cast(parent())); QTextDocumentPrivate::FragmentIterator it = pieceTable->find(cursorPos); return pieceTable->formatCollection()->format(it->format); } -- cgit v1.2.3