markinterface.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __ktexteditor_markinterface_h__
00021 #define __ktexteditor_markinterface_h__
00022
00023 #include <qptrlist.h>
00024
00025 class QCString;
00026
00027 namespace KTextEditor
00028 {
00029
00030 class Mark
00031 {
00032 public:
00033 uint line;
00034 uint type;
00035 };
00036
00037
00038
00039
00040 class MarkInterface
00041 {
00042 friend class PrivateMarkInterface;
00043
00044 public:
00045 MarkInterface ();
00046 virtual ~MarkInterface ();
00047
00048 unsigned int markInterfaceNumber () const;
00049
00050 protected:
00051 void setMarkInterfaceDCOPSuffix (const QCString &suffix);
00052
00053
00054
00055
00056 public:
00057 virtual uint mark (uint line) = 0;
00058
00059 virtual void setMark (uint line, uint markType) = 0;
00060 virtual void clearMark (uint line) = 0;
00061
00062 virtual void addMark (uint line, uint markType) = 0;
00063 virtual void removeMark (uint line, uint markType) = 0;
00064
00065 virtual QPtrList<KTextEditor::Mark> marks () = 0;
00066 virtual void clearMarks () = 0;
00067
00068 enum MarkTypes
00069 {
00070 markType01= 0x1,
00071 markType02= 0x2,
00072 markType03= 0x4,
00073 markType04= 0x8,
00074 markType05= 0x10,
00075 markType06= 0x20,
00076 markType07= 0x40,
00077 markType08= 0x80,
00078 markType09= 0x100,
00079 markType10= 0x200,
00080 markType11= 0x400,
00081 markType12= 0x800,
00082 markType13= 0x1000,
00083 markType14= 0x2000,
00084 markType15= 0x4000,
00085 markType16= 0x8000,
00086 markType17= 0x10000,
00087 markType18= 0x20000,
00088 markType19= 0x40000,
00089 markType20= 0x80000,
00090 markType21= 0x100000,
00091 markType22= 0x200000,
00092 markType23= 0x400000,
00093 markType24= 0x800000,
00094 markType25= 0x1000000,
00095 markType26= 0x2000000,
00096 markType27= 0x4000000,
00097 markType28= 0x8000000,
00098 markType29= 0x10000000,
00099 markType30= 0x20000000,
00100 markType31= 0x40000000,
00101 markType32= 0x80000000
00102 };
00103
00104
00105
00106
00107 public:
00108 virtual void marksChanged () = 0;
00109
00110 private:
00111 class PrivateMarkInterface *d;
00112 static unsigned int globalMarkInterfaceNumber;
00113 unsigned int myMarkInterfaceNumber;
00114 };
00115
00116 MarkInterface *markInterface (class Document *doc);
00117
00118 }
00119
00120 #endif
This file is part of the documentation for kdelibs Version 3.1.4.