diff options
Diffstat (limited to 'source/blender/makesrna/intern/rna_sequencer_api.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_sequencer_api.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_sequencer_api.c b/source/blender/makesrna/intern/rna_sequencer_api.c index 6c8f51f97a1..e04dcd34663 100644 --- a/source/blender/makesrna/intern/rna_sequencer_api.c +++ b/source/blender/makesrna/intern/rna_sequencer_api.c @@ -447,6 +447,21 @@ static void rna_SequenceElements_pop(ID *id, Sequence *seq, ReportList *reports, WM_main_add_notifier(NC_SCENE | ND_SEQUENCER, scene); } +static void rna_Sequence_invalidate_cache_rnafunc(ID *id, Sequence *self, int type) +{ + switch (type) { + case SEQ_CACHE_STORE_RAW: + BKE_sequence_invalidate_cache_raw((Scene *)id, self); + break; + case SEQ_CACHE_STORE_PREPROCESSED: + BKE_sequence_invalidate_cache_preprocessed((Scene *)id, self); + break; + case SEQ_CACHE_STORE_COMPOSITE: + BKE_sequence_invalidate_cache_composite((Scene *)id, self); + break; + } +} + #else void RNA_api_sequence_strip(StructRNA *srna) @@ -454,6 +469,13 @@ void RNA_api_sequence_strip(StructRNA *srna) FunctionRNA *func; PropertyRNA *parm; + static const EnumPropertyItem seq_cahce_type_items[] = { + {SEQ_CACHE_STORE_RAW, "RAW", 0, "Raw", ""}, + {SEQ_CACHE_STORE_PREPROCESSED, "PREPROCESSED", 0, "Preprocessed", ""}, + {SEQ_CACHE_STORE_COMPOSITE, "COMPOSITE", 0, "Composite", ""}, + {0, NULL, 0, NULL, NULL}, + }; + func = RNA_def_function(srna, "update", "rna_Sequence_update_rnafunc"); RNA_def_function_flag(func, FUNC_USE_SELF_ID); RNA_def_function_ui_description(func, "Update the strip dimensions"); @@ -479,6 +501,12 @@ void RNA_api_sequence_strip(StructRNA *srna) RNA_def_function_flag(func, FUNC_USE_REPORTS); parm = RNA_def_pointer(func, "other", "Sequence", "Other", ""); RNA_def_parameter_flags(parm, PROP_NEVER_NULL, PARM_REQUIRED); + + func = RNA_def_function(srna, "invalidate_cache", "rna_Sequence_invalidate_cache_rnafunc"); + RNA_def_function_flag(func, FUNC_USE_SELF_ID); + RNA_def_function_ui_description(func, "Invalidate Cached images for strip and all dependant strips. "); + parm = RNA_def_enum(func, "type", seq_cahce_type_items, 0, "Type", "Cache Type"); + RNA_def_parameter_flags(parm, PROP_NEVER_NULL, PARM_REQUIRED); } void RNA_api_sequence_elements(BlenderRNA *brna, PropertyRNA *cprop) |