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:
-rw-r--r--release/scripts/startup/bl_ui/space_sequencer.py2
-rw-r--r--source/blender/editors/space_sequencer/sequencer_select.c20
2 files changed, 18 insertions, 4 deletions
diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py
index d3618d752dc..ba75da1444b 100644
--- a/release/scripts/startup/bl_ui/space_sequencer.py
+++ b/release/scripts/startup/bl_ui/space_sequencer.py
@@ -143,7 +143,7 @@ class SEQUENCER_MT_select(Menu):
layout.operator("sequencer.select_handles", text="Left Handle").side = 'LEFT'
layout.operator("sequencer.select_handles", text="Right Handle").side = 'RIGHT'
layout.separator()
- layout.operator_menu_enum("object.select_grouped", "type", text="Grouped")
+ layout.operator_menu_enum("sequencer.select_grouped", "type", text="Grouped")
layout.operator("sequencer.select_linked")
layout.operator("sequencer.select_all").action = 'TOGGLE'
layout.operator("sequencer.select_all").action = 'INVERT'
diff --git a/source/blender/editors/space_sequencer/sequencer_select.c b/source/blender/editors/space_sequencer/sequencer_select.c
index 00c2caea258..3bef389f2de 100644
--- a/source/blender/editors/space_sequencer/sequencer_select.c
+++ b/source/blender/editors/space_sequencer/sequencer_select.c
@@ -929,7 +929,7 @@ static EnumPropertyItem sequencer_prop_select_grouped_types[] = {
#define SEQ_IS_EFFECT(_seq) (_seq->type & SEQ_EFFECT)
-#define SEQ_USE_DATA(_seq) (_seq->type == SEQ_SCENE || SEQ_HAS_PATH(_seq))
+#define SEQ_USE_DATA(_seq) (ELEM(_seq->type, SEQ_SCENE, SEQ_MOVIECLIP) || SEQ_HAS_PATH(_seq))
static short select_grouped_type(Editing *ed, Sequence *actseq)
{
@@ -985,7 +985,6 @@ static short select_grouped_data(Editing *ed, Sequence *actseq)
{
Sequence *seq;
short changed = FALSE;
- Scene *sce = actseq->scene;
char *dir = actseq->strip ? actseq->strip->dir : NULL;
if (!SEQ_USE_DATA(actseq))
@@ -1000,7 +999,8 @@ static short select_grouped_data(Editing *ed, Sequence *actseq)
}
SEQ_END;
}
- else {
+ else if (actseq->type == SEQ_SCENE) {
+ Scene *sce = actseq->scene;
SEQP_BEGIN(ed, seq) {
if (seq->type == SEQ_SCENE && seq->scene == sce) {
seq->flag |= SELECT;
@@ -1009,6 +1009,16 @@ static short select_grouped_data(Editing *ed, Sequence *actseq)
}
SEQ_END;
}
+ else if (actseq->type == SEQ_MOVIECLIP) {
+ MovieClip *clip = actseq->clip;
+ SEQP_BEGIN(ed, seq) {
+ if (seq->type == SEQ_MOVIECLIP && seq->clip == clip) {
+ seq->flag |= SELECT;
+ changed = TRUE;
+ }
+ }
+ SEQ_END;
+ }
return changed;
}
@@ -1117,6 +1127,10 @@ static short select_grouped_effect_link(Editing *ed, Sequence *actseq)
return changed;
}
+#undef SEQ_IS_SOUND
+#undef SEQ_IS_EFFECT
+#undef SEQ_USE_DATA
+
static int sequencer_select_grouped_exec(bContext *C, wmOperator *op)
{
Scene *scene = CTX_data_scene(C);