Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-03-26 10:47:55 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-03-26 12:25:25 +0300
commit40f8ddf8297a062968fc6a1523aa210d69c22626 (patch)
tree27e26dd44f3e8778ad06012d184fcb11ed175c94 /source/blender/editors/include/ED_curve.h
parent30fbf905ef8bd587eef43030b81d75b9eb704bec (diff)
3D View: move deselect all logic into an option
This removes `VIEW3D_OT_select_or_deselect_all`, adding a deselect_all option to the `VIEW3D_OT_select` operator. - Add utility functions to simplify de-selecting all. - Return true from selection functions when they change the selection to avoid redundant updates. - Use arrays of bases when passing objects between selection utility functions since some users require bases. - Fix logical error in box selection that updated all objects after the first hit.
Diffstat (limited to 'source/blender/editors/include/ED_curve.h')
-rw-r--r--source/blender/editors/include/ED_curve.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/source/blender/editors/include/ED_curve.h b/source/blender/editors/include/ED_curve.h
index b585dc766d7..3e8821efbd0 100644
--- a/source/blender/editors/include/ED_curve.h
+++ b/source/blender/editors/include/ED_curve.h
@@ -25,6 +25,7 @@
#define __ED_CURVE_H__
struct BPoint;
+struct Base;
struct BezTriple;
struct Curve;
struct EditNurb;
@@ -56,17 +57,18 @@ struct Nurb *ED_curve_add_nurbs_primitive(struct bContext *C, struct Object *obe
bool ED_curve_nurb_select_check(struct View3D *v3d, struct Nurb *nu);
int ED_curve_nurb_select_count(struct View3D *v3d, struct Nurb *nu);
-void ED_curve_nurb_select_all(struct Nurb *nu);
-void ED_curve_nurb_deselect_all(struct Nurb *nu);
+bool ED_curve_nurb_select_all(const struct Nurb *nu);
+bool ED_curve_nurb_deselect_all(const struct Nurb *nu);
int join_curve_exec(struct bContext *C, struct wmOperator *op);
/* editcurve_select.c */
bool ED_curve_select_check(struct View3D *v3d, struct EditNurb *editnurb);
-void ED_curve_deselect_all(struct EditNurb *editnurb);
-void ED_curve_deselect_all_multi(struct Object **objects, int objects_len);
-void ED_curve_select_all(struct EditNurb *editnurb);
-void ED_curve_select_swap(struct EditNurb *editnurb, bool hide_handles);
+bool ED_curve_deselect_all(struct EditNurb *editnurb);
+bool ED_curve_deselect_all_multi_ex(struct Base **bases, int bases_len);
+bool ED_curve_deselect_all_multi(struct bContext *C);
+bool ED_curve_select_all(struct EditNurb *editnurb);
+bool ED_curve_select_swap(struct EditNurb *editnurb, bool hide_handles);
int ED_curve_select_count(struct View3D *v3d, struct EditNurb *editnurb);
/* editcurve_undo.c */