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>2018-09-03 16:12:53 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-09-03 16:19:27 +0300
commite152483a320d2da88199697da02ddb2befc73778 (patch)
tree98e8a1e7791e2d76b0ce423db2ce7a4b693c83fb /release
parent0a26c122ed444c587d31c8665ec85e397d30d99a (diff)
Tool System: add paint brush shortcut
Diffstat (limited to 'release')
-rw-r--r--release/scripts/startup/bl_ui/space_toolsystem_common.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/release/scripts/startup/bl_ui/space_toolsystem_common.py b/release/scripts/startup/bl_ui/space_toolsystem_common.py
index 91545ee258e..191cae2ea20 100644
--- a/release/scripts/startup/bl_ui/space_toolsystem_common.py
+++ b/release/scripts/startup/bl_ui/space_toolsystem_common.py
@@ -734,6 +734,9 @@ def keymap_from_context(context, space_type):
kmi_hack = keymap.keymap_items.new("wm.tool_set_by_name", 'A', 'PRESS')
kmi_hack_properties = kmi_hack.properties
+ kmi_hack_brush_select = keymap.keymap_items.new("paint.brush_select", 'A', 'PRESS')
+ kmi_hack_brush_select_properties = kmi_hack_brush_select.properties
+
if use_simple_keymap:
# Simply assign a key from A-Z.
for i, (item, _, _) in enumerate(items_all):
@@ -754,6 +757,29 @@ def keymap_from_context(context, space_type):
# properties={"name": item.text},
properties=kmi_hack_properties,
)[1]
+
+ if kmi_found is None:
+ if item.data_block:
+ # PAINT_OT_brush_select
+ brush = bpy.data.brushes.get(item.data_block)
+ if brush is not None:
+ # print(dir(brush))
+ mode = context.mode
+ attr = {
+ 'SCULPT': "sculpt_tool",
+ 'VERTEX_PAINT': "vertex_paint_tool",
+ 'WEIGHT_PAINT': "weight_paint_tool",
+ 'TEXTURE_PAINT': "texture_paint_tool",
+ }[mode]
+ kmi_hack_brush_select_properties.paint_mode = mode
+ setattr(kmi_hack_brush_select_properties, attr, getattr(brush, attr))
+ kmi_found = wm.keyconfigs.find_item_from_operator(
+ idname="paint.brush_select",
+ context='INVOKE_REGION_WIN',
+ properties=kmi_hack_brush_select_properties,
+ )[1]
+ del mode, attr
+
else:
kmi_found = None