Commit: 05c8590896aeb9b7cfc63b91cfd3425bf5845624
Author: Dalai Felinto
Date:   Fri Jul 25 15:55:13 2014 -0300
Branches: multiview
https://developer.blender.org/rB05c8590896aeb9b7cfc63b91cfd3425bf5845624

multiview: remove old clean ui operator

This functionality is still necessary, but it was refactored and sent
for review independently in D678 (https://developer.blender.org/D678)

===================================================================

M       source/blender/editors/include/ED_screen.h
M       source/blender/editors/screen/area.c
M       source/blender/editors/screen/screen_edit.c
M       source/blender/editors/screen/screen_ops.c
M       source/blender/makesdna/DNA_screen_types.h

===================================================================

diff --git a/source/blender/editors/include/ED_screen.h 
b/source/blender/editors/include/ED_screen.h
index dcca3db..d31be3e 100644
--- a/source/blender/editors/include/ED_screen.h
+++ b/source/blender/editors/include/ED_screen.h
@@ -111,7 +111,6 @@ ScrArea *ED_screen_full_newspace(struct bContext *C, 
ScrArea *sa, int type);
 void    ED_screen_full_prevspace(struct bContext *C, ScrArea *sa);
 void    ED_screen_full_restore(struct bContext *C, ScrArea *sa);
 struct ScrArea *ED_screen_full_toggle(struct bContext *C, struct wmWindow 
*win, struct ScrArea *sa);
-struct ScrArea *ED_screen_clean_toggle(struct bContext *C, struct wmWindow 
*win, struct ScrArea *sa);
 void    ED_screens_header_tools_menu_create(struct bContext *C, struct 
uiLayout *layout, void *arg);
 
 /* anim */
diff --git a/source/blender/editors/screen/area.c 
b/source/blender/editors/screen/area.c
index 495ab97..c671214 100644
--- a/source/blender/editors/screen/area.c
+++ b/source/blender/editors/screen/area.c
@@ -830,12 +830,9 @@ static void region_azone_tria(ScrArea *sa, AZone *az, 
ARegion *ar)
 }      
 
 
-static void region_azone_initialize(bScreen *screen, ScrArea *sa, ARegion *ar, 
AZEdge edge)
+static void region_azone_initialize(ScrArea *sa, ARegion *ar, AZEdge edge) 
 {
        AZone *az;
-
-       if (screen->full == SCREENFULLCLEAN)
-               return;
        
        az = (AZone *)MEM_callocN(sizeof(AZone), "actionzone");
        BLI_addtail(&(sa->actionzones), az);
@@ -862,18 +859,18 @@ static void region_azone_initialize(bScreen *screen, 
ScrArea *sa, ARegion *ar, A
 
 /* *************************************************************** */
 
-static void region_azone_add(bScreen *sc, ScrArea *sa, ARegion *ar, int 
alignment)
+static void region_azone_add(ScrArea *sa, ARegion *ar, int alignment)
 {
        /* edge code (t b l r) is along which area edge azone will be drawn */
        
        if (alignment == RGN_ALIGN_TOP)
-               region_azone_initialize(sc, sa, ar, AE_BOTTOM_TO_TOPLEFT);
+               region_azone_initialize(sa, ar, AE_BOTTOM_TO_TOPLEFT);
        else if (alignment == RGN_ALIGN_BOTTOM)
-               region_azone_initialize(sc, sa, ar, AE_TOP_TO_BOTTOMRIGHT);
+               region_azone_initialize(sa, ar, AE_TOP_TO_BOTTOMRIGHT);
        else if (alignment == RGN_ALIGN_RIGHT)
-               region_azone_initialize(sc, sa, ar, AE_LEFT_TO_TOPRIGHT);
+               region_azone_initialize(sa, ar, AE_LEFT_TO_TOPRIGHT);
        else if (alignment == RGN_ALIGN_LEFT)
-               region_azone_initialize(sc, sa, ar, AE_RIGHT_TO_TOPLEFT);
+               region_azone_initialize(sa, ar, AE_RIGHT_TO_TOPLEFT);
 }
 
 /* dir is direction to check, not the splitting edge direction! */
@@ -1170,7 +1167,7 @@ static void region_rect_recursive(wmWindow *win, ScrArea 
*sa, ARegion *ar, rcti
                 * must be minimum '4' */
        }
        else {
-               region_azone_add(win->screen, sa, ar, alignment);
+               region_azone_add(sa, ar, alignment);
        }
 
        region_rect_recursive(win, sa, ar->next, remainder, quad);
diff --git a/source/blender/editors/screen/screen_edit.c 
b/source/blender/editors/screen/screen_edit.c
index 031afc0..5beab9f 100644
--- a/source/blender/editors/screen/screen_edit.c
+++ b/source/blender/editors/screen/screen_edit.c
@@ -1182,6 +1182,8 @@ void ED_screen_draw(wmWindow *win)
                
                glDisable(GL_BLEND);
        }
+       
+       win->screen->do_draw = false;
 }
 
 /* helper call for below, dpi changes headers */
@@ -1584,7 +1586,7 @@ void ED_screen_delete(bContext *C, bScreen *sc)
        int delete = 1;
        
        /* don't allow deleting temp fullscreens for now */
-       if (sc->full == SCREENFULL || sc->full == SCREENFULLCLEAN) {
+       if (sc->full == SCREENFULL) {
                return;
        }
        
@@ -1899,102 +1901,6 @@ ScrArea *ED_screen_full_toggle(bContext *C, wmWindow 
*win, ScrArea *sa)
        return sc->areabase.first;
 }
 
-/* this function toggles: if area is full then the parent will be restored */
-ScrArea *ED_screen_clean_toggle(bContext *C, wmWindow *win, ScrArea *sa)
-{
-       bScreen *sc, *oldscreen;
-       ARegion *ar;
-
-       if (sa) {
-               /* ensure we don't have a button active anymore, can crash when
-                * switching screens with tooltip open because region and 
tooltip
-                * are no longer in the same screen */
-               for (ar = sa->regionbase.first; ar; ar = ar->next)
-                       uiFreeBlocks(C, &ar->uiblocks);
-
-               /* prevent hanging header prints */
-               ED_area_headerprint(sa, NULL);
-       }
-
-       if (sa && sa->fullclean) {
-               ScrArea *old;
-
-               sc = sa->fullclean;       /* the old screen to restore */
-               oldscreen = win->screen; /* the one disappearing */
-
-               sc->full = SCREENNORMAL;
-
-               /* find old area */
-               for (old = sc->areabase.first; old; old = old->next)
-                       if (old->fullclean) break;
-               if (old == NULL) {
-                       if (G.debug & G_DEBUG)
-                               printf("%s: something wrong in 
areafullscreen\n", __func__);
-                       return NULL;
-               }
-
-               /* restore the old side panels/header visibility */
-               for (ar = sa->regionbase.first; ar; ar = ar->next)
-                       ar->flag = ar->flagclean;
-
-               ED_area_data_swap(old, sa);
-               old->fullclean = NULL;
-
-               /* animtimer back */
-               sc->animtimer = oldscreen->animtimer;
-               oldscreen->animtimer = NULL;
-
-               ED_screen_set(C, sc);
-
-               BKE_screen_free(oldscreen);
-               BKE_libblock_free(CTX_data_main(C), oldscreen);
-
-       }
-       else {
-               ScrArea *newa;
-               char newname[MAX_ID_NAME - 2];
-
-               oldscreen = win->screen;
-
-               oldscreen->full = SCREENFULLCLEAN;
-               BLI_snprintf(newname, sizeof(newname), "%s-%s", 
oldscreen->id.name + 2, "stereo");
-               sc = ED_screen_add(win, oldscreen->scene, newname);
-               sc->full = SCREENFULLCLEAN;
-
-               /* timer */
-               sc->animtimer = oldscreen->animtimer;
-               oldscreen->animtimer = NULL;
-
-               newa = (ScrArea *)sc->areabase.first;
-               ED_area_newspace(C, newa, sa->spacetype);
-
-               /* copy area */
-               ED_area_data_swap(newa, sa);
-
-               /* temporarily hide the side panels/header */
-               for (ar = newa->regionbase.first; ar; ar = ar->next) {
-                       ar->flagclean = ar->flag;
-
-                       if (ELEM(ar->regiontype,
-                                         RGN_TYPE_UI,
-                                         RGN_TYPE_PREVIEW,
-                                         RGN_TYPE_HEADER,
-                                         RGN_TYPE_TOOLS))
-                               ar->flag |= RGN_FLAG_HIDDEN;
-               }
-
-               sa->fullclean = oldscreen;
-               newa->fullclean = oldscreen;
-
-               ED_screen_set(C, sc);
-       }
-
-       /* XXX bad code: setscreen() ends with first area active. fullscreen 
render assumes this too */
-       CTX_wm_area_set(C, sc->areabase.first);
-
-       return sc->areabase.first;
-}
-
 /* update frame rate info for viewport drawing */
 void ED_refresh_viewport_fps(bContext *C)
 {
diff --git a/source/blender/editors/screen/screen_ops.c 
b/source/blender/editors/screen/screen_ops.c
index faec7bc..7d22990 100644
--- a/source/blender/editors/screen/screen_ops.c
+++ b/source/blender/editors/screen/screen_ops.c
@@ -2332,43 +2332,6 @@ static void SCREEN_OT_screen_full_area(wmOperatorType 
*ot)
        
 }
 
-/* special fullscreen mode. Initially intended for stereo-enabled editors
-   but useful for other editors as well */
-/* XXX no shortcut available for this
-   XXX we need a shortcut to toggle HEADER visiblity as well */
-static int screen_clean_full_area_exec(bContext *C, wmOperator *UNUSED(op))
-{
-       bScreen *screen = CTX_wm_screen(C);
-       ScrArea *sa = NULL;
-
-       /* search current screen for 'fullscreen' areas */
-       /* prevents restoring info header, when mouse is over it */
-       for (sa = screen->areabase.first; sa; sa = sa->next) {
-               if (sa->fullclean) break;
-       }
-
-       /* go fullscreen */
-       if (sa == NULL) {
-               sa = CTX_wm_area(C);
-               if (sa == NULL)
-                       return OPERATOR_CANCELLED;
-       }
-
-       ED_screen_clean_toggle(C, CTX_wm_window(C), sa);
-       return OPERATOR_FINISHED;
-}
-
-static void SCREEN_OT_clean_full_area(wmOperatorType *ot)
-{
-       ot->name = "Toggle Clean Full Screen";
-       ot->description = "Toggle editor as clean fullscreen";
-       ot->idname = "SCREEN_OT_clean_full_area";
-
-       ot->exec = screen_clean_full_area_exec;
-       ot->poll = ED_operator_areaactive;
-       ot->flag = 0;
-}
-
 
 
 /* ************** join area operator 
********************************************** */
@@ -3976,7 +3939,6 @@ void ED_operatortypes_screen(void)
        WM_operatortype_append(SCREEN_OT_header_toolbox);
        WM_operatortype_append(SCREEN_OT_screen_set);
        WM_operatortype_append(SCREEN_OT_screen_full_area);
-       WM_operatortype_append(SCREEN_OT_clean_full_area);
        WM_operatortype_append(SCREEN_OT_back_to_previous);
        WM_operatortype_append(SCREEN_OT_spacedata_cleanup);
        WM_operatortype_append(SCREEN_OT_screenshot);
@@ -4096,7 +4058,7 @@ void ED_keymap_screen(wmKeyConfig *keyconf)
        WM_keymap_add_item(keymap, "SCREEN_OT_screen_full_area", SPACEKEY, 
KM_PRESS, KM_SHIFT, 0);
        WM_keymap_add_item(keymap, "SCREEN_OT_screenshot", F3KEY, KM_PRESS, 
KM_CTRL, 0);
        WM_keymap_add_item(keymap, "SCREEN_OT_screencast", F3KEY, KM_PRESS, 
KM_ALT, 0);
-
+       
        /* tests */
        WM_keymap_add_item(keymap, "SCREEN_OT_region_quadview", QKEY, KM_PRESS, 
KM_CTRL | KM_ALT, 0);
        WM_keymap_verify_item(keymap, "SCREEN_OT_repeat_history", F3KEY, 
KM_PRESS, 0, 0);
diff --git a/source/blender/makesdna/DNA_screen_types.h 
b/source/blender/makesdna/DNA_screen_types.h
index 04f3ba6..38d3c27 100644
--- a/source/blender/makesdna/DNA_screen_types.h
+++ b/source/blender/makesdna/DNA_screen_types.h
@@ -225,9 +225,6 @@ typedef struct ScrArea {
        ListBase handlers;              /* wmEventHandler */
        
        ListBase actionzones;   /* AZone */
-
-       bScreen *fullclean;                     /* if area==fullclean, this is 
the parent */
-       void *pad2;
 } ScrArea;
 
 typedef struct ARegion {
@@ -250,8 +247,7 @@ typedef struct ARegion {
        short do_draw_overlay;          /* private, cached notifier events */
        short swap;                                     /* private, indicator 
to survive swap-exchange */
        short overlap;                          /* private, set for indicate 
drawing overlapped */
-       short flagclean;                        /* temporary copy of flag 
settings for clean fullscreen */
-       short pad;
+       short pad[2];
        
        struct ARegionType *type;       /* callbacks for this region type */
        
@@ -294,7 +290,6 @@ typedef struct ARegion {
 /* screen->full */
 #define SCREENNORMAL   0
 #define SCREENFULL             1
-#define SCREENFULLCLEAN 2
 
 /* Panel->flag */
 enum {

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to