#ifndef QTEXTLAYOUT_H
#define QTEXTLAYOUT_H
#include <QtCore/qstring.h>
#include <QtCore/qnamespace.h>
#include <QtCore/qrect.h>
#include <QtCore/qvector.h>
#include <QtGui/qcolor.h>
#include <QtCore/qobject.h>
#include <QtGui/qevent.h>
#include <QtGui/qtextformat.h>
typedef enum QtValidLicenseForGuiModule QtGuiModule;
class QTextInlineObject{
public: inline QTextInlineObject(int i, struct QTextEngine* e);
public: inline QTextInlineObject();
public: inline bool isValid() const
public: class QRectF rect() const
public: qreal width() const
public: qreal ascent() const
public: qreal descent() const
public: qreal height() const
public: enum Qt::LayoutDirection textDirection() const
public: void setWidth(qreal w);
public: void setAscent(qreal a);
public: void setDescent(qreal d);
public: int textPosition() const
public: int formatIndex() const
public: class QTextFormat format() const
private: int itm;
private: struct QTextEngine* eng;
friend class QTextLayout;
};
struct QTextBlock;
struct QTextOption;
class QTextLayout{
public: QTextLayout();
public: QTextLayout(class QString const & text);
public: QTextLayout(class QString const & text, class QFont const & font, class QPaintDevice* paintdevice = 0);
public: QTextLayout(struct QTextBlock const & b);
public: ~QTextLayout();
public: void setFont(class QFont const & f);
public: class QFont font() const
public: void setText(class QString const & string);
public: class QString text() const
public: void setTextOption(struct QTextOption const & option);
public: struct QTextOption textOption() const
public: void setPreeditArea(int position, class QString const & text);
public: int preeditAreaPosition() const
public: class QString preeditAreaText() const
public: struct FormatRange{
public: int start;
public: int length;
public: class QTextCharFormat format;
};
public: void setAdditionalFormats(class QList < struct QTextLayout::FormatRange > const & overrides);
public: class QList < struct QTextLayout::FormatRange > additionalFormats() const
public: void clearAdditionalFormats();
public: void setCacheEnabled(bool enable);
public: bool cacheEnabled() const
public: void beginLayout();
public: void endLayout();
public: class QTextLine createLine();
public: int lineCount() const
public: class QTextLine lineAt(int i) const
public: class QTextLine lineForTextPosition(int pos) const
public: enum CursorMode{
SkipCharacters = 0,
SkipWords = 1,
};
public: bool isValidCursorPosition(int pos) const
public: int nextCursorPosition(int oldPos, enum QTextLayout::CursorMode mode = QTextLayout::SkipCharacters) const
public: int previousCursorPosition(int oldPos, enum QTextLayout::CursorMode mode = QTextLayout::SkipCharacters) const
public: void draw(struct QPainter* p, class QPointF const & pos, class QVector < struct QTextLayout::FormatRange > const & selections = QVector::QVector(), class QRectF const & clip = QRectF::QRectF()) const
public: void drawCursor(struct QPainter* p, class QPointF const & pos, int cursorPosition) const
public: void drawCursor(struct QPainter* p, class QPointF const & pos, int cursorPosition, int width) const
public: class QPointF position() const
public: void setPosition(class QPointF const & p);
public: class QRectF boundingRect() const
public: qreal minimumWidth() const
public: qreal maximumWidth() const
public: inline struct QTextEngine* engine() const
private: inline QTextLayout(struct QTextEngine* e);
private: QTextLayout(class QTextLayout const &);
private: class QTextLayout& operator =(class QTextLayout const &);
private: struct QTextEngine* d;
friend struct QPainter;
friend struct QPSPrinter;
friend struct QGraphicsSimpleTextItemPrivate;
friend struct QGraphicsSimpleTextItem;
friend void qt_format_text(class QFont const & font, class QRectF const & _r, int tf, QTextOption*, class QString const & str, class QRectF* brect, int tabstops, int* tabarray, int tabarraylen, struct QPainter* painter);
};
struct QPSPrinter;
struct QGraphicsSimpleTextItemPrivate;
struct QGraphicsSimpleTextItem;
void qt_format_text(class QFont const & font, class QRectF const & _r, int tf, QTextOption*, class QString const & str, class QRectF* brect, int tabstops, int* tabarray, int tabarraylen, struct QPainter* painter);
class QTextLine{
public: inline QTextLine();
public: inline bool isValid() const
public: class QRectF rect() const
public: qreal x() const
public: qreal y() const
public: qreal width() const
public: qreal ascent() const
public: qreal descent() const
public: qreal height() const
public: qreal naturalTextWidth() const
public: class QRectF naturalTextRect() const
public: enum Edge{
Leading = 0,
Trailing = 1,
};
public: enum CursorPosition{
CursorBetweenCharacters = 0,
CursorOnCharacter = 1,
};
public: qreal cursorToX(int* cursorPos, enum QTextLine::Edge edge = QTextLine::Leading) const
public: inline qreal cursorToX(int cursorPos, enum QTextLine::Edge edge = QTextLine::Leading) const
public: int xToCursor(qreal x, enum QTextLine::CursorPosition = QTextLine::CursorBetweenCharacters) const
public: void setLineWidth(qreal width);
public: void setNumColumns(int columns);
public: void setPosition(class QPointF const & pos);
public: class QPointF position() const
public: int textStart() const
public: int textLength() const
public: inline int lineNumber() const
public: void draw(struct QPainter* p, class QPointF const & point, struct QTextLayout::FormatRange const * selection = 0) const
private: inline QTextLine(int line, struct QTextEngine* e);
private: void layout_helper(int numGlyphs);
private: int i;
private: struct QTextEngine* eng;
friend class QTextLayout;
};
#endif // QTEXTLAYOUT_H