Fix T37534 remaining issue: auto-enable bevel weight view

whenever enter edge bevel weight editing.

This is what happens when one makes an edge sharp, for instance.
The edge bevel weight display is not on by default for performance
reasons, but seems reasonable to enable it when user indicates
interest by editing bevel weight values.
This commit is contained in:
Howard Trickey 2014-08-26 07:22:12 -04:00
parent b198500c02
commit 8f15be2fee
Notes: blender-bot 2023-02-14 11:34:34 +01:00
Referenced by issue #37534, Bevel weight strange behaviour
1 changed files with 24 additions and 2 deletions

View File

@ -26,6 +26,7 @@
#include "MEM_guardedalloc.h"
#include "DNA_mesh_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
@ -883,6 +884,27 @@ static void TRANSFORM_OT_edge_crease(struct wmOperatorType *ot)
Transform_Properties(ot, P_SNAP);
}
static int edge_bevelweight_exec(bContext *C, wmOperator *op)
{
Mesh *me = (Mesh *)CTX_data_edit_object(C)->data;
/* auto-enable bevel edge weight drawing, then chain to common transform code */
me->drawflag |= ME_DRAWBWEIGHTS;
return transform_exec(C, op);
}
static int edge_bevelweight_invoke(bContext *C, wmOperator *op, const wmEvent *event)
{
Mesh *me = (Mesh *)CTX_data_edit_object(C)->data;
/* auto-enable bevel edge weight drawing, then chain to common transform code */
me->drawflag |= ME_DRAWBWEIGHTS;
return transform_invoke(C, op, event);
}
static void TRANSFORM_OT_edge_bevelweight(struct wmOperatorType *ot)
{
/* identifiers */
@ -892,8 +914,8 @@ static void TRANSFORM_OT_edge_bevelweight(struct wmOperatorType *ot)
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO | OPTYPE_BLOCKING;
/* api callbacks */
ot->invoke = transform_invoke;
ot->exec = transform_exec;
ot->invoke = edge_bevelweight_invoke;
ot->exec = edge_bevelweight_exec;
ot->modal = transform_modal;
ot->cancel = transform_cancel;
ot->poll = ED_operator_editmesh;