From bd31cc5eb49c375da25df6068efee8274f02c74c Mon Sep 17 00:00:00 2001 From: Ton Roosendaal Date: Tue, 31 Aug 2004 20:13:32 +0000 Subject: [PATCH] Enabled trial for 'global undo'. This now only has undo steps for - transform (grab, rot, scale, etc) - all button commands, including menus I sacrificed for now the UKEY in the 3d window for it. Shift+U does a redo. (Only in 3d window) What this system does is saving files in the temp directory (user pref). The filenames are cycled around (32 in total now). This commit will follow shortly with a userpref for it, not to frustrate people who want to work in normal fashion with blender. --- source/blender/src/editobject.c | 4 ++-- source/blender/src/interface.c | 2 +- source/blender/src/space.c | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/source/blender/src/editobject.c b/source/blender/src/editobject.c index 1b8ed2d6d79..b3fdef709ec 100644 --- a/source/blender/src/editobject.c +++ b/source/blender/src/editobject.c @@ -6163,8 +6163,8 @@ void transform(int mode) tottrans= 0; /* undo after transform, since it's storing current situations */ - //if(canceled==0 && G.obedit==NULL) - // BIF_write_undo(transform_mode_to_string(mode)); + if(canceled==0 && G.obedit==NULL) + BIF_write_undo(transform_mode_to_string(mode)); } void std_rmouse_transform(void (*xf_func)(int)) diff --git a/source/blender/src/interface.c b/source/blender/src/interface.c index 7e39dff0f17..29f8a805153 100644 --- a/source/blender/src/interface.c +++ b/source/blender/src/interface.c @@ -3091,7 +3091,7 @@ static int ui_do_block(uiBlock *block, uiEvent *uevent) if(inside || uevent->event!=LEFTMOUSE) { butevent= ui_do_button(block, but, uevent); - // if(but->type!=BLOCK) BIF_write_undo(but->str); + if(but->type!=BLOCK) BIF_write_undo(but->str); if(butevent) addqueue(block->winq, UI_BUT_EVENT, (short)butevent); diff --git a/source/blender/src/space.c b/source/blender/src/space.c index daeeb6fff19..f99ed5032a9 100644 --- a/source/blender/src/space.c +++ b/source/blender/src/space.c @@ -1439,12 +1439,12 @@ void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt) else if(G.f & G_VERTEXPAINT) vpaint_undo(); else - single_user(); - //BIF_undo_step(1); + // single_user(); + BIF_undo_step(1); } else if(G.qual==LR_SHIFTKEY) - // BIF_undo_step(-1); - ; + BIF_undo_step(-1); + break; case VKEY: ob= OBACT;