Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Oeser <info@graphics-engineer.com>2019-05-28 00:10:35 +0300
committerPhilipp Oeser <info@graphics-engineer.com>2019-05-28 13:22:48 +0300
commitb2b1aa2f8ead62cb376342b11348fe8495ae736d (patch)
treeb3cfc0599cbde644891e2cafe86d1f2627538c16 /source/blender/editors/interface/interface_draw.c
parentfc8547b88924ea3ba083b3b7cec705e6eba87422 (diff)
Fix T57090: selected node group input sockets circles not drawing in
sidebar UIList nodesockets were actually drawn, but immediately drawn over by widgets from the widget draw batch cache. solution here is to "widgify" nodesocket drawing as well. Reviewers: brecht Maniphest Tasks: T57090 Differential Revision: https://developer.blender.org/D4963
Diffstat (limited to 'source/blender/editors/interface/interface_draw.c')
-rw-r--r--source/blender/editors/interface/interface_draw.c98
1 files changed, 0 insertions, 98 deletions
diff --git a/source/blender/editors/interface/interface_draw.c b/source/blender/editors/interface/interface_draw.c
index 640d5127446..022c3b3cb51 100644
--- a/source/blender/editors/interface/interface_draw.c
+++ b/source/blender/editors/interface/interface_draw.c
@@ -2255,104 +2255,6 @@ void ui_draw_but_TRACKPREVIEW(ARegion *UNUSED(ar),
GPU_blend(false);
}
-void ui_draw_but_NODESOCKET(ARegion *ar,
- uiBut *but,
- const uiWidgetColors *UNUSED(wcol),
- const rcti *recti)
-{
- static const float size = 5.0f;
-
- /* 16 values of sin function */
- const float si[16] = {
- 0.00000000f,
- 0.39435585f,
- 0.72479278f,
- 0.93775213f,
- 0.99871650f,
- 0.89780453f,
- 0.65137248f,
- 0.29936312f,
- -0.10116832f,
- -0.48530196f,
- -0.79077573f,
- -0.96807711f,
- -0.98846832f,
- -0.84864425f,
- -0.57126821f,
- -0.20129852f,
- };
- /* 16 values of cos function */
- const float co[16] = {
- 1.00000000f,
- 0.91895781f,
- 0.68896691f,
- 0.34730525f,
- -0.05064916f,
- -0.44039415f,
- -0.75875812f,
- -0.95413925f,
- -0.99486932f,
- -0.87434661f,
- -0.61210598f,
- -0.25065253f,
- 0.15142777f,
- 0.52896401f,
- 0.82076344f,
- 0.97952994f,
- };
-
- int scissor[4];
-
- /* need scissor test, can draw outside of boundary */
- GPU_scissor_get_i(scissor);
-
- rcti scissor_new = {
- .xmin = recti->xmin,
- .ymin = recti->ymin,
- .xmax = recti->xmax,
- .ymax = recti->ymax,
- };
-
- rcti scissor_region = {0, ar->winx, 0, ar->winy};
-
- BLI_rcti_isect(&scissor_new, &scissor_region, &scissor_new);
- GPU_scissor(scissor_new.xmin,
- scissor_new.ymin,
- BLI_rcti_size_x(&scissor_new),
- BLI_rcti_size_y(&scissor_new));
-
- float x = 0.5f * (recti->xmin + recti->xmax);
- float y = 0.5f * (recti->ymin + recti->ymax);
-
- GPUVertFormat *format = immVertexFormat();
- uint pos = GPU_vertformat_attr_add(format, "pos", GPU_COMP_F32, 2, GPU_FETCH_FLOAT);
- immBindBuiltinProgram(GPU_SHADER_2D_UNIFORM_COLOR);
- immUniformColor4ubv(but->col);
-
- GPU_blend(true);
- immBegin(GPU_PRIM_TRI_FAN, 16);
- for (int a = 0; a < 16; a++) {
- immVertex2f(pos, x + size * si[a], y + size * co[a]);
- }
- immEnd();
-
- immUniformColor4ub(0, 0, 0, 150);
- GPU_line_width(1);
- GPU_line_smooth(true);
- immBegin(GPU_PRIM_LINE_LOOP, 16);
- for (int a = 0; a < 16; a++) {
- immVertex2f(pos, x + size * si[a], y + size * co[a]);
- }
- immEnd();
- GPU_line_smooth(false);
- GPU_blend(false);
-
- immUnbindProgram();
-
- /* restore scissortest */
- GPU_scissor(scissor[0], scissor[1], scissor[2], scissor[3]);
-}
-
/* ****************************************************** */
/* TODO: high quality UI drop shadows using GLSL shader and single draw call