30 QTextCursorPrivate(QTextDocumentPrivate *p);
31 QTextCursorPrivate(
const QTextCursorPrivate &rhs);
32 ~QTextCursorPrivate();
34 static inline QTextCursorPrivate *getPrivate(QTextCursor *c) {
return c->d; }
36 enum AdjustResult { CursorMoved, CursorUnchanged };
37 AdjustResult adjustPosition(
int positionOfChange,
int charsAddedOrRemoved, QTextUndoCommand::Operation op);
39 void adjustCursor(QTextCursor::MoveOperation m);
42 void clearCells(QTextTable *table,
int startRow,
int startCol,
int numRows,
int numCols, QTextUndoCommand::Operation op);
43 inline bool setPosition(
int newPosition) {
44 Q_ASSERT(newPosition >= 0 && newPosition < priv->length());
45 bool moved = position != newPosition;
47 position = newPosition;
48 currentCharFormat = -1;
53 bool canDelete(
int pos)
const;
55 void insertBlock(
const QTextBlockFormat &format,
const QTextCharFormat &charFormat);
56 bool movePosition(QTextCursor::MoveOperation op, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor);
58 inline QTextBlock block()
const
59 {
return QTextBlock(priv, priv->blockMap().findNode(position)); }
60 inline QTextBlockFormat blockFormat()
const
61 {
return block().blockFormat(); }
63 QTextLayout *blockLayout(QTextBlock &block)
const;
65 QTextTable *complexSelectionTable()
const;
66 void selectedTableCells(
int *firstRow,
int *numRows,
int *firstColumn,
int *numColumns)
const;
68 void setBlockCharFormat(
const QTextCharFormat &format, QTextDocumentPrivate::FormatChangeMode changeMode);
69 void setBlockFormat(
const QTextBlockFormat &format, QTextDocumentPrivate::FormatChangeMode changeMode);
70 void setCharFormat(
const QTextCharFormat &format, QTextDocumentPrivate::FormatChangeMode changeMode);
72 void aboutToRemoveCell(
int from,
int to);
74 static QTextCursor fromPosition(QTextDocumentPrivate *d,
int pos)
75 {
return QTextCursor(d, pos); }
77 QTextDocumentPrivate *priv;
82 int currentCharFormat;
83 uint visualNavigation : 1;
84 uint keepPositionOnInsert : 1;
static void getText(QString &text, QTextDocumentPrivate *priv, const QString &docText, int pos, int end)
static void setBlockCharFormatHelper(QTextDocumentPrivate *priv, int pos1, int pos2, const QTextCharFormat &format, QTextDocumentPrivate::FormatChangeMode changeMode)
#define QTextBeginningOfFrame