00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
#ifndef __ktexteditor_undointerface_h__
00020
#define __ktexteditor_undointerface_h__
00021
00022
class QCString;
00023
00024
namespace KTextEditor
00025 {
00026
00030 class UndoInterface
00031 {
00032
friend class PrivateUndoInterface;
00033
00034
public:
00035
UndoInterface ();
00036
virtual ~
UndoInterface ();
00037
00038
unsigned int undoInterfaceNumber ()
const;
00039
00040
protected:
00041
void setUndoInterfaceDCOPSuffix (
const QCString &suffix);
00042
00043
00044
00045
00046
public:
00047
virtual void undo () = 0;
00048
00049
virtual void redo () = 0;
00050
00051
virtual void clearUndo () = 0;
00052
00053
virtual void clearRedo () = 0;
00054
00055
virtual unsigned int undoCount ()
const = 0;
00056
00057
virtual unsigned int redoCount ()
const = 0;
00058
00062
virtual unsigned int undoSteps ()
const = 0;
00063
00064
virtual void setUndoSteps (
unsigned int steps ) = 0;
00065
00066
00067
00068
00069
public:
00070
virtual void undoChanged () = 0;
00071
00072
private:
00073
class PrivateUndoInterface *d;
00074
static unsigned int globalUndoInterfaceNumber;
00075
unsigned int myUndoInterfaceNumber;
00076 };
00077
00078
UndoInterface *undoInterface (
class Document *doc);
00079
00080 }
00081
00082
#endif