VSE: Add sample tool

This tool is set as default tool, so default action on click doesn't have pernament effect.

Reviewed By: campbellbarton

Differential Revision: D7064
This commit is contained in:
Richard Antalik 2020-04-13 00:28:27 +02:00
parent c456671b53
commit 68ba6378b5
3 changed files with 29 additions and 1 deletions

View File

@ -6514,6 +6514,16 @@ def km_sequencer_editor_tool_select_box(params):
)
def km_sequencer_editor_tool_generic_sample(params):
return (
"Sequencer Tool: Sample",
{"space_type": 'SEQUENCE_EDITOR', "region_type": 'WINDOW'},
{"items": [
("sequencer.sample", {"type": params.tool_mouse, "value": 'PRESS'}, None),
]},
)
def km_sequencer_editor_tool_blade(_params):
return (
"Sequencer Tool: Blade",
@ -6758,6 +6768,7 @@ def generate_keymaps(params=None):
km_sequencer_editor_tool_select(params),
km_sequencer_editor_tool_select_box(params),
km_sequencer_editor_tool_blade(params),
km_sequencer_editor_tool_generic_sample(params),
]
# ------------------------------------------------------------------------------

View File

@ -1807,6 +1807,21 @@ class _defs_sequencer_generic:
draw_settings=draw_settings,
)
@ToolDef.from_fn
def sample():
def draw_settings(_context, layout, tool):
props = tool.operator_properties("sequencer.sample")
return dict(
idname="builtin.sample",
label="Sample",
description=(
"Sample pixel values under the cursor"
),
icon="ops.paint.weight_sample", # XXX, needs own icon.
keymap="Sequencer Tool: Sample",
draw_settings=draw_settings,
)
class _defs_sequencer_select:
@ToolDef.from_fn
@ -2348,6 +2363,7 @@ class SEQUENCER_PT_tools_active(ToolSelectPanelHelper, Panel):
None: [
],
'PREVIEW': [
_defs_sequencer_generic.sample,
*_tools_annotate,
],
'SEQUENCER': [
@ -2355,6 +2371,7 @@ class SEQUENCER_PT_tools_active(ToolSelectPanelHelper, Panel):
_defs_sequencer_generic.blade,
],
'SEQUENCER_PREVIEW': [
_defs_sequencer_generic.sample,
*_tools_select,
*_tools_annotate,
_defs_sequencer_generic.blade,

View File

@ -707,7 +707,7 @@ static const char *toolsystem_default_tool(const bToolKey *tkey)
case SEQ_VIEW_SEQUENCE:
return "builtin.select";
case SEQ_VIEW_PREVIEW:
return "builtin.annotate";
return "builtin.sample";
case SEQ_VIEW_SEQUENCE_PREVIEW:
return "builtin.select";
}