[Bf-blender-cvs] [e2c5439cb4e] master: Cleanup: Reduce variable scope in screen directory
Hans Goudey
noreply at git.blender.org
Sat Oct 17 04:57:20 CEST 2020
Commit: e2c5439cb4eb423373750dae0dec8c5db3912b88
Author: Hans Goudey
Date: Fri Oct 16 21:56:58 2020 -0500
Branches: master
https://developer.blender.org/rBe2c5439cb4eb423373750dae0dec8c5db3912b88
Cleanup: Reduce variable scope in screen directory
Also return early and use LISTBASE_FOREACH in a few places
===================================================================
M source/blender/editors/screen/screen_context.c
M source/blender/editors/screen/screen_draw.c
M source/blender/editors/screen/screen_edit.c
M source/blender/editors/screen/screen_geometry.c
M source/blender/editors/screen/screen_ops.c
M source/blender/editors/screen/screendump.c
M source/blender/editors/screen/workspace_edit.c
M source/blender/editors/screen/workspace_layout_edit.c
===================================================================
diff --git a/source/blender/editors/screen/screen_context.c b/source/blender/editors/screen/screen_context.c
index 0fa19f76fed..3924c334541 100644
--- a/source/blender/editors/screen/screen_context.c
+++ b/source/blender/editors/screen/screen_context.c
@@ -486,10 +486,9 @@ static eContextResult screen_ctx_active_pose_bone(const bContext *C, bContextDat
wmWindow *win = CTX_wm_window(C);
ViewLayer *view_layer = WM_window_get_active_view_layer(win);
Object *obact = view_layer->basact ? view_layer->basact->object : NULL;
- bPoseChannel *pchan;
Object *obpose = BKE_object_pose_armature_get(obact);
- pchan = BKE_pose_channel_active(obpose);
+ bPoseChannel *pchan = BKE_pose_channel_active(obpose);
if (pchan) {
CTX_data_pointer_set(result, &obpose->id, &RNA_PoseBone, pchan);
return CTX_RESULT_OK;
@@ -699,13 +698,11 @@ static eContextResult screen_ctx_gpencil_data_owner(const bContext *C, bContextD
ScrArea *area = CTX_wm_area(C);
ViewLayer *view_layer = WM_window_get_active_view_layer(win);
Object *obact = view_layer->basact ? view_layer->basact->object : NULL;
+
/* Pointer to which data/datablock owns the reference to the Grease Pencil data being used
* (as gpencil_data). */
- bGPdata **gpd_ptr = NULL;
PointerRNA ptr;
-
- /* get pointer to Grease Pencil Data */
- gpd_ptr = ED_gpencil_data_get_pointers_direct(area, obact, &ptr);
+ bGPdata **gpd_ptr = ED_gpencil_data_get_pointers_direct(area, obact, &ptr);
if (gpd_ptr) {
CTX_data_pointer_set(result, ptr.owner_id, ptr.type, ptr.data);
@@ -734,12 +731,10 @@ static eContextResult screen_ctx_annotation_data_owner(const bContext *C,
bScreen *screen = CTX_wm_screen(C);
ScrArea *area = CTX_wm_area(C);
Scene *scene = WM_window_get_active_scene(win);
+
/* Pointer to which data/datablock owns the reference to the Grease Pencil data being used. */
- bGPdata **gpd_ptr = NULL;
PointerRNA ptr;
-
- /* Get pointer to Grease Pencil Data. */
- gpd_ptr = ED_annotation_data_get_pointers_direct((ID *)screen, area, scene, &ptr);
+ bGPdata **gpd_ptr = ED_annotation_data_get_pointers_direct((ID *)screen, area, scene, &ptr);
if (gpd_ptr) {
CTX_data_pointer_set(result, ptr.owner_id, ptr.type, ptr.data);
@@ -855,39 +850,40 @@ static eContextResult screen_ctx_editable_gpencil_strokes(const bContext *C,
bGPdata *gpd = ED_gpencil_data_get_active_direct(area, obact);
const bool is_multiedit = (bool)GPENCIL_MULTIEDIT_SESSIONS_ON(gpd);
- if (gpd) {
- LISTBASE_FOREACH (bGPDlayer *, gpl, &gpd->layers) {
- if (BKE_gpencil_layer_is_editable(gpl) && (gpl->actframe)) {
- bGPDframe *gpf;
- bGPDframe *init_gpf = gpl->actframe;
- if (is_multiedit) {
- init_gpf = gpl->frames.first;
- }
+ if (gpd == NULL) {
+ return CTX_RESULT_NO_DATA;
+ }
- for (gpf = init_gpf; gpf; gpf = gpf->next) {
- if ((gpf == gpl->actframe) || ((gpf->flag & GP_FRAME_SELECT) && (is_multiedit))) {
- LISTBASE_FOREACH (bGPDstroke *, gps, &gpf->strokes) {
- if (ED_gpencil_stroke_can_use_direct(area, gps)) {
- /* check if the color is editable */
- if (ED_gpencil_stroke_color_use(obact, gpl, gps) == false) {
- continue;
- }
+ LISTBASE_FOREACH (bGPDlayer *, gpl, &gpd->layers) {
+ if (BKE_gpencil_layer_is_editable(gpl) && (gpl->actframe)) {
+ bGPDframe *gpf;
+ bGPDframe *init_gpf = gpl->actframe;
+ if (is_multiedit) {
+ init_gpf = gpl->frames.first;
+ }
- CTX_data_list_add(result, &gpd->id, &RNA_GPencilStroke, gps);
+ for (gpf = init_gpf; gpf; gpf = gpf->next) {
+ if ((gpf == gpl->actframe) || ((gpf->flag & GP_FRAME_SELECT) && (is_multiedit))) {
+ LISTBASE_FOREACH (bGPDstroke *, gps, &gpf->strokes) {
+ if (ED_gpencil_stroke_can_use_direct(area, gps)) {
+ /* check if the color is editable */
+ if (ED_gpencil_stroke_color_use(obact, gpl, gps) == false) {
+ continue;
}
+
+ CTX_data_list_add(result, &gpd->id, &RNA_GPencilStroke, gps);
}
}
- /* if not multiedit out of loop */
- if (!is_multiedit) {
- break;
- }
+ }
+ /* if not multiedit out of loop */
+ if (!is_multiedit) {
+ break;
}
}
}
- CTX_data_type_set(result, CTX_DATA_TYPE_COLLECTION);
- return CTX_RESULT_OK;
}
- return CTX_RESULT_NO_DATA;
+ CTX_data_type_set(result, CTX_DATA_TYPE_COLLECTION);
+ return CTX_RESULT_OK;
}
static eContextResult screen_ctx_active_operator(const bContext *C, bContextDataResult *result)
{
@@ -918,7 +914,6 @@ static eContextResult screen_ctx_sel_edit_fcurves_(const bContext *C,
const int extra_filter)
{
bAnimContext ac;
-
if (ANIM_animdata_get_context(C, &ac) && ELEM(ac.spacetype, SPACE_ACTION, SPACE_GRAPH)) {
ListBase anim_data = {NULL, NULL};
@@ -964,7 +959,6 @@ static eContextResult screen_ctx_active_editable_fcurve(const bContext *C,
bContextDataResult *result)
{
bAnimContext ac;
-
if (ANIM_animdata_get_context(C, &ac) && ELEM(ac.spacetype, SPACE_GRAPH)) {
ListBase anim_data = {NULL, NULL};
diff --git a/source/blender/editors/screen/screen_draw.c b/source/blender/editors/screen/screen_draw.c
index 8ded845b008..ddb1f5c87ba 100644
--- a/source/blender/editors/screen/screen_draw.c
+++ b/source/blender/editors/screen/screen_draw.c
@@ -45,10 +45,8 @@ static void draw_horizontal_join_shape(ScrArea *area, char dir, uint pos)
{
const float width = screen_geom_area_width(area) - 1;
const float height = screen_geom_area_height(area) - 1;
- vec2f points[10];
- short i;
- float w, h;
+ float w, h;
if (height < width) {
h = height / 8;
w = height / 4;
@@ -58,6 +56,7 @@ static void draw_horizontal_join_shape(ScrArea *area, char dir, uint pos)
w = width / 4;
}
+ vec2f points[10];
points[0].x = area->v1->vec.x;
points[0].y = area->v1->vec.y + height / 2;
@@ -91,7 +90,7 @@ static void draw_horizontal_join_shape(ScrArea *area, char dir, uint pos)
if (dir == 'l') {
/* when direction is left, then we flip direction of arrow */
float cx = area->v1->vec.x + width;
- for (i = 0; i < 10; i++) {
+ for (int i = 0; i < 10; i++) {
points[i].x -= cx;
points[i].x = -points[i].x;
points[i].x += area->v1->vec.x;
@@ -100,7 +99,7 @@ static void draw_horizontal_join_shape(ScrArea *area, char dir, uint pos)
immBegin(GPU_PRIM_TRI_FAN, 5);
- for (i = 0; i < 5; i++) {
+ for (int i = 0; i < 5; i++) {
immVertex2f(pos, points[i].x, points[i].y);
}
@@ -108,7 +107,7 @@ static void draw_horizontal_join_shape(ScrArea *area, char dir, uint pos)
immBegin(GPU_PRIM_TRI_FAN, 5);
- for (i = 4; i < 8; i++) {
+ for (int i = 4; i < 8; i++) {
immVertex2f(pos, points[i].x, points[i].y);
}
@@ -126,10 +125,8 @@ static void draw_vertical_join_shape(ScrArea *area, char dir, uint pos)
{
const float width = screen_geom_area_width(area) - 1;
const float height = screen_geom_area_height(area) - 1;
- vec2f points[10];
- short i;
- float w, h;
+ float w, h;
if (height < width) {
h = height / 4;
w = height / 8;
@@ -139,6 +136,7 @@ static void draw_vertical_join_shape(ScrArea *area, char dir, uint pos)
w = width / 8;
}
+ vec2f points[10];
points[0].x = area->v1->vec.x + width / 2;
points[0].y = area->v3->vec.y;
@@ -172,7 +170,7 @@ static void draw_vertical_join_shape(ScrArea *area, char dir, uint pos)
if (dir == 'u') {
/* when direction is up, then we flip direction of arrow */
float cy = area->v1->vec.y + height;
- for (i = 0; i < 10; i++) {
+ for (int i = 0; i < 10; i++) {
points[i].y -= cy;
points[i].y = -points[i].y;
points[i].y += area->v1->vec.y;
@@ -181,7 +179,7 @@ static void draw_vertical_join_shape(ScrArea *area, char dir, uint pos)
immBegin(GPU_PRIM_TRI_FAN, 5);
- for (i = 0; i < 5; i++) {
+ for (int i = 0; i < 5; i++) {
immVertex2f(pos, points[i].x, points[i].y);
}
@@ -189,7 +187,7 @@ static void draw_vertical_join_shape(ScrArea *area, char dir, uint pos)
immBegin(GPU_PRIM_TRI_FAN, 5);
- for (i = 4; i < 8; i++) {
+ for (int i = 4; i < 8; i++) {
immVertex2f(pos, points[i].x, points[i].y);
}
@@ -217,12 +215,13 @@ static void draw_join_shape(ScrArea *area, char dir, uint pos)
static void do_vert_pair(GPUVertBuf *vbo, uint pos, uint *vidx, int corner, int i)
{
- float inter[2], exter[2];
+ float inter[2];
inter[0] = cosf(corner * M_PI_2 + (i * M_PI_2 / (CORNER_RESOLUTION - 1.0f)));
inter[1] = sinf(corner * M_PI_2 + (i * M_PI_2 / (CORNER_RESOLUTION - 1.0f)));
/* Snap point to edge */
float div = 1.0f / max_ff(fabsf(inter[0]), fabsf(inter[1]));
+ float exter[2];
mul_v2_v2fl(exter, inter, div);
exter[0] = roundf(exter[0]);
exter[1] = roundf(exter[1]);
diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c
index ee8dacd28fc..5f56bbaef9d 100644
--- a/source/blender/editors/screen/screen_edit.c
+++ b/source/blender/editors/screen/screen_edit.c
@@ -108,17 +108,15 @@ ScrArea *area_split(
const wmWindow *win, bScreen *screen, ScrArea *area, char dir, float fac, int merge)
{
ScrArea *newa = NULL;
- ScrVert *sv1, *sv2;
- short split;
- rcti window_rect;
if (area == NULL) {
return NULL;
}
+ rcti window_rect;
WM_window_rect_calc(win, &window_rect);
- split = screen_geom_find_area_split_point(area, &window_rect, dir, fac);
+ short split = screen_geom_find_area_split_point(area, &window_rect, dir, fac);
if (split == 0) {
return NULL;
}
@@ -129,8 +127,8 @@ ScrArea *area_split(
if (dir == 'h') {
/* new vertices */
- sv1 = screen_geom_vertex_add(screen, area->v1->vec.x, split);
- sv2 = screen_geom_vertex_add(screen, area->v4->vec.x, split);
+ ScrVert *sv1 = screen_geom_vertex_add(screen, area->v1->vec.x, split);
+ ScrVert *sv2 = screen_g
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list