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
00028 class Cursor
00029 {
00030 public:
00031 virtual void position ( unsigned int *line, unsigned int *col ) const = 0;
00032
00033 virtual bool setPosition ( unsigned int line, unsigned int col ) = 0;
00034
00035 virtual bool insertText ( const QString& text ) = 0;
00036
00037 virtual bool removeText ( unsigned int numberOfCharacters ) = 0;
00038
00039 virtual QChar currentChar () const = 0;
00040 };
00041
00042
00043
00044
00045 class CursorInterface
00046 {
00047 friend class PrivateCursorInterface;
00048
00049 public:
00050 CursorInterface ();
00051 virtual ~CursorInterface ();
00052
00053 unsigned int cursorInterfaceNumber () const;
00054
00055 protected:
00056 void setCursorInterfaceDCOPSuffix (const QCString &suffix);
00057
00058 public:
00062 virtual Cursor *createCursor ( ) = 0;
00063
00064
00065
00066
00067 virtual QPtrList<Cursor> cursors () const = 0;
00068
00069 private:
00070 class PrivateCursorInterface *d;
00071 static unsigned int globalCursorInterfaceNumber;
00072 unsigned int myCursorInterfaceNumber;
00073 };
00074
00075 CursorInterface *cursorInterface (class Document *doc);
00076
00077 };
00078
00079 #endif
This file is part of the documentation for kdelibs Version 3.1.0.