2 #ifndef __BSE_UNDO_STACK_H__
3 #define __BSE_UNDO_STACK_H__
10 #define BSE_UNDO_STACK_VOID(ustack) ((ustack)->max_steps == 0)
19 typedef void (*BseUndoNotify) (
BseProject *project,
34 guint n_merge_requests;
38 typedef void (*BseUndoFunc) (BseUndoStep *ustep,
39 BseUndoStack *ustack);
40 typedef void (*BseUndoFree) (BseUndoStep *ustep);
43 BseUndoFunc undo_func;
44 BseUndoFree free_func;
55 BseUndoStack* bse_undo_stack_dummy (
void);
56 BseUndoStack* bse_undo_stack_new (
BseProject *project,
57 BseUndoNotify notify);
58 void bse_undo_stack_limit (BseUndoStack *
self,
60 void bse_undo_group_open (BseUndoStack *
self,
62 void bse_undo_stack_ignore_steps (BseUndoStack *
self);
63 void bse_undo_stack_push (BseUndoStack *
self,
65 void bse_undo_stack_push_add_on (BseUndoStack *
self,
67 void bse_undo_stack_unignore_steps (BseUndoStack *
self);
68 void bse_undo_group_close (BseUndoStack *
self);
69 void bse_undo_stack_add_merger (BseUndoStack *
self,
71 void bse_undo_stack_remove_merger (BseUndoStack *
self);
72 void bse_undo_stack_clear (BseUndoStack *
self);
73 gboolean bse_undo_stack_dirty (BseUndoStack *
self);
74 void bse_undo_stack_clean_dirty (BseUndoStack *
self);
75 void bse_undo_stack_force_dirty (BseUndoStack *
self);
76 void bse_undo_stack_destroy (BseUndoStack *
self);
77 guint bse_undo_stack_depth (BseUndoStack *
self);
78 void bse_undo_stack_undo (BseUndoStack *
self);
79 const gchar* bse_undo_stack_peek (BseUndoStack *
self);
80 BseUndoStep* bse_undo_step_new (BseUndoFunc undo_func,
81 BseUndoFree undo_free,
83 void bse_undo_step_exec (BseUndoStep *ustep,
84 BseUndoStack *ustack);
85 void bse_undo_step_free (BseUndoStep *ustep);
86 gchar* bse_undo_pointer_pack (gpointer item,
87 BseUndoStack *ustack);
88 gpointer bse_undo_pointer_unpack (
const gchar *packed_pointer,
89 BseUndoStack *ustack);
90 const BseUndoStep* bse_undo_group_peek_last_atom (BseUndoStack *
self,
Definition: bseundostack.hh:22
Definition: bseundostack.hh:14
Definition: bseundostack.hh:41
Definition: sfiring.hh:23
Definition: bseproject.hh:26