<class name="QAbstractTextDocumentLayout" doc="/**
&lt;p&gt;The &lt;a href=&quot;QAbstractTextDocumentLayout.html#QAbstractTextDocumentLayout(com.trolltech.qt.gui.QTextDocument)&quot;&gt;&lt;tt&gt;QAbstractTextDocumentLayout&lt;/tt&gt;&lt;/a&gt; class is an abstract base class used to implement custom layouts for QTextDocuments.&lt;/p&gt;
&lt;p&gt;The standard layout provided by Qt can handle simple word processing including inline layouts, lists and tables.&lt;/p&gt;
&lt;p&gt;Some applications (e.g&amp;#x2e; a word processor or a DTP application) might need more features than the ones provided by Qt's layout engine, in which case you can subclass &lt;a href=&quot;QAbstractTextDocumentLayout.html#QAbstractTextDocumentLayout(com.trolltech.qt.gui.QTextDocument)&quot;&gt;&lt;tt&gt;QAbstractTextDocumentLayout&lt;/tt&gt;&lt;/a&gt; to provide your own custom layout behavior for your text documents.&lt;/p&gt;
 */">
    <signal name="protected final void documentSizeChanged(com.trolltech.qt.core.QSizeF newSize)" doc="/**
&lt;p&gt;This signal is emitted when the size of the document changes. The new size is specified by &lt;tt&gt;newSize&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;This information is useful to widgets that display text documents since it enables them to update their scroll bars correctly.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(com.trolltech.qt.core.QSizeF newSize)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QAbstractTextDocumentLayout.html#documentSize()&quot;&gt;&lt;tt&gt;documentSize&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void pageCountChanged(int newPages)" doc="/**
&lt;p&gt;This signal is emitted when the number of pages in the layout changes; &lt;tt&gt;newPages&lt;/tt&gt; is the updated page count.&lt;/p&gt;
&lt;p&gt;Changes to the page count are due to the changes to the layout or the document content itself.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(int newPages)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;See Also:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;a href=&quot;QAbstractTextDocumentLayout.html#pageCount()&quot;&gt;&lt;tt&gt;pageCount&lt;/tt&gt;&lt;/a&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <signal name="protected final void update(com.trolltech.qt.core.QRectF arg__1)" doc="/**
&lt;p&gt;This signal is emitted when the rectangle &lt;tt&gt;arg__1&lt;/tt&gt; has been updated.&lt;/p&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;Compatible Slot Signatures:&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot(com.trolltech.qt.core.QRectF arg__1)&lt;/tt&gt;&lt;/dd&gt;
&lt;dd&gt;&lt;tt&gt;void mySlot()&lt;/tt&gt;&lt;/dd&gt;
&lt;/dl&gt;
 */"/>
    <method name="public QAbstractTextDocumentLayout(com.trolltech.qt.gui.QTextDocument doc)" doc="/**
&lt;p&gt;Creates a new text document layout for the given &lt;tt&gt;doc&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public final java.lang.String anchorAt(com.trolltech.qt.core.QPointF pos)" doc="/**
&lt;p&gt;Returns the reference of the anchor at the given &lt;tt&gt;pos&lt;/tt&gt;, or an empty string if no anchor exists at that point.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.gui.QTextDocument document()" doc="/**
&lt;p&gt;Returns the text document that this layout is operating on.&lt;/p&gt;
 */"/>
    <method name="protected final com.trolltech.qt.gui.QTextCharFormat format(int pos)" doc="/**
&lt;p&gt;Returns the character format that is applicable at the given &lt;tt&gt;pos&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="protected final int formatIndex(int pos)" doc="/**
&lt;p&gt;&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.gui.QTextObjectInterface handlerForObject(int objectType)" doc="/**
&lt;p&gt;Returns a handler for objects of the given &lt;tt&gt;objectType&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public final com.trolltech.qt.gui.QPaintDeviceInterface paintDevice()" doc="/**
&lt;p&gt;Returns the paint device used to render the document's layout.&lt;/p&gt;

@see &lt;a href=&quot;QAbstractTextDocumentLayout.html#setPaintDevice(com.trolltech.qt.gui.QPaintDeviceInterface)&quot;&gt;&lt;tt&gt;setPaintDevice&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public final void registerHandler(int objectType, com.trolltech.qt.core.QObject component)" doc="/**
&lt;p&gt;Registers the given &lt;tt&gt;component&lt;/tt&gt; as a handler for items of the given &lt;tt&gt;objectType&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public final void setPaintDevice(com.trolltech.qt.gui.QPaintDeviceInterface device)" doc="/**
&lt;p&gt;Sets the paint device used for rendering the document's layout to the given &lt;tt&gt;device&lt;/tt&gt;.&lt;/p&gt;

@see &lt;a href=&quot;QAbstractTextDocumentLayout.html#paintDevice()&quot;&gt;&lt;tt&gt;paintDevice&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public abstract com.trolltech.qt.core.QRectF blockBoundingRect(com.trolltech.qt.gui.QTextBlock block)" doc="/**
&lt;p&gt;Returns the bounding rectangle of &lt;tt&gt;block&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="protected abstract void documentChanged(int from, int charsRemoved, int charsAdded)" doc="/**
&lt;p&gt;This function is called whenever the contents of the document change. A change occurs when text is inserted, removed, or a combination of the two types of operation. The change is specified by &lt;tt&gt;from&lt;/tt&gt;, &lt;tt&gt;charsRemoved&lt;/tt&gt;, and &lt;tt&gt;charsAdded&lt;/tt&gt; corresponding to the starting character position of the change, the number of character removed from the document, and the number of characters added.&lt;/p&gt;
&lt;p&gt;For example, when inserting the text &amp;quot;Hello&amp;quot; into an empty document, &lt;tt&gt;charsRemoved&lt;/tt&gt; would be 0 and &lt;tt&gt;charsAdded&lt;/tt&gt; would be 5 (the length of the string).&lt;/p&gt;
&lt;p&gt;Replacing text is the combination of removal and insertion. For example, if the text &amp;quot;Hello&amp;quot; gets replaced by &amp;quot;Hi&amp;quot;, &lt;tt&gt;charsRemoved&lt;/tt&gt; would be 5 and &lt;tt&gt;charsAdded&lt;/tt&gt; would be 2.&lt;/p&gt;
 */"/>
    <method name="public abstract com.trolltech.qt.core.QSizeF documentSize()" doc="/**
&lt;p&gt;Returns the total size of the document. This is useful to display widgets since they can use to information to update their scroll bars correctly&lt;/p&gt;

@see &lt;a href=&quot;QAbstractTextDocumentLayout.html#documentSizeChanged(com.trolltech.qt.core.QSizeF)&quot;&gt;&lt;tt&gt;documentSizeChanged&lt;/tt&gt;&lt;/a&gt;
@see &lt;tt&gt;QTextDocument::pageSize&lt;/tt&gt; */"/>
    <method name="public abstract void draw(com.trolltech.qt.gui.QPainter painter, com.trolltech.qt.gui.QAbstractTextDocumentLayout_PaintContext context)" doc="/**
&lt;p&gt;Draws the layout on the given &lt;tt&gt;painter&lt;/tt&gt; with the given &lt;tt&gt;context&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="protected void drawInlineObject(com.trolltech.qt.gui.QPainter painter, com.trolltech.qt.core.QRectF rect, com.trolltech.qt.gui.QTextInlineObject object, int posInDocument, com.trolltech.qt.gui.QTextFormat format)" doc="/**
&lt;p&gt;Called to draw the inline object &lt;tt&gt;object&lt;/tt&gt; on the given &lt;tt&gt;painter&lt;/tt&gt; within the rectangle specified by &lt;tt&gt;rect&lt;/tt&gt; using the text format specified by &lt;tt&gt;format&lt;/tt&gt;. &lt;tt&gt;posInDocument&lt;/tt&gt; specifies the position of the object within the document.&lt;/p&gt;

@see &lt;a href=&quot;QAbstractTextDocumentLayout.html#draw(com.trolltech.qt.gui.QPainter, com.trolltech.qt.gui.QAbstractTextDocumentLayout_PaintContext)&quot;&gt;&lt;tt&gt;draw&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="public abstract com.trolltech.qt.core.QRectF frameBoundingRect(com.trolltech.qt.gui.QTextFrame frame)" doc="/**
&lt;p&gt;Returns the bounding rectacle of &lt;tt&gt;frame&lt;/tt&gt;. Returns the bounding rectangle of &lt;tt&gt;frame&lt;/tt&gt;.&lt;/p&gt;
 */"/>
    <method name="public abstract int hitTest(com.trolltech.qt.core.QPointF point, com.trolltech.qt.core.Qt.HitTestAccuracy accuracy)" doc="/**
&lt;p&gt;Returns the cursor postion for the given &lt;tt&gt;point&lt;/tt&gt; with the &lt;tt&gt;accuracy&lt;/tt&gt; specified. Returns -1 to indicate failure if no valid cursor position was found.&lt;/p&gt;
 */"/>
    <method name="public abstract int pageCount()" doc="/**
&lt;p&gt;Returns the number of pages required by the layout.&lt;/p&gt;

@see &lt;a href=&quot;QAbstractTextDocumentLayout.html#pageCountChanged(int)&quot;&gt;&lt;tt&gt;pageCountChanged&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="protected void positionInlineObject(com.trolltech.qt.gui.QTextInlineObject item, int posInDocument, com.trolltech.qt.gui.QTextFormat format)" doc="/**
&lt;p&gt;Lays out the inline object &lt;tt&gt;item&lt;/tt&gt; using the given text &lt;tt&gt;format&lt;/tt&gt;. The base class implementation does nothing. &lt;tt&gt;posInDocument&lt;/tt&gt; specifies the position of the object within the document.&lt;/p&gt;

@see &lt;a href=&quot;QAbstractTextDocumentLayout.html#drawInlineObject(com.trolltech.qt.gui.QPainter, com.trolltech.qt.core.QRectF, com.trolltech.qt.gui.QTextInlineObject, int, com.trolltech.qt.gui.QTextFormat)&quot;&gt;&lt;tt&gt;drawInlineObject&lt;/tt&gt;&lt;/a&gt; */"/>
    <method name="protected void resizeInlineObject(com.trolltech.qt.gui.QTextInlineObject item, int posInDocument, com.trolltech.qt.gui.QTextFormat format)" doc="/**
&lt;p&gt;Sets the size of the inline object &lt;tt&gt;item&lt;/tt&gt; in accordance with the text &lt;tt&gt;format&lt;/tt&gt;. &lt;tt&gt;posInDocument&lt;/tt&gt; specifies the position of the object within the document.&lt;/p&gt;
 */"/>
</class>
