31#ifndef __GTK_UNDO_MANAGER_H__
32#define __GTK_UNDO_MANAGER_H__
34#include <vdk/gtksourcebuffer.h>
38#define GTK_TYPE_UNDO_MANAGER (gtk_undo_manager_get_type ())
39#define GTK_UNDO_MANAGER(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_UNDO_MANAGER, GtkUndoManager))
40#define GTK_UNDO_MANAGER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_UNDO_MANAGER, GtkUndoManagerClass))
41#define GTK_IS_UNDO_MANAGER(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_UNDO_MANAGER))
42#define GTK_IS_UNDO_MANAGER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_UNDO_MANAGER))
43#define GTK_UNDO_MANAGER_GET_CLASS(obj) (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_UNDO_MANAGER, GtkUndoManagerClass))
45typedef struct _GtkUndoManager GtkUndoManager;
46typedef struct _GtkUndoManagerClass GtkUndoManagerClass;
47typedef struct _GtkUndoManagerPrivate GtkUndoManagerPrivate;
49struct _GtkUndoManager {
52 GtkUndoManagerPrivate *priv;
55struct _GtkUndoManagerClass {
56 GObjectClass parent_class;
59 void (*can_undo) (GtkUndoManager *um, gboolean can_undo);
60 void (*can_redo) (GtkUndoManager *um, gboolean can_redo);
63GType gtk_undo_manager_get_type (
void) G_GNUC_CONST;
65GtkUndoManager *gtk_undo_manager_new (GtkSourceBuffer *buffer);
67gboolean gtk_undo_manager_can_undo (
const GtkUndoManager *um);
68gboolean gtk_undo_manager_can_redo (
const GtkUndoManager *um);
70void gtk_undo_manager_undo (GtkUndoManager *um);
71void gtk_undo_manager_redo (GtkUndoManager *um);
73int gtk_undo_manager_get_undo_levels (GtkUndoManager *um);
74void gtk_undo_manager_set_undo_levels (GtkUndoManager *um,
77void gtk_undo_manager_begin_not_undoable_action (GtkUndoManager *um);
78void gtk_undo_manager_end_not_undoable_action (GtkUndoManager *um);