From d7e4944e5b64288f9b6772c63556e060882bfaa6 Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Wed, 10 Dec 2014 17:00:54 +0100 Subject: [PATCH] UI: add Shift-Drag to multiselect expanded enum items too. Differential Revision: https://developer.blender.org/D928 --- source/blender/editors/interface/interface.c | 3 +++ source/blender/editors/interface/interface_handlers.c | 2 +- source/blender/editors/interface/interface_regions.c | 3 ++- source/blender/makesrna/intern/rna_scene.c | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c index 4cbb02c4dd5..38e331e6a1e 100644 --- a/source/blender/editors/interface/interface.c +++ b/source/blender/editors/interface/interface.c @@ -1721,6 +1721,9 @@ bool ui_but_is_bool(const uiBut *but) if (but->rnaprop && RNA_property_type(but->rnaprop) == PROP_BOOLEAN) return true; + if ((but->rnaprop && RNA_property_type(but->rnaprop) == PROP_ENUM) && (but->type == UI_BTYPE_ROW)) + return true; + return false; } diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index b39c786fba7..31a6635c59c 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -6353,6 +6353,7 @@ static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, const wmEvent * case UI_BTYPE_TOGGLE_N: case UI_BTYPE_CHECKBOX: case UI_BTYPE_CHECKBOX_N: + case UI_BTYPE_ROW: retval = ui_do_but_TOG(C, but, data, event); break; case UI_BTYPE_SCROLL: @@ -6375,7 +6376,6 @@ static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, const wmEvent * break; case UI_BTYPE_ROUNDBOX: case UI_BTYPE_LABEL: - case UI_BTYPE_ROW: case UI_BTYPE_IMAGE: case UI_BTYPE_PROGRESS_BAR: case UI_BTYPE_NODE_SOCKET: diff --git a/source/blender/editors/interface/interface_regions.c b/source/blender/editors/interface/interface_regions.c index f6b596ff421..0ec59e4e4cd 100644 --- a/source/blender/editors/interface/interface_regions.c +++ b/source/blender/editors/interface/interface_regions.c @@ -362,7 +362,8 @@ ARegion *ui_tooltip_create(bContext *C, ARegion *butregion, uiBut *but) /* special case enum rna buttons */ if ((but->type & UI_BTYPE_ROW) && but->rnaprop && RNA_property_flag(but->rnaprop) & PROP_ENUM_FLAG) { - BLI_strncpy(data->lines[data->totline], IFACE_("(Shift-click to select multiple)"), sizeof(data->lines[0])); + BLI_strncpy(data->lines[data->totline], IFACE_("(Shift-Click/Drag to select multiple)"), + sizeof(data->lines[0])); data->format[data->totline].color_id = UI_TIP_LC_NORMAL; data->totline++; diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c index 52603625a9d..d9587b8d983 100644 --- a/source/blender/makesrna/intern/rna_scene.c +++ b/source/blender/makesrna/intern/rna_scene.c @@ -5474,7 +5474,7 @@ void RNA_def_scene(BlenderRNA *brna) RNA_def_property_boolean_sdna(prop, NULL, "lay", 1); RNA_def_property_array(prop, 20); RNA_def_property_boolean_funcs(prop, NULL, "rna_Scene_layer_set"); - RNA_def_property_ui_text(prop, "Layers", "Visible layers - Shift-Click to select multiple layers"); + RNA_def_property_ui_text(prop, "Layers", "Visible layers - Shift-Click/Drag to select multiple layers"); RNA_def_property_update(prop, NC_SCENE | ND_LAYER, "rna_Scene_layer_update"); /* active layer */