Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c
| Show First 20 Lines • Show All 685 Lines • ▼ Show 20 Lines | if (event->type == LEFTMOUSE && event->val == KM_RELEASE) { /* XXX, hardcoded */ | ||||
| WM_gesture_straightline_cancel(C, op); | WM_gesture_straightline_cancel(C, op); | ||||
| ret &= ~OPERATOR_RUNNING_MODAL; | ret &= ~OPERATOR_RUNNING_MODAL; | ||||
| ret |= OPERATOR_FINISHED; | ret |= OPERATOR_FINISHED; | ||||
| } | } | ||||
| } | } | ||||
| if (ret & OPERATOR_CANCELLED) { | if (ret & OPERATOR_CANCELLED) { | ||||
| Object *ob = CTX_data_active_object(C); | Object *ob = CTX_data_active_object(C); | ||||
| Mesh *me = ob->data; | |||||
| if (vert_cache) { | |||||
| if (vert_cache->wpp.wpaint_prev) { | if (vert_cache->wpp.wpaint_prev) { | ||||
| Mesh *me = ob->data; | |||||
| BKE_defvert_array_free_elems(me->dvert, me->totvert); | BKE_defvert_array_free_elems(me->dvert, me->totvert); | ||||
| BKE_defvert_array_copy(me->dvert, vert_cache->wpp.wpaint_prev, me->totvert); | BKE_defvert_array_copy(me->dvert, vert_cache->wpp.wpaint_prev, me->totvert); | ||||
| wpaint_prev_destroy(&vert_cache->wpp); | wpaint_prev_destroy(&vert_cache->wpp); | ||||
| } | } | ||||
| MEM_freeN(vert_cache); | MEM_freeN(vert_cache); | ||||
| } | |||||
| DEG_id_tag_update(&ob->id, OB_RECALC_DATA); | DEG_id_tag_update(&ob->id, OB_RECALC_DATA); | ||||
| WM_event_add_notifier(C, NC_OBJECT | ND_DRAW, ob); | WM_event_add_notifier(C, NC_OBJECT | ND_DRAW, ob); | ||||
| } | } | ||||
| else if (ret & OPERATOR_FINISHED) { | else if (ret & OPERATOR_FINISHED) { | ||||
| wpaint_prev_destroy(&vert_cache->wpp); | wpaint_prev_destroy(&vert_cache->wpp); | ||||
| MEM_freeN(vert_cache); | MEM_freeN(vert_cache); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 158 Lines • Show Last 20 Lines | |||||