[Bf-blender-cvs] [ee1b1b9] master: Curve: change rules wrt active bezier
Campbell Barton
noreply at git.blender.org
Thu Jul 9 06:57:24 CEST 2015
Commit: ee1b1b9e59c790acb3e19b2ca1e004d0b76012af
Author: Campbell Barton
Date: Thu Jul 9 14:52:01 2015 +1000
Branches: master
https://developer.blender.org/rBee1b1b9e59c790acb3e19b2ca1e004d0b76012af
Curve: change rules wrt active bezier
Activate the vertex even if only a single handle is selected
===================================================================
M source/blender/blenkernel/intern/curve.c
M source/blender/editors/curve/editcurve.c
M source/blender/editors/space_view3d/drawobject.c
===================================================================
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index 01e443c..d8a7b2d 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -4297,12 +4297,14 @@ void BKE_curve_nurb_vert_active_validate(Curve *cu)
if (BKE_curve_nurb_vert_active_get(cu, &nu, &vert)) {
if (nu->type == CU_BEZIER) {
- if ((((BezTriple *)vert)->f1 & SELECT) == 0) {
+ BezTriple *bezt = vert;
+ if (BEZT_ISSEL_ANY(bezt) == 0) {
cu->actvert = CU_ACT_NONE;
}
}
else {
- if ((((BPoint *)vert)->f1 & SELECT) == 0) {
+ BPoint *bp = vert;
+ if ((bp->f1 & SELECT) == 0) {
cu->actvert = CU_ACT_NONE;
}
}
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c
index b468ac3..bf3dece 100644
--- a/source/blender/editors/curve/editcurve.c
+++ b/source/blender/editors/curve/editcurve.c
@@ -4185,18 +4185,16 @@ bool mouse_nurb(bContext *C, const int mval[2], bool extend, bool deselect, bool
if (bezt) {
if (hand == 1) {
select_beztriple(bezt, SELECT, SELECT, HIDDEN);
- BKE_curve_nurb_vert_active_set(cu, nu, bezt);
}
else {
if (hand == 0) bezt->f1 |= SELECT;
else bezt->f3 |= SELECT;
-
- cu->actvert = CU_ACT_NONE;
}
+ BKE_curve_nurb_vert_active_set(cu, nu, bezt);
}
else {
- BKE_curve_nurb_vert_active_set(cu, nu, bp);
select_bpoint(bp, SELECT, SELECT, HIDDEN);
+ BKE_curve_nurb_vert_active_set(cu, nu, bp);
}
}
else if (deselect) {
@@ -4254,18 +4252,16 @@ bool mouse_nurb(bContext *C, const int mval[2], bool extend, bool deselect, bool
if (hand == 1) {
select_beztriple(bezt, SELECT, SELECT, HIDDEN);
- BKE_curve_nurb_vert_active_set(cu, nu, bezt);
}
else {
if (hand == 0) bezt->f1 |= SELECT;
else bezt->f3 |= SELECT;
-
- cu->actvert = CU_ACT_NONE;
}
+ BKE_curve_nurb_vert_active_set(cu, nu, bezt);
}
else {
- BKE_curve_nurb_vert_active_set(cu, nu, bp);
select_bpoint(bp, SELECT, SELECT, HIDDEN);
+ BKE_curve_nurb_vert_active_set(cu, nu, bp);
}
}
diff --git a/source/blender/editors/space_view3d/drawobject.c b/source/blender/editors/space_view3d/drawobject.c
index 56de06b..988d4eb 100644
--- a/source/blender/editors/space_view3d/drawobject.c
+++ b/source/blender/editors/space_view3d/drawobject.c
@@ -6253,8 +6253,8 @@ static void drawvertsN(Nurb *nu, const char sel, const bool hide_handles, const
if (bezt->hide == 0) {
if (sel == 1 && bezt == vert) {
UI_ThemeColor(TH_ACTIVE_VERT);
- bglVertex3fv(bezt->vec[1]);
+ if (bezt->f2 & SELECT) bglVertex3fv(bezt->vec[1]);
if (!hide_handles) {
if (bezt->f1 & SELECT) bglVertex3fv(bezt->vec[0]);
if (bezt->f3 & SELECT) bglVertex3fv(bezt->vec[2]);
More information about the Bf-blender-cvs
mailing list