interfaces
editinterface.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __ktexteditor_editinterface_h__
00020 #define __ktexteditor_editinterface_h__
00021
00022 #include <qstring.h>
00023
00024 #include <kdelibs_export.h>
00025
00026 namespace KTextEditor
00027 {
00028
00033 class KTEXTEDITOR_EXPORT EditInterface
00034 {
00035 friend class PrivateEditInterface;
00036
00037 public:
00038 EditInterface();
00039 virtual ~EditInterface();
00040
00041 uint editInterfaceNumber () const;
00042
00043 protected:
00044 void setEditInterfaceDCOPSuffix (const QCString &suffix);
00045
00046 public:
00053 virtual QString text () const = 0;
00054
00058 virtual QString text ( uint startLine, uint startCol, uint endLine, uint endCol ) const = 0;
00059
00063 virtual QString textLine ( uint line ) const = 0;
00064
00068 virtual uint numLines () const = 0;
00069
00073 virtual uint length () const = 0;
00074
00078 virtual int lineLength ( uint line ) const = 0;
00079
00084 virtual bool setText ( const QString &text ) = 0;
00085
00090 virtual bool clear () = 0;
00091
00097 virtual bool insertText ( uint line, uint col, const QString &text ) = 0;
00098
00103 virtual bool removeText ( uint startLine, uint startCol, uint endLine, uint endCol ) = 0;
00104
00109 virtual bool insertLine ( uint line, const QString &text ) = 0;
00110
00114 virtual bool removeLine ( uint line ) = 0;
00115
00119 public:
00120 virtual void textChanged () = 0;
00121
00122 virtual void charactersInteractivelyInserted(int ,int ,const QString&)=0;
00123
00127 private:
00128 class PrivateEditInterface *d;
00129 static uint globalEditInterfaceNumber;
00130 uint myEditInterfaceNumber;
00131 };
00132
00133 KTEXTEDITOR_EXPORT EditInterface *editInterface (class Document *doc);
00134
00135 }
00136
00137 #endif