| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194 |
- // qtextlayout.sip generated by MetaSIP
- //
- // This file is part of the QtGui Python extension module.
- //
- // Copyright (c) 2026 Riverbank Computing Limited <info@riverbankcomputing.com>
- //
- // This file is part of PyQt6.
- //
- // This file may be used under the terms of the GNU General Public License
- // version 3.0 as published by the Free Software Foundation and appearing in
- // the file LICENSE included in the packaging of this file. Please review the
- // following information to ensure the GNU General Public License version 3.0
- // requirements will be met: http://www.gnu.org/copyleft/gpl.html.
- //
- // If you do not wish to use this file under the terms of the GPL version 3.0
- // then you may purchase a commercial license. For more information contact
- // info@riverbankcomputing.com.
- //
- // This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
- // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
- class QTextInlineObject
- {
- %TypeHeaderCode
- #include <qtextlayout.h>
- %End
- public:
- bool isValid() const;
- QRectF rect() const;
- qreal width() const;
- qreal ascent() const;
- qreal descent() const;
- qreal height() const;
- Qt::LayoutDirection textDirection() const;
- void setWidth(qreal w);
- void setAscent(qreal a);
- void setDescent(qreal d);
- int textPosition() const;
- int formatIndex() const;
- QTextFormat format() const;
- };
- class QTextLayout
- {
- %TypeHeaderCode
- #include <qtextlayout.h>
- %End
- public:
- QTextLayout();
- QTextLayout(const QString &text);
- QTextLayout(const QString &text, const QFont &font, const QPaintDevice *paintdevice = 0);
- QTextLayout(const QTextBlock &b);
- ~QTextLayout();
- void setFont(const QFont &f);
- QFont font() const;
- void setText(const QString &string);
- QString text() const;
- void setTextOption(const QTextOption &option);
- const QTextOption &textOption() const;
- void setPreeditArea(int position, const QString &text);
- int preeditAreaPosition() const;
- QString preeditAreaText() const;
- struct FormatRange
- {
- %TypeHeaderCode
- #include <qtextlayout.h>
- %End
- int start;
- int length;
- QTextCharFormat format;
- };
- void setCacheEnabled(bool enable);
- bool cacheEnabled() const;
- void beginLayout();
- void endLayout();
- QTextLine createLine();
- int lineCount() const;
- QTextLine lineAt(int i) const;
- QTextLine lineForTextPosition(int pos) const;
- enum CursorMode
- {
- SkipCharacters,
- SkipWords,
- };
- bool isValidCursorPosition(int pos) const;
- int nextCursorPosition(int oldPos, QTextLayout::CursorMode mode = QTextLayout::SkipCharacters) const;
- int previousCursorPosition(int oldPos, QTextLayout::CursorMode mode = QTextLayout::SkipCharacters) const;
- void draw(QPainter *p, const QPointF &pos, const QList<QTextLayout::FormatRange> &selections = QList<QTextLayout::FormatRange>(), const QRectF &clip = QRectF()) const;
- void drawCursor(QPainter *p, const QPointF &pos, int cursorPosition) const;
- void drawCursor(QPainter *p, const QPointF &pos, int cursorPosition, int width) const;
- QPointF position() const;
- void setPosition(const QPointF &p);
- QRectF boundingRect() const;
- qreal minimumWidth() const;
- qreal maximumWidth() const;
- void clearLayout();
- void setCursorMoveStyle(Qt::CursorMoveStyle style);
- Qt::CursorMoveStyle cursorMoveStyle() const;
- int leftCursorPosition(int oldPos) const;
- int rightCursorPosition(int oldPos) const;
- %If (PyQt_RawFont)
- QList<QGlyphRun> glyphRuns(int from = -1, int length = -1) const;
- %End
- %If (Qt_6_5_0 -)
- QList<QGlyphRun> glyphRuns(int from, int length, QTextLayout::GlyphRunRetrievalFlags flags) const;
- %End
- void setFormats(const QList<QTextLayout::FormatRange> &overrides);
- QList<QTextLayout::FormatRange> formats() const;
- void clearFormats();
- %If (Qt_6_5_0 -)
- enum GlyphRunRetrievalFlag : quint16
- {
- RetrieveGlyphIndexes,
- RetrieveGlyphPositions,
- RetrieveStringIndexes,
- RetrieveString,
- DefaultRetrievalFlags,
- RetrieveAll,
- };
- %End
- %If (Qt_6_5_0 -)
- typedef QFlags<QTextLayout::GlyphRunRetrievalFlag> GlyphRunRetrievalFlags;
- %End
- private:
- QTextLayout(const QTextLayout &);
- };
- class QTextLine
- {
- %TypeHeaderCode
- #include <qtextlayout.h>
- %End
- public:
- QTextLine();
- bool isValid() const;
- QRectF rect() const;
- qreal x() const;
- qreal y() const;
- qreal width() const;
- qreal ascent() const;
- qreal descent() const;
- qreal height() const;
- qreal naturalTextWidth() const;
- QRectF naturalTextRect() const;
- enum Edge
- {
- Leading,
- Trailing,
- };
- enum CursorPosition
- {
- CursorBetweenCharacters,
- CursorOnCharacter,
- };
- qreal cursorToX(int *cursorPos /In,Out/, QTextLine::Edge edge = QTextLine::Leading) const;
- int xToCursor(qreal x, QTextLine::CursorPosition edge = QTextLine::CursorBetweenCharacters) const;
- void setLineWidth(qreal width);
- void setNumColumns(int columns);
- void setNumColumns(int columns, qreal alignmentWidth);
- void setPosition(const QPointF &pos);
- int textStart() const;
- int textLength() const;
- int lineNumber() const;
- void draw(QPainter *painter, const QPointF &position) const;
- QPointF position() const;
- qreal leading() const;
- void setLeadingIncluded(bool included);
- bool leadingIncluded() const;
- qreal horizontalAdvance() const;
- %If (PyQt_RawFont)
- QList<QGlyphRun> glyphRuns(int from = -1, int length = -1) const;
- %End
- %If (Qt_6_5_0 -)
- QList<QGlyphRun> glyphRuns(int from, int length, QTextLayout::GlyphRunRetrievalFlags flags) const;
- %End
- };
- bool operator==(const QTextLayout::FormatRange &lhs, const QTextLayout::FormatRange &rhs);
- bool operator!=(const QTextLayout::FormatRange &lhs, const QTextLayout::FormatRange &rhs);
|