Qt 4.8
Classes | Public Types | Public Functions | Protected Functions | Friends | List of all members
QTextFrame Class Reference

The QTextFrame class represents a frame in a QTextDocument. More...

#include <qtextobject.h>

Inheritance diagram for QTextFrame:
QTextObject QObject QTextTable

Classes

class  iterator
 The iterator class provides an iterator for reading the contents of a QTextFrame. More...
 

Public Types

typedef iterator Iterator
 Qt-style synonym for QTextFrame::iterator. More...
 

Public Functions

iterator begin () const
 Returns an iterator pointing to the first document element inside the frame. More...
 
QList< QTextFrame * > childFrames () const
 Returns a (possibly empty) list of the frame's child frames. More...
 
iterator end () const
 Returns an iterator pointing to the position past the last document element inside the frame. More...
 
QTextCursor firstCursorPosition () const
 Returns the first cursor position inside the frame. More...
 
int firstPosition () const
 Returns the first document position inside the frame. More...
 
QTextFrameFormat frameFormat () const
 Returns the frame's format. More...
 
QTextCursor lastCursorPosition () const
 Returns the last cursor position inside the frame. More...
 
int lastPosition () const
 Returns the last document position inside the frame. More...
 
QTextFrameLayoutDatalayoutData () const
 
QTextFrameparentFrame () const
 Returns the frame's parent frame. More...
 
 QTextFrame (QTextDocument *doc)
 Creates a new empty frame for the text document. More...
 
void setFrameFormat (const QTextFrameFormat &format)
 Sets the frame's format. More...
 
void setLayoutData (QTextFrameLayoutData *data)
 
 ~QTextFrame ()
 Destroys the frame, and removes it from the document's layout. More...
 
- Public Functions inherited from QTextObject
QTextDocumentPrivatedocHandle () const
 
QTextDocumentdocument () const
 Returns the document this object belongs to. More...
 
QTextFormat format () const
 Returns the text object's format. More...
 
int formatIndex () const
 Returns the index of the object's format in the document's internal list of formats. More...
 
int objectIndex () const
 Returns the object index of this object. More...
 
- Public Functions inherited from QObject
bool blockSignals (bool b)
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). More...
 
const QObjectListchildren () const
 Returns a list of child objects. More...
 
bool connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=0, const QObject *receiver=0, const char *member=0)
 
bool disconnect (const QObject *receiver, const char *member=0)
 
void dumpObjectInfo ()
 Dumps information about signal connections, etc. More...
 
void dumpObjectTree ()
 Dumps a tree of children to the debug output. More...
 
QList< QByteArraydynamicPropertyNames () const
 Returns the names of all properties that were dynamically added to the object using setProperty(). More...
 
virtual bool event (QEvent *)
 This virtual function receives events to an object and should return true if the event e was recognized and processed. More...
 
virtual bool eventFilter (QObject *, QEvent *)
 Filters events if this object has been installed as an event filter for the watched object. More...
 
template<typename T >
findChild (const QString &aName=QString()) const
 Returns the child of this object that can be cast into type T and that is called name, or 0 if there is no such object. More...
 
template<typename T >
QList< T > findChildren (const QString &aName=QString()) 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. More...
 
template<typename T >
QList< T > findChildren (const QRegExp &re) const
 
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. More...
 
void installEventFilter (QObject *)
 Installs an event filter filterObj on this object. More...
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false. More...
 
void killTimer (int id)
 Kills the timer with timer identifier, id. More...
 
virtual const QMetaObjectmetaObject () const
 Returns a pointer to the meta-object of this object. More...
 
void moveToThread (QThread *thread)
 Changes the thread affinity for this object and its children. More...
 
QString objectName () const
 
QObjectparent () const
 Returns a pointer to the parent object. More...
 
QVariant property (const char *name) const
 Returns the value of the object's name property. More...
 
Q_INVOKABLE QObject (QObject *parent=0)
 Constructs an object with parent object parent. More...
 
void removeEventFilter (QObject *)
 Removes an event filter object obj from this object. More...
 
void setObjectName (const QString &name)
 
void setParent (QObject *)
 Makes the object a child of parent. More...
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value. More...
 
void setUserData (uint id, QObjectUserData *data)
 
bool signalsBlocked () const
 Returns true if signals are blocked; otherwise returns false. More...
 
int startTimer (int interval)
 Starts a timer and returns a timer identifier, or returns zero if it could not start a timer. More...
 
QThreadthread () const
 Returns the thread in which the object lives. More...
 
QObjectUserDatauserData (uint id) const
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects. More...
 

Protected Functions

 QTextFrame (QTextFramePrivate &p, QTextDocument *doc)
 
- Protected Functions inherited from QTextObject
 QTextObject (QTextDocument *doc)
 Creates a new QTextObject for the given document. More...
 
 QTextObject (QTextObjectPrivate &p, QTextDocument *doc)
 
void setFormat (const QTextFormat &format)
 Sets the text object's format. More...
 
 ~QTextObject ()
 Destroys the text object. More...
 
- Protected Functions inherited from QObject
virtual void childEvent (QChildEvent *)
 This event handler can be reimplemented in a subclass to receive child events. More...
 
virtual void connectNotify (const char *signal)
 This virtual function is called when something has been connected to signal in this object. More...
 
virtual void customEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive custom events. More...
 
virtual void disconnectNotify (const char *signal)
 This virtual function is called when something has been disconnected from signal in this object. More...
 
 QObject (QObjectPrivate &dd, QObject *parent=0)
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal. More...
 
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns 0. More...
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *)
 This event handler can be reimplemented in a subclass to receive timer events for the object. More...
 

Friends

class iterator
 
class QTextDocumentPrivate
 

Additional Inherited Members

- Public Slots inherited from QObject
void deleteLater ()
 Schedules this object for deletion. More...
 
- Signals inherited from QObject
void destroyed (QObject *=0)
 This signal is emitted immediately before the object obj is destroyed, and can not be blocked. More...
 
- Static Public Functions inherited from QObject
static bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 Creates a connection of the given type from the signal in the sender object to the method in the receiver object. More...
 
static bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 Disconnects signal in object sender from method in object receiver. More...
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static uint registerUserData ()
 
static QString tr (const char *sourceText, const char *comment=0, int n=-1)
 
static QString trUtf8 (const char *sourceText, const char *comment=0, int n=-1)
 
- Static Public Variables inherited from QObject
static const QMetaObject staticMetaObject
 This variable stores the meta-object for the class. More...
 
- Protected Variables inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Static Protected Variables inherited from QObject
static const QMetaObject staticQtMetaObject
 

Detailed Description

The QTextFrame class represents a frame in a QTextDocument.

Note
This class or function is reentrant.

Text frames provide structure for the text in a document. They are used as generic containers for other document elements. Frames are usually created by using QTextCursor::insertFrame().

Warning
This function is not part of the public interface. Each frame in a document consists of a frame start character, QChar(0xFDD0), followed by the frame's contents, followed by a frame end character, QChar(0xFDD1). The character formats of the start and end character contain a reference to the frame object's objectIndex.

Frames can be used to create hierarchical structures in rich text documents. Each document has a root frame (QTextDocument::rootFrame()), and each frame beneath the root frame has a parent frame and a (possibly empty) list of child frames. The parent frame can be found with parentFrame(), and the childFrames() function provides a list of child frames.

Each frame contains at least one text block to enable text cursors to insert new document elements within. As a result, the QTextFrame::iterator class is used to traverse both the blocks and child frames within a given frame. The first and last child elements in the frame can be found with begin() and end().

A frame also has a format (specified using QTextFrameFormat) which can be set with setFormat() and read with format().

Text cursors can be obtained that point to the first and last valid cursor positions within a frame; use the firstCursorPosition() and lastCursorPosition() functions for this. The frame's extent in the document can be found with firstPosition() and lastPosition().

You can iterate over a frame's contents using the QTextFrame::iterator class: this provides read-only access to its internal list of text blocks and child frames.

See also
QTextCursor QTextDocument

Definition at line 122 of file qtextobject.h.

Typedefs

◆ Iterator

Qt-style synonym for QTextFrame::iterator.

Definition at line 177 of file qtextobject.h.

Constructors and Destructors

◆ QTextFrame() [1/2]

QTextFrame::QTextFrame ( QTextDocument doc)
explicit

Creates a new empty frame for the text document.

Definition at line 442 of file qtextobject.cpp.

443  : QTextObject(*new QTextFramePrivate(doc), doc)
444 {
445 }
QTextObject(QTextDocument *doc)
Creates a new QTextObject for the given document.
Definition: qtextobject.cpp:93

◆ ~QTextFrame()

QTextFrame::~QTextFrame ( )

Destroys the frame, and removes it from the document's layout.

Definition at line 451 of file qtextobject.cpp.

452 {
453  Q_D(QTextFrame);
454  delete d->layoutData;
455 }
double d
Definition: qnumeric_p.h:62
The QTextFrame class represents a frame in a QTextDocument.
Definition: qtextobject.h:122
#define Q_D(Class)
Definition: qglobal.h:2482

◆ QTextFrame() [2/2]

QTextFrame::QTextFrame ( QTextFramePrivate p,
QTextDocument doc 
)
protected
Warning
This function is not part of the public interface.

Definition at line 460 of file qtextobject.cpp.

461  : QTextObject(p, doc)
462 {
463 }
QTextObject(QTextDocument *doc)
Creates a new QTextObject for the given document.
Definition: qtextobject.cpp:93

Functions

◆ begin()

QTextFrame::iterator QTextFrame::begin ( ) const

Returns an iterator pointing to the first document element inside the frame.

Please see the document STL-style-Iterators for more information.

See also
end()

Definition at line 659 of file qtextobject.cpp.

Referenced by QTextDocumentLayoutPrivate::drawFrame(), QTextHtmlExporter::emitTextFrame(), firstChildPos(), QTextDocumentLayoutPrivate::frameIteratorForYPosition(), QTextDocumentLayoutPrivate::hitTest(), QTextFrame::iterator::iterator(), QTextDocumentLayoutPrivate::layoutFrame(), QTextHtmlExporter::toHtml(), and QTextOdfWriter::writeFrame().

660 {
662  int b = priv->blockMap().findNode(firstPosition());
663  int e = priv->blockMap().findNode(lastPosition()+1);
664  return iterator(const_cast<QTextFrame *>(this), b, b, e);
665 }
int firstPosition() const
Returns the first document position inside the frame.
int lastPosition() const
Returns the last document position inside the frame.
QTextDocumentPrivate * docHandle() const
const BlockMap & blockMap() const
uint findNode(int k, uint field=0) const
static const QMetaObjectPrivate * priv(const uint *data)
friend class iterator
Definition: qtextobject.h:175

◆ childFrames()

QList< QTextFrame * > QTextFrame::childFrames ( ) const

Returns a (possibly empty) list of the frame's child frames.

See also
parentFrame()

Definition at line 470 of file qtextobject.cpp.

Referenced by boundingRectOfFloatsInSelection(), QTextDocumentPrivate::clearFrame(), findChildFrame(), QTextDocumentLayoutPrivate::hitTest(), QTextDocumentPrivate::insert_frame(), QTextDocumentLayoutPrivate::layoutFlow(), QTextDocumentLayoutPrivate::layoutFrame(), QTextDocumentLayoutPrivate::layoutTable(), markFrames(), QTextFramePrivate::remove_me(), and QTextDocumentPrivate::scan_frames().

471 {
472  Q_D(const QTextFrame);
473  return d->childFrames;
474 }
double d
Definition: qnumeric_p.h:62
The QTextFrame class represents a frame in a QTextDocument.
Definition: qtextobject.h:122
#define Q_D(Class)
Definition: qglobal.h:2482

◆ end()

QTextFrame::iterator QTextFrame::end ( ) const

Returns an iterator pointing to the position past the last document element inside the frame.

Please see the document STL-Style Iterators for more information.

See also
begin()

Definition at line 672 of file qtextobject.cpp.

Referenced by QTextFrame::iterator::iterator(), QTextFrame::iterator::operator++(), QTextFrame::iterator::operator--(), QTextBlock::text(), and QTextBlock::textDirection().

673 {
675  int b = priv->blockMap().findNode(firstPosition());
676  int e = priv->blockMap().findNode(lastPosition()+1);
677  return iterator(const_cast<QTextFrame *>(this), e, b, e);
678 }
int firstPosition() const
Returns the first document position inside the frame.
int lastPosition() const
Returns the last document position inside the frame.
QTextDocumentPrivate * docHandle() const
const BlockMap & blockMap() const
uint findNode(int k, uint field=0) const
static const QMetaObjectPrivate * priv(const uint *data)
friend class iterator
Definition: qtextobject.h:175

◆ firstCursorPosition()

QTextCursor QTextFrame::firstCursorPosition ( ) const

Returns the first cursor position inside the frame.

See also
lastCursorPosition() firstPosition() lastPosition()

Definition at line 494 of file qtextobject.cpp.

495 {
496  Q_D(const QTextFrame);
497  return QTextCursor(d->pieceTable, firstPosition());
498 }
double d
Definition: qnumeric_p.h:62
The QTextFrame class represents a frame in a QTextDocument.
Definition: qtextobject.h:122
int firstPosition() const
Returns the first document position inside the frame.
#define Q_D(Class)
Definition: qglobal.h:2482
The QTextCursor class offers an API to access and modify QTextDocuments.
Definition: qtextcursor.h:70

◆ firstPosition()

int QTextFrame::firstPosition ( ) const

◆ frameFormat()

QTextFrameFormat QTextFrame::frameFormat ( ) const
inline

◆ lastCursorPosition()

QTextCursor QTextFrame::lastCursorPosition ( ) const

Returns the last cursor position inside the frame.

See also
firstCursorPosition() firstPosition() lastPosition()

Definition at line 505 of file qtextobject.cpp.

Referenced by QTextHtmlImporter::closeTag().

506 {
507  Q_D(const QTextFrame);
508  return QTextCursor(d->pieceTable, lastPosition());
509 }
double d
Definition: qnumeric_p.h:62
The QTextFrame class represents a frame in a QTextDocument.
Definition: qtextobject.h:122
#define Q_D(Class)
Definition: qglobal.h:2482
int lastPosition() const
Returns the last document position inside the frame.
The QTextCursor class offers an API to access and modify QTextDocuments.
Definition: qtextcursor.h:70

◆ lastPosition()

int QTextFrame::lastPosition ( ) const

◆ layoutData()

QTextFrameLayoutData * QTextFrame::layoutData ( ) const
Warning
This function is not part of the public interface.

Definition at line 540 of file qtextobject.cpp.

Referenced by data().

541 {
542  Q_D(const QTextFrame);
543  return d->layoutData;
544 }
double d
Definition: qnumeric_p.h:62
The QTextFrame class represents a frame in a QTextDocument.
Definition: qtextobject.h:122
#define Q_D(Class)
Definition: qglobal.h:2482

◆ parentFrame()

QTextFrame * QTextFrame::parentFrame ( ) const

◆ setFrameFormat()

void QTextFrame::setFrameFormat ( const QTextFrameFormat format)
inline

Sets the frame's format.

See also
frameFormat()

Definition at line 191 of file qtextobject.h.

Referenced by QTextDocument::clone(), QLabelPrivate::ensureTextLayouted(), QTextHtmlImporter::processSpecialNodes(), QTextHtmlImporter::scanTable(), and QTextDocument::setDocumentMargin().

192 { QTextObject::setFormat(aformat); }
void setFormat(const QTextFormat &format)
Sets the text object&#39;s format.

◆ setLayoutData()

void QTextFrame::setLayoutData ( QTextFrameLayoutData data)
Warning
This function is not part of the public interface.

Definition at line 549 of file qtextobject.cpp.

Referenced by createData().

550 {
551  Q_D(QTextFrame);
552  delete d->layoutData;
553  d->layoutData = data;
554 }
double d
Definition: qnumeric_p.h:62
The QTextFrame class represents a frame in a QTextDocument.
Definition: qtextobject.h:122
#define Q_D(Class)
Definition: qglobal.h:2482
static const char * data(const QByteArray &arr)

Friends and Related Functions

◆ iterator

friend class iterator
friend

◆ QTextDocumentPrivate

friend class QTextDocumentPrivate
friend

Definition at line 185 of file qtextobject.h.


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