Commit: 9ba38890f49e09f8824a5d174df7d9da45da7e70 Author: Julian Eisel Date: Sun Nov 15 22:11:12 2015 +0100 Branches: wiggly-widgets https://developer.blender.org/rB9ba38890f49e09f8824a5d174df7d9da45da7e70
Face Maps: Change widget colors, remove hardcoded colors on low-level =================================================================== M source/blender/editors/include/ED_view3d.h M source/blender/editors/space_view3d/drawobject.c M source/blender/editors/space_view3d/view3d_widgets.c M source/blender/windowmanager/intern/wm_generic_widgets.c =================================================================== diff --git a/source/blender/editors/include/ED_view3d.h b/source/blender/editors/include/ED_view3d.h index 6b50b3a..453da49 100644 --- a/source/blender/editors/include/ED_view3d.h +++ b/source/blender/editors/include/ED_view3d.h @@ -325,7 +325,7 @@ int ED_view3d_scene_layer_set(int lay, const int *values, int *active); void *ED_view3d_mats_rv3d_backup(struct RegionView3D *rv3d); void ED_view3d_mats_rv3d_restore(struct RegionView3D *rv3d, void *rv3dmat_pt); -void ED_draw_object_facemap(struct Scene *scene, struct Object *ob, int facemap); +void ED_draw_object_facemap(struct Scene *scene, struct Object *ob, float col[4], int facemap); bool ED_view3d_context_activate(struct bContext *C); void ED_view3d_draw_offscreen_init(struct Scene *scene, struct View3D *v3d); diff --git a/source/blender/editors/space_view3d/drawobject.c b/source/blender/editors/space_view3d/drawobject.c index 1920840..bfb3dd7 100644 --- a/source/blender/editors/space_view3d/drawobject.c +++ b/source/blender/editors/space_view3d/drawobject.c @@ -8699,7 +8699,7 @@ static void draw_object_mesh_instance(Scene *scene, View3D *v3d, RegionView3D *r if (dm) dm->release(dm); } -void ED_draw_object_facemap(Scene *scene, struct Object *ob, int facemap) +void ED_draw_object_facemap(Scene *scene, struct Object *ob, float col[4], int facemap) { DerivedMesh *dm = NULL; @@ -8719,11 +8719,11 @@ void ED_draw_object_facemap(Scene *scene, struct Object *ob, int facemap) glPolygonOffset(1.0, 1.0); dm->totfmaps = BLI_listbase_count(&ob->fmaps); - + GPU_facemap_setup(dm); - glColor4f(0.7, 1.0, 1.0, 0.5); - + glColor4fv(col); + glPushAttrib(GL_ENABLE_BIT); glEnable(GL_BLEND); glDisable(GL_LIGHTING); diff --git a/source/blender/editors/space_view3d/view3d_widgets.c b/source/blender/editors/space_view3d/view3d_widgets.c index e2bfefc..1ace45d 100644 --- a/source/blender/editors/space_view3d/view3d_widgets.c +++ b/source/blender/editors/space_view3d/view3d_widgets.c @@ -287,8 +287,8 @@ void WIDGETGROUP_armature_facemaps_create(const bContext *C, wmWidgetGroup *wgro wmWidget *widget; PointerRNA famapptr; PropertyRNA *prop; - - const float color_shape[4] = {1.0f, 0.3f, 0.0f, 1.0f}; + const float col[4] = {0.8f, 0.8f, 0.45f, 0.2f}; + const float col_hi[4] = {0.8f, 0.8f, 0.45f, 0.4f}; #ifdef USE_FACEMAP_FROM_BONE @@ -304,7 +304,7 @@ void WIDGETGROUP_armature_facemaps_create(const bContext *C, wmWidgetGroup *wgro RNA_pointer_create(&fmap_ob->id, &RNA_FaceMap, fmap, &famapptr); WM_widget_set_operator(widget, "TRANSFORM_OT_translate"); - WM_widget_set_colors(widget, color_shape, color_shape); + WM_widget_set_colors(widget, col, col_hi); WM_widget_set_flag(widget, WM_WIDGET_DRAW_HOVER, true); WM_widget_set_func_select(widget, WIDGET_armature_facemaps_select); opptr = WM_widget_set_operator(widget, "TRANSFORM_OT_translate"); diff --git a/source/blender/windowmanager/intern/wm_generic_widgets.c b/source/blender/windowmanager/intern/wm_generic_widgets.c index b138d08..7699098 100644 --- a/source/blender/windowmanager/intern/wm_generic_widgets.c +++ b/source/blender/windowmanager/intern/wm_generic_widgets.c @@ -1563,11 +1563,13 @@ typedef struct FacemapWidget { static void widget_facemap_draw(const bContext *C, wmWidget *widget) { FacemapWidget *fmap_widget = (FacemapWidget *)widget; + float *col = (widget->flag & WM_WIDGET_SELECTED) ? widget->col_hi : widget->col; + glPushMatrix(); glMultMatrixf(fmap_widget->ob->obmat); glTranslate3fv(widget->offset); glEnable(GL_MULTISAMPLE_ARB); - ED_draw_object_facemap(CTX_data_scene(C), fmap_widget->ob, fmap_widget->facemap); + ED_draw_object_facemap(CTX_data_scene(C), fmap_widget->ob, col, fmap_widget->facemap); glDisable(GL_MULTISAMPLE_ARB); glPopMatrix(); } _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs