#include <QtGui/qtextcursor.h>
#ifndef QTEXTCURSOR_H
class QTextCursor{
   public: QTextCursor();
   public: explicit QTextCursor(struct QTextDocument* document);
   public: QTextCursor(struct QTextDocumentPrivate* p, int pos);
   public: explicit QTextCursor(struct QTextFrame* frame);
   public: explicit QTextCursor(struct QTextBlock const & block);
   public: explicit QTextCursor(struct QTextCursorPrivate* d);
   public: QTextCursor(class QTextCursor const & cursor);
   public: class QTextCursor& operator =(class QTextCursor const & other);
   public: ~QTextCursor();
   public: bool isNull() const
   public: enum MoveMode{
      MoveAnchor = 0,
      KeepAnchor = 1,
   };
   public: void setPosition(int pos, enum QTextCursor::MoveMode mode = QTextCursor::MoveAnchor);
   public: int position() const
   public: int anchor() const
   public: void insertText(class QString const & text);
   public: void insertText(class QString const & text, class QTextCharFormat const & format);
   public: enum MoveOperation{
      NoMove = 0,
      Start = 1,
      Up = 2,
      StartOfLine = 3,
      StartOfBlock = 4,
      StartOfWord = 5,
      PreviousBlock = 6,
      PreviousCharacter = 7,
      PreviousWord = 8,
      Left = 9,
      WordLeft = 10,
      End = 11,
      Down = 12,
      EndOfLine = 13,
      EndOfWord = 14,
      EndOfBlock = 15,
      NextBlock = 16,
      NextCharacter = 17,
      NextWord = 18,
      Right = 19,
      WordRight = 20,
   };
   public: bool movePosition(enum QTextCursor::MoveOperation op, enum QTextCursor::MoveMode = QTextCursor::MoveAnchor, int n = 1);
   public: void deleteChar();
   public: void deletePreviousChar();
   public: enum SelectionType{
      WordUnderCursor = 0,
      LineUnderCursor = 1,
      BlockUnderCursor = 2,
      Document = 3,
   };
   public: void select(enum QTextCursor::SelectionType selection);
   public: bool hasSelection() const
   public: bool hasComplexSelection() const
   public: void removeSelectedText();
   public: void clearSelection();
   public: int selectionStart() const
   public: int selectionEnd() const
   public: class QString selectedText() const
   public: struct QTextDocumentFragment selection() const
   public: void selectedTableCells(int* firstRow, int* numRows, int* firstColumn, int* numColumns) const
   public: struct QTextBlock block() const
   public: class QTextCharFormat charFormat() const
   public: void setCharFormat(class QTextCharFormat const & format);
   public: void mergeCharFormat(class QTextCharFormat const & modifier);
   public: class QTextBlockFormat blockFormat() const
   public: void setBlockFormat(class QTextBlockFormat const & format);
   public: void mergeBlockFormat(class QTextBlockFormat const & modifier);
   public: class QTextCharFormat blockCharFormat() const
   public: void setBlockCharFormat(class QTextCharFormat const & format);
   public: void mergeBlockCharFormat(class QTextCharFormat const & modifier);
   public: bool atBlockStart() const
   public: bool atBlockEnd() const
   public: bool atStart() const
   public: bool atEnd() const
   public: void insertBlock();
   public: void insertBlock(class QTextBlockFormat const & format);
   public: void insertBlock(class QTextBlockFormat const & format, class QTextCharFormat const & charFormat);
   public: struct QTextList* insertList(class QTextListFormat const & format);
   public: struct QTextList* insertList(enum QTextListFormat::Style style);
   public: struct QTextList* createList(class QTextListFormat const & format);
   public: struct QTextList* createList(enum QTextListFormat::Style style);
   public: struct QTextList* currentList() const
   public: struct QTextTable* insertTable(int rows, int cols, class QTextTableFormat const & format);
   public: struct QTextTable* insertTable(int rows, int cols);
   public: struct QTextTable* currentTable() const
   public: struct QTextFrame* insertFrame(class QTextFrameFormat const & format);
   public: struct QTextFrame* currentFrame() const
   public: void insertFragment(struct QTextDocumentFragment const & fragment);
   public: void insertHtml(class QString const & html);
   public: void insertImage(class QTextImageFormat const & format, enum QTextFrameFormat::Position alignment);
   public: void insertImage(class QTextImageFormat const & format);
   public: void insertImage(class QString const & name);
   public: void beginEditBlock();
   public: void joinPreviousEditBlock();
   public: void endEditBlock();
   public: bool operator !=(class QTextCursor const & rhs) const
   public: bool operator <(class QTextCursor const & rhs) const
   public: bool operator <=(class QTextCursor const & rhs) const
   public: bool operator ==(class QTextCursor const & rhs) const
   public: bool operator >=(class QTextCursor const & rhs) const
   public: bool operator >(class QTextCursor const & rhs) const
   public: bool isCopyOf(class QTextCursor const & other) const
   public: int blockNumber() const
   public: int columnNumber() const
   private: class QSharedDataPointer < struct QTextCursorPrivate > d;
   friend struct QTextDocumentFragmentPrivate;
   friend struct QTextCopyHelper;
};
#endif // QTEXTCURSOR_H