Tracking: Move Lock Selection to an own operator
There are no functional changes as far as users are concerned, just allows to mark operator as safe to be run from a locked interface.
This commit is contained in:
@@ -2661,8 +2661,7 @@ def km_clip_editor(params):
|
||||
("clip.keyframe_delete", {"type": 'I', "value": 'PRESS', "alt": True}, None),
|
||||
("clip.join_tracks", {"type": 'J', "value": 'PRESS', "ctrl": True}, None),
|
||||
op_menu("CLIP_MT_tracking_context_menu", params.context_menu_event),
|
||||
("wm.context_toggle", {"type": 'L', "value": 'PRESS'},
|
||||
{"properties": [("data_path", 'space_data.lock_selection')]}),
|
||||
("clip.lock_selection_toggle", {"type": 'L', "value": 'PRESS'}, None),
|
||||
("wm.context_toggle", {"type": 'D', "value": 'PRESS', "alt": True},
|
||||
{"properties": [("data_path", 'space_data.show_disabled')]}),
|
||||
("wm.context_toggle", {"type": 'S', "value": 'PRESS', "alt": True},
|
||||
|
||||
@@ -108,6 +108,8 @@ void CLIP_OT_set_scene_frames(wmOperatorType *ot);
|
||||
|
||||
void CLIP_OT_cursor_set(struct wmOperatorType *ot);
|
||||
|
||||
void CLIP_OT_lock_selection_toggle(struct wmOperatorType *ot);
|
||||
|
||||
/* clip_toolbar.c */
|
||||
struct ARegion *ED_clip_has_properties_region(struct ScrArea *sa);
|
||||
|
||||
|
||||
@@ -1748,6 +1748,31 @@ void CLIP_OT_cursor_set(wmOperatorType *ot)
|
||||
10.0f);
|
||||
}
|
||||
|
||||
/********************** Toggle lock to selection operator *********************/
|
||||
|
||||
static int lock_selection_togglee_exec(bContext *C, wmOperator *UNUSED(op))
|
||||
{
|
||||
SpaceClip *space_clip = CTX_wm_space_clip(C);
|
||||
space_clip->flag ^= SC_LOCK_SELECTION;
|
||||
WM_event_add_notifier(C, NC_SPACE | ND_SPACE_CLIP, NULL);
|
||||
return OPERATOR_FINISHED;
|
||||
}
|
||||
|
||||
void CLIP_OT_lock_selection_toggle(wmOperatorType *ot)
|
||||
{
|
||||
/* identifiers */
|
||||
ot->name = "Toggle Lock Selection";
|
||||
ot->description = "Toggle Lock Selection option of the current clip editor";
|
||||
ot->idname = "CLIP_OT_lock_selection_toggle";
|
||||
|
||||
/* api callbacks */
|
||||
ot->poll = ED_space_clip_poll;
|
||||
ot->exec = lock_selection_togglee_exec;
|
||||
|
||||
/* flags */
|
||||
ot->flag = OPTYPE_LOCK_BYPASS;
|
||||
}
|
||||
|
||||
/********************** macros *********************/
|
||||
|
||||
void ED_operatormacros_clip(void)
|
||||
|
||||
@@ -452,6 +452,7 @@ static void clip_operatortypes(void)
|
||||
WM_operatortype_append(CLIP_OT_prefetch);
|
||||
WM_operatortype_append(CLIP_OT_set_scene_frames);
|
||||
WM_operatortype_append(CLIP_OT_cursor_set);
|
||||
WM_operatortype_append(CLIP_OT_lock_selection_toggle);
|
||||
|
||||
/* ** tracking_ops.c ** */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user