1 /* logjam - a GTK client for LiveJournal.
2 * Copyright (C) 2000-2003 Evan Martin <evan@livejournal.com>
3 * Ported to LogJam by Ari Pollak <ari@debian.org>
5 * This file is based on gedit-undo-manager.h from gEdit 2.2.1.
7 * Copyright (C) 1998, 1999 Alex Roberts, Evan Lawrence
8 * Copyright (C) 2000, 2001 Chema Celorio, Paolo Maggi
11 #ifndef __LOGJAM_UNDOMGR_H__
12 #define __LOGJAM_UNDOMGR_H__
14 #define TYPE_UNDOMGR (undomgr_get_type ())
15 #define UNDOMGR(obj) (GTK_CHECK_CAST ((obj), TYPE_UNDOMGR, UndoMgr))
16 #define UNDOMGR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), TYPE_UNDOMGR, UndoMgrClass))
17 #define IS_UNDOMGR(obj) (GTK_CHECK_TYPE ((obj), TYPE_UNDOMGR))
18 #define IS_UNDOMGR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), TYPE_UNDOMGR))
19 #define UNDOMGR_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), TYPE_UNDOMGR, UndoMgrClass))
22 typedef struct _UndoMgrPrivate UndoMgrPrivate
;
31 GObjectClass parent_class
;
34 void (*can_undo
) (UndoMgr
* um
, gboolean can_undo
);
35 void (*can_redo
) (UndoMgr
* um
, gboolean can_redo
);
38 GType
undomgr_get_type(void) G_GNUC_CONST
;
40 GObject
*undomgr_new(void);
41 void undomgr_attach(UndoMgr
* um
, GtkWidget
* widget
);
42 void undomgr_detach(UndoMgr
* um
, GtkWidget
* widget
);
44 /* Clears the stack of undo actions: */
45 void undomgr_reset(UndoMgr
* um
);
47 gboolean
undomgr_can_undo(const UndoMgr
* um
);
48 gboolean
undomgr_can_redo(const UndoMgr
* um
);
50 void undomgr_undo(UndoMgr
* um
);
51 void undomgr_redo(UndoMgr
* um
);
53 void undomgr_begin_not_undoable_action(UndoMgr
* um
);
54 void undomgr_end_not_undoable_action(UndoMgr
* um
);
56 #endif /* __UNDOMGR_H__ */