cursorinterface.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __ktexteditor_cursorinterface_h__
00020 #define __ktexteditor_cursorinterface_h__
00021
00022 #include <qptrlist.h>
00023 #include <qstring.h>
00024
00025 namespace KTextEditor
00026 {
00027
00031 class Cursor
00032 {
00033 public:
00034 virtual void position ( unsigned int *line, unsigned int *col ) const = 0;
00035
00036 virtual bool setPosition ( unsigned int line, unsigned int col ) = 0;
00037
00038 virtual bool insertText ( const QString& text ) = 0;
00039
00040 virtual bool removeText ( unsigned int numberOfCharacters ) = 0;
00041
00042 virtual QChar currentChar () const = 0;
00043 };
00044
00048 class CursorInterface
00049 {
00050 friend class PrivateCursorInterface;
00051
00052 public:
00053 CursorInterface ();
00054 virtual ~CursorInterface ();
00055
00056 unsigned int cursorInterfaceNumber () const;
00057
00058 protected:
00059 void setCursorInterfaceDCOPSuffix (const QCString &suffix);
00060
00061 public:
00065 virtual Cursor *createCursor ( ) = 0;
00066
00067
00068
00069
00070 virtual QPtrList<Cursor> cursors () const = 0;
00071
00072 private:
00073 class PrivateCursorInterface *d;
00074 static unsigned int globalCursorInterfaceNumber;
00075 unsigned int myCursorInterfaceNumber;
00076 };
00077
00078 CursorInterface *cursorInterface (class Document *doc);
00079
00080 }
00081
00082 #endif
This file is part of the documentation for interfaces Library Version 3.2.2.