<class name="QTextLine" doc="/**
&lt;p&gt;The &lt;a href=&quot;QTextLine.html#QTextLine()&quot;&gt;&lt;tt&gt;QTextLine&lt;/tt&gt;&lt;/a&gt; class represents a line of text inside a &lt;a href=&quot;QTextLayout.html&quot;&gt;&lt;tt&gt;QTextLayout&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A text line is usually created by QTextLayout::createLine().&lt;/p&gt;
&lt;p&gt;After being created, the line can be filled using the &lt;a href=&quot;QTextLine.html#setLineWidth(double)&quot;&gt;&lt;tt&gt;setLineWidth&lt;/tt&gt;&lt;/a&gt; or &lt;a href=&quot;QTextLine.html#setNumColumns(int, double)&quot;&gt;&lt;tt&gt;setNumColumns&lt;/tt&gt;&lt;/a&gt; functions. A line has a number of attributes including the rectangle it occupies, &lt;a href=&quot;QTextLine.html#rect()&quot;&gt;&lt;tt&gt;rect&lt;/tt&gt;&lt;/a&gt;, its coordinates, &lt;a href=&quot;QTextLine.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QTextLine.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt;, its &lt;a href=&quot;QTextLine.html#textLength()&quot;&gt;&lt;tt&gt;textLength&lt;/tt&gt;&lt;/a&gt;, &lt;a href=&quot;QTextLine.html#width()&quot;&gt;&lt;tt&gt;width&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&quot;QTextLine.html#naturalTextWidth()&quot;&gt;&lt;tt&gt;naturalTextWidth&lt;/tt&gt;&lt;/a&gt;, and its &lt;a href=&quot;QTextLine.html#ascent()&quot;&gt;&lt;tt&gt;ascent&lt;/tt&gt;&lt;/a&gt; and decent() relative to the text. The position of the cursor in terms of the line is available from &lt;a href=&quot;QTextLine.html#cursorToX(int, com.trolltech.qt.gui.QTextLine.Edge)&quot;&gt;&lt;tt&gt;cursorToX&lt;/tt&gt;&lt;/a&gt; and its inverse from &lt;a href=&quot;QTextLine.html#xToCursor(double, com.trolltech.qt.gui.QTextLine.CursorPosition)&quot;&gt;&lt;tt&gt;xToCursor&lt;/tt&gt;&lt;/a&gt;. A line can be moved with &lt;a href=&quot;QTextLine.html#setPosition(com.trolltech.qt.core.QPointF)&quot;&gt;&lt;tt&gt;setPosition&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
 */">
    <method name="public QTextLine()" doc="/**
&lt;p&gt;Creates an invalid line.&lt;/p&gt;
 */"/>
    <method name="public final double ascent()" doc="/**
&lt;p&gt;Returns the line's ascent.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#descent()&quot;&gt;&lt;tt&gt;descent&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#height()&quot;&gt;&lt;tt&gt;height&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final double cursorToX(int cursorPos, com.trolltech.qt.gui.QTextLine.Edge edge)"/>
    <method name="public final double cursorToX(int cursorPos)" doc="/**
&lt;p&gt;Equivalent to &lt;a href=&quot;QTextLine.html#cursorToX(int, com.trolltech.qt.gui.QTextLine.Edge)&quot;&gt;&lt;tt&gt;cursorToX&lt;/tt&gt;&lt;/a&gt;(&lt;tt&gt;cursorPos&lt;/tt&gt;, Leading). */"/>
    <method name="public final double descent()" doc="/**
&lt;p&gt;Returns the line's descent.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#ascent()&quot;&gt;&lt;tt&gt;ascent&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#height()&quot;&gt;&lt;tt&gt;height&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final double height()" doc="/**
&lt;p&gt;Returns the line's height. This is equal to &lt;a href=&quot;QTextLine.html#ascent()&quot;&gt;&lt;tt&gt;ascent&lt;/tt&gt;&lt;/a&gt; + &lt;a href=&quot;QTextLine.html#descent()&quot;&gt;&lt;tt&gt;descent&lt;/tt&gt;&lt;/a&gt; + 1.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#ascent()&quot;&gt;&lt;tt&gt;ascent&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#descent()&quot;&gt;&lt;tt&gt;descent&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final boolean isValid()" doc="/**
&lt;p&gt;Returns true if this text line is valid; otherwise returns false.&lt;/p&gt;
 */"/>
    <method name="public final int lineNumber()" doc="/**
&lt;p&gt;Returns the position of the line in the text engine.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QRectF naturalTextRect()" doc="/**
&lt;p&gt;Returns the rectangle covered by the line.&lt;/p&gt;
 */"/>
    <method name="public final double naturalTextWidth()" doc="/**
&lt;p&gt;Returns the width of the line that is occupied by text. This is always &amp;lt;= to &lt;a href=&quot;QTextLine.html#width()&quot;&gt;&lt;tt&gt;width&lt;/tt&gt;&lt;/a&gt;, and is the minimum width that could be used by layout() without changing the line break position.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.core.QPointF position()" doc="/**
&lt;p&gt;Returns the line's position relative to the text layout's position.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#setPosition(com.trolltech.qt.core.QPointF)&quot;&gt;&lt;tt&gt;setPosition&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final com.trolltech.qt.core.QRectF rect()" doc="/**
&lt;p&gt;Returns the line's bounding rectangle.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#textLength()&quot;&gt;&lt;tt&gt;textLength&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#width()&quot;&gt;&lt;tt&gt;width&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void setLineWidth(double width)" doc="/**
&lt;p&gt;Lays out the line with the given &lt;tt&gt;width&lt;/tt&gt;. The line is filled from its starting position with as many characters as will fit into the line. In case the text cannot be split at the end of the line, it will be filled with additional characters to the next whitespace or end of the text.&lt;/p&gt;
 */"/>
    <method name="public final void setNumColumns(int columns)" doc="/**
&lt;p&gt;Lays out the line. The line is filled from its starting position with as many characters as are specified by &lt;tt&gt;columns&lt;/tt&gt;. In case the text cannot be split until &lt;tt&gt;columns&lt;/tt&gt; characters, the line will be filled with as many characters to the next whitespace or end of the text.&lt;/p&gt;
 */"/>
    <method name="public final void setNumColumns(int columns, double alignmentWidth)" doc="/**
&lt;p&gt;Lays out the line. The line is filled from its starting position with as many characters as are specified by &lt;tt&gt;columns&lt;/tt&gt;. In case the text cannot be split until &lt;tt&gt;columns&lt;/tt&gt; characters, the line will be filled with as many characters to the next whitespace or end of the text. The provided &lt;tt&gt;alignmentWidth&lt;/tt&gt; is used as reference width for alignment.&lt;/p&gt;
 */"/>
    <method name="public final void setPosition(com.trolltech.qt.core.QPointF pos)" doc="/**
&lt;p&gt;Moves the line to position &lt;tt&gt;pos&lt;/tt&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#position()&quot;&gt;&lt;tt&gt;position&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int textLength()" doc="/**
&lt;p&gt;Returns the length of the text in the line.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#naturalTextWidth()&quot;&gt;&lt;tt&gt;naturalTextWidth&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int textStart()" doc="/**
&lt;p&gt;Returns the start of the line from the beginning of the string passed to the &lt;a href=&quot;QTextLayout.html&quot;&gt;&lt;tt&gt;QTextLayout&lt;/tt&gt;&lt;/a&gt;.&lt;/p&gt;
 */"/>
    <method name="public final double width()" doc="/**
&lt;p&gt;Returns the line's width as specified by the layout() function.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#naturalTextWidth()&quot;&gt;&lt;tt&gt;naturalTextWidth&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#textLength()&quot;&gt;&lt;tt&gt;textLength&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#rect()&quot;&gt;&lt;tt&gt;rect&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final double x()" doc="/**
&lt;p&gt;Returns the line's x position.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#rect()&quot;&gt;&lt;tt&gt;rect&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#y()&quot;&gt;&lt;tt&gt;y&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#textLength()&quot;&gt;&lt;tt&gt;textLength&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#width()&quot;&gt;&lt;tt&gt;width&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int xToCursor(double x, com.trolltech.qt.gui.QTextLine.CursorPosition arg__2)" doc="/**
&lt;p&gt;Converts the x-coordinate &lt;tt&gt;x&lt;/tt&gt;, to the nearest matching cursor position, depending on the cursor position type, &lt;tt&gt;arg__2&lt;/tt&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#cursorToX(int, com.trolltech.qt.gui.QTextLine.Edge)&quot;&gt;&lt;tt&gt;cursorToX&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final int xToCursor(double x)" doc="/**
&lt;p&gt;Equivalent to &lt;a href=&quot;QTextLine.html#xToCursor(double, com.trolltech.qt.gui.QTextLine.CursorPosition)&quot;&gt;&lt;tt&gt;xToCursor&lt;/tt&gt;&lt;/a&gt;(&lt;tt&gt;x&lt;/tt&gt;, CursorBetweenCharacters). */"/>
    <method name="public final double y()" doc="/**
&lt;p&gt;Returns the line's y position.&lt;/p&gt;

@see &lt;a href=&quot;QTextLine.html#x()&quot;&gt;&lt;tt&gt;x&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#rect()&quot;&gt;&lt;tt&gt;rect&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#textLength()&quot;&gt;&lt;tt&gt;textLength&lt;/tt&gt;&lt;/a&gt;
@see &lt;a href=&quot;QTextLine.html#width()&quot;&gt;&lt;tt&gt;width&lt;/tt&gt;&lt;/a&gt; */"/>
    <enum name="Edge">
        <enum-value name="Leading" doc="/**
Internal. */"/>
        <enum-value name="Trailing" doc="/**
Internal. */"/>
</enum>
    <enum name="CursorPosition">
        <enum-value name="CursorBetweenCharacters" doc="/**
Internal. */"/>
        <enum-value name="CursorOnCharacter" doc="/**
Internal. */"/>
</enum>
</class>
