[Bf-blender-cvs] [b21007757fd] master: DRW: disable wide edges when face-dots are used
Campbell Barton
noreply at git.blender.org
Wed Feb 27 06:08:40 CET 2019
Commit: b21007757fd642a1c77ff7081832d93b3282a34b
Author: Campbell Barton
Date: Wed Feb 27 16:01:09 2019 +1100
Branches: master
https://developer.blender.org/rBb21007757fd642a1c77ff7081832d93b3282a34b
DRW: disable wide edges when face-dots are used
Users who prefer to use face dot's don't get an advantage from drawing
thicker wire.
Requested by @ward
===================================================================
M release/scripts/startup/bl_ui/space_view3d.py
M source/blender/draw/modes/edit_mesh_mode.c
M source/blender/makesrna/intern/rna_space.c
===================================================================
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 19e9c3f8041..7a17cb864c6 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -4936,10 +4936,6 @@ class VIEW3D_PT_overlay_edit_mesh(Panel):
sub = split.column()
sub.prop(overlay, "show_faces", text="Faces")
sub = split.column()
- if shading.type == 'WIREFRAME':
- sub.active = not shading.show_xray_wireframe
- else:
- sub.active = not shading.show_xray
sub.prop(overlay, "show_face_center", text="Center")
row = col.row(align=True)
diff --git a/source/blender/draw/modes/edit_mesh_mode.c b/source/blender/draw/modes/edit_mesh_mode.c
index f8bc4ecbf9e..d599e390ca7 100644
--- a/source/blender/draw/modes/edit_mesh_mode.c
+++ b/source/blender/draw/modes/edit_mesh_mode.c
@@ -274,6 +274,8 @@ static DRWPass *edit_mesh_create_overlay_pass(
const bool select_vert = (tsettings->selectmode & SCE_SELECT_VERTEX) != 0;
const bool select_face = (tsettings->selectmode & SCE_SELECT_FACE) != 0;
const bool select_edge = (tsettings->selectmode & SCE_SELECT_EDGE) != 0;
+ const bool show_wide_edge = select_edge && !(draw_ctx->v3d->overlay.edit_flag & V3D_OVERLAY_EDIT_FACE_DOT);
+
float winmat[4][4];
float viewdist = rv3d->dist;
DRW_viewport_matrix_get(winmat, DRW_MAT_WIN);
@@ -326,7 +328,7 @@ static DRWPass *edit_mesh_create_overlay_pass(
DRW_shgroup_uniform_ivec4(grp, "dataMask", data_mask, 1);
DRW_shgroup_uniform_bool_copy(grp, "doEdges", do_edges);
DRW_shgroup_uniform_float_copy(grp, "ofs", depth_ofs);
- DRW_shgroup_uniform_float_copy(grp, "edgeScale", select_edge ? 1.75f : 1.0f);
+ DRW_shgroup_uniform_float_copy(grp, "edgeScale", show_wide_edge ? 1.75f : 1.0f);
DRW_shgroup_state_enable(grp, DRW_STATE_OFFSET_NEGATIVE);
/* To match blender loop structure. */
DRW_shgroup_state_enable(grp, DRW_STATE_FIRST_VERTEX_CONVENTION);
diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c
index ccc18b49850..8a380514e1b 100644
--- a/source/blender/makesrna/intern/rna_space.c
+++ b/source/blender/makesrna/intern/rna_space.c
@@ -2857,7 +2857,8 @@ static void rna_def_space_view3d_overlay(BlenderRNA *brna)
prop = RNA_def_property(srna, "show_face_center", PROP_BOOLEAN, PROP_NONE);
RNA_def_property_boolean_sdna(prop, NULL, "overlay.edit_flag", V3D_OVERLAY_EDIT_FACE_DOT);
- RNA_def_property_ui_text(prop, "Draw Face Center", "Display face center");
+ RNA_def_property_ui_text(prop, "Draw Face Center", "Display face center "
+ "(when disabled, edges display wider in edge mode)");
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
prop = RNA_def_property(srna, "show_edge_crease", PROP_BOOLEAN, PROP_NONE);
More information about the Bf-blender-cvs
mailing list