diff options
author | Ton Roosendaal <ton@blender.org> | 2004-09-05 17:43:51 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2004-09-05 17:43:51 +0400 |
commit | bf83f6ddd87a76d30339057118f23c5651f9eff4 (patch) | |
tree | d28c5dbec49a60b2060dda9f17f48d08b404f806 /source/blender/src/header_info.c | |
parent | 61e4707bdb6e9f64db0520c47f398d68e9322937 (diff) |
Second itteration of global undo system. Now based on:
- file-to-memory save
- incremental difference steps (compression)
everthing has been tightly coded to use minimum of memcpy or allocs. In
fact this system works with a single full buffer (=file) in memory, and undosteps as differences from it.
Speed gain is factor 4-8 faster. I've added it in CTRL+ALT+T timer menu for
a test. Please note the gain is especially in the undo-storing, not in
retrieving undo.
Also new: file read option to skip UI read (file menu). This now also is
default for the undo system.
Diffstat (limited to 'source/blender/src/header_info.c')
-rw-r--r-- | source/blender/src/header_info.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/source/blender/src/header_info.c b/source/blender/src/header_info.c index 91dc0c29da6..6d22e5a0dae 100644 --- a/source/blender/src/header_info.c +++ b/source/blender/src/header_info.c @@ -883,12 +883,16 @@ static void do_info_filemenu(void *arg, int event) case 13: exit_usiblender(); break; + case 14: + G.fileflags ^= G_FILE_NO_UI; + break; case 31: /* save default settings */ BIF_write_homefile(); break; } allqueue(REDRAWINFO, 0); } + static uiBlock *info_filemenu(void *arg_unused) { uiBlock *block; @@ -904,6 +908,14 @@ static uiBlock *info_filemenu(void *arg_unused) uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); + if(G.fileflags & G_FILE_NO_UI) { + uiDefIconTextBut(block, BUTM, 1, ICON_CHECKBOX_DEHLT, "Load UI", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 14, ""); + } else { + uiDefIconTextBut(block, BUTM, 1, ICON_CHECKBOX_HLT, "Load UI", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 14, ""); + } + + uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, ""); + uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Save|Ctrl W", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 5, ""); uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Save As...|F2", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, 4, ""); @@ -1290,7 +1302,7 @@ static uiBlock *info_gamemenu(void *arg_unused) if(G.fileflags & (1 << G_FILE_ENABLE_ALL_FRAMES_BIT)) { uiDefIconTextBut(block, BUTM, 1, ICON_CHECKBOX_HLT, "Enable All Frames", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, G_FILE_ENABLE_ALL_FRAMES_BIT, ""); } else { - uiDefIconTextBut(block, BUTM, 1, ICON_CHECKBOX_DEHLT, "Enable All Frames", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, G_FILE_ENABLE_ALL_FRAMES_BIT, ""); + uiDefIconTextBut(block, BUTM, 1, ICON_CHECKBOX_DEHLT, "Enable All Frames", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 1, G_FILE_ENABLE_ALL_FRAMES_BIT, ""); } if(G.fileflags & (1 << G_FILE_SHOW_FRAMERATE_BIT)) { |