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:
authorHans Goudey <h.goudey@me.com>2020-10-15 18:02:44 +0300
committerHans Goudey <h.goudey@me.com>2020-10-15 18:02:44 +0300
commit15d78ea85b602cfda4e4b825d44bede71a06d86f (patch)
tree4768379d7e8ef5e055d130ce0c6c610f32c67fd7
parentd1b3439b80fd6e9a0caa653cd55c7a5def18b122 (diff)
UI: Add reset to default value to keymap
With all the work on DNA defaults for 2.91, it's nice to expose this convenient operator. This was already hardcoded in the UI code to the backspace key, adding it to the keymap instead will make the shortcut automatically show in the button right click menu. Differential Revision: https://developer.blender.org/D9219
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/blender_default.py1
-rw-r--r--source/blender/editors/interface/interface.c17
-rw-r--r--source/blender/editors/interface/interface_handlers.c13
-rw-r--r--source/blender/editors/interface/interface_intern.h2
4 files changed, 1 insertions, 32 deletions
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index 0622e9568d1..6674751f9b8 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -715,6 +715,7 @@ def km_user_interface(_params):
("anim.driver_button_remove", {"type": 'D', "value": 'PRESS', "ctrl": True, "alt": True}, None),
("anim.keyingset_button_add", {"type": 'K', "value": 'PRESS'}, None),
("anim.keyingset_button_remove", {"type": 'K', "value": 'PRESS', "alt": True}, None),
+ ("ui.reset_default_button", {"type": 'BACK_SPACE', "value": 'PRESS'}, {"properties": [("all", True)]}),
])
return keymap
diff --git a/source/blender/editors/interface/interface.c b/source/blender/editors/interface/interface.c
index 94b93c11f6c..c2a4465af07 100644
--- a/source/blender/editors/interface/interface.c
+++ b/source/blender/editors/interface/interface.c
@@ -3123,23 +3123,6 @@ bool ui_but_string_set(bContext *C, uiBut *but, const char *str)
return false;
}
-void ui_but_default_set(bContext *C, const bool all, const bool use_afterfunc)
-{
- wmOperatorType *ot = WM_operatortype_find("UI_OT_reset_default_button", true);
-
- if (use_afterfunc) {
- PointerRNA *ptr = ui_handle_afterfunc_add_operator(ot, WM_OP_EXEC_DEFAULT, true);
- RNA_boolean_set(ptr, "all", all);
- }
- else {
- PointerRNA ptr;
- WM_operator_properties_create_ptr(&ptr, ot);
- RNA_boolean_set(&ptr, "all", all);
- WM_operator_name_call_ptr(C, ot, WM_OP_EXEC_DEFAULT, &ptr);
- WM_operator_properties_free(&ptr);
- }
-}
-
static double soft_range_round_up(double value, double max)
{
/* round up to .., 0.1, 0.2, 0.5, 1, 2, 5, 10, 20, 50, ..
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 2c1b6d9f9d5..0cc1932d88c 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -7692,19 +7692,6 @@ static int ui_do_button(bContext *C, uiBlock *block, uiBut *but, const wmEvent *
break;
}
- /* reset to default (generic function, only use if not handled by switch above) */
- /* XXX hardcoded keymap check.... */
- data = but->active;
- if (data && data->state == BUTTON_STATE_HIGHLIGHT) {
- if ((retval == WM_UI_HANDLER_CONTINUE) &&
- (event->type == EVT_BACKSPACEKEY && event->val == KM_PRESS)) {
- /* ctrl+backspace = reset active button; backspace = reset a whole array*/
- ui_but_default_set(C, !event->ctrl, true);
- ED_region_tag_redraw(data->region);
- retval = WM_UI_HANDLER_BREAK;
- }
- }
-
#ifdef USE_DRAG_MULTINUM
if (data) {
if (ELEM(event->type, MOUSEMOVE, INBETWEEN_MOUSEMOVE) ||
diff --git a/source/blender/editors/interface/interface_intern.h b/source/blender/editors/interface/interface_intern.h
index dc1f6cfce50..5da3d9528f8 100644
--- a/source/blender/editors/interface/interface_intern.h
+++ b/source/blender/editors/interface/interface_intern.h
@@ -619,8 +619,6 @@ extern uiBut *ui_but_drag_multi_edit_get(uiBut *but);
void ui_def_but_icon(uiBut *but, const int icon, const int flag);
void ui_def_but_icon_clear(uiBut *but);
-extern void ui_but_default_set(struct bContext *C, const bool all, const bool use_afterfunc);
-
void ui_but_extra_operator_icons_free(uiBut *but);
extern void ui_but_rna_menu_convert_to_panel_type(struct uiBut *but, const char *panel_type);