summaryrefslogtreecommitdiff
path: root/core/undo_redo.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/undo_redo.h')
-rw-r--r--core/undo_redo.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/core/undo_redo.h b/core/undo_redo.h
index a9187534c1..141a413c2a 100644
--- a/core/undo_redo.h
+++ b/core/undo_redo.h
@@ -45,6 +45,9 @@ public:
Variant _add_do_method(const Variant** p_args, int p_argcount, Variant::CallError& r_error);
Variant _add_undo_method(const Variant** p_args, int p_argcount, Variant::CallError& r_error);
+ typedef void (*MethodNotifyCallback)(void *p_ud,Object*p_base,const StringName& p_name,VARIANT_ARG_DECLARE);
+ typedef void (*PropertyNotifyCallback)(void *p_ud,Object*p_base,const StringName& p_property,const Variant& p_value);
+
private:
struct Operation {
@@ -83,6 +86,11 @@ private:
CommitNotifyCallback callback;
void* callback_ud;
+ void* method_callbck_ud;
+ void* prop_callback_ud;
+
+ MethodNotifyCallback method_callback;
+ PropertyNotifyCallback property_callback;
protected:
@@ -113,6 +121,9 @@ public:
void set_commit_notify_callback(CommitNotifyCallback p_callback,void* p_ud);
+ void set_method_notify_callback(MethodNotifyCallback p_method_callback,void* p_ud);
+ void set_property_notify_callback(PropertyNotifyCallback p_property_callback,void* p_ud);
+
UndoRedo();
~UndoRedo();
};