diff options
Diffstat (limited to 'source/blender/editors/include/ED_select_utils.h')
-rw-r--r-- | source/blender/editors/include/ED_select_utils.h | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/source/blender/editors/include/ED_select_utils.h b/source/blender/editors/include/ED_select_utils.h index 049ea7a092f..295268c7719 100644 --- a/source/blender/editors/include/ED_select_utils.h +++ b/source/blender/editors/include/ED_select_utils.h @@ -60,19 +60,29 @@ enum { #define SEL_OP_USE_PRE_DESELECT(sel_op) (ELEM(sel_op, SEL_OP_SET)) #define SEL_OP_CAN_DESELECT(sel_op) (!ELEM(sel_op, SEL_OP_ADD)) -/* Use when we've de-selected all first for 'SEL_OP_SET' */ -int ED_select_op_action(const eSelectOp sel_op, const bool is_select, const bool is_inside); -int ED_select_op_action_deselected(const eSelectOp sel_op, - const bool is_select, - const bool is_inside); +/** + * Use when we've de-selected all first for 'SEL_OP_SET'. + * 1: select, 0: deselect, -1: pass. + */ +int ED_select_op_action(eSelectOp sel_op, bool is_select, bool is_inside); +/** + * Use when we've de-selected all items first (for modes that need it). + * + * \note In some cases changing selection needs to perform other checks, + * so it's more straightforward to deselect all, then select. + */ +int ED_select_op_action_deselected(eSelectOp sel_op, bool is_select, bool is_inside); -int ED_select_similar_compare_float(const float delta, const float thresh, const int compare); +int ED_select_similar_compare_float(float delta, float thresh, int compare); bool ED_select_similar_compare_float_tree(const struct KDTree_1d *tree, - const float length, - const float thresh, - const int compare); + float length, + float thresh, + int compare); -eSelectOp ED_select_op_modal(const eSelectOp sel_op, const bool is_first); +/** + * Utility to use for selection operations that run multiple times (circle select). + */ +eSelectOp ED_select_op_modal(eSelectOp sel_op, bool is_first); #ifdef __cplusplus } |