diff options
author | Matt Ebb <matt@mke3.net> | 2009-12-08 10:12:06 +0300 |
---|---|---|
committer | Matt Ebb <matt@mke3.net> | 2009-12-08 10:12:06 +0300 |
commit | 81a69bb00fede01ec02750f2d4b093ac9d1f7d55 (patch) | |
tree | 27e338fc94f6bb7129faf747cd0fd20cd6db587b /source/blender/editors/screen/area.c | |
parent | f4fa39a55122d1f9031c355f52860fbe2ca8ca6b (diff) |
Various changes to screen-related code, aiming to fix a few problems and usability issues with 'temp' screen layouts.
Now, temp screens are hidden from being accessed directly, with a new 'Back to Previous' button appearing in place of the screen menu when (for example) fullscreen render image areas are present. Window type menus also get disabled here too, to prevent things from getting too mixed up.
Diffstat (limited to 'source/blender/editors/screen/area.c')
-rw-r--r-- | source/blender/editors/screen/area.c | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c index ea56e9fd31b..d9d76e963a3 100644 --- a/source/blender/editors/screen/area.c +++ b/source/blender/editors/screen/area.c @@ -1089,30 +1089,11 @@ void ED_area_newspace(bContext *C, ScrArea *sa, int type) } } -void ED_area_prevspace(bContext *C) +void ED_area_prevspace(bContext *C, ScrArea *sa) { - SpaceLink *sl= CTX_wm_space_data(C); - ScrArea *sa= CTX_wm_area(C); - - /* cleanup */ -#if 0 // XXX needs to be space type specific - if(sfile->spacetype==SPACE_FILE) { - if(sfile->pupmenu) { - MEM_freeN(sfile->pupmenu); - sfile->pupmenu= NULL; - } - } -#endif + SpaceLink *sl = (sa) ? sa->spacedata.first : CTX_wm_space_data(C); if(sl->next) { - -#if 0 // XXX check whether this is still needed - if (sfile->spacetype == SPACE_SCRIPT) { - SpaceScript *sc = (SpaceScript *)sfile; - if (sc->script) sc->script->flags &=~SCRIPT_FILESEL; - } -#endif - /* workaround for case of double prevspace, render window with a file browser on top of it */ if(sl->next->spacetype == SPACE_FILE && sl->next->next) @@ -1193,7 +1174,8 @@ int ED_area_header_standardbuttons(const bContext *C, uiBlock *block, int yco) ScrArea *sa= CTX_wm_area(C); int xco= 8; - xco= ED_area_header_switchbutton(C, block, yco); + if (!sa->full) + xco= ED_area_header_switchbutton(C, block, yco); uiBlockSetEmboss(block, UI_EMBOSSN); |