Fix T99216: RNA startdisp and enddisp return unreliable values
Since 7afcfe111a `startdisp` and `enddisp` fields are used as runtime
position storage for effect strips exclusively.
Use getter functon to return handle position and make properties read
only.
This commit is contained in:
@@ -312,6 +312,16 @@ static void rna_Sequence_frame_change_update(Main *UNUSED(bmain),
|
|||||||
do_sequence_frame_change_update(scene, (Sequence *)ptr->data);
|
do_sequence_frame_change_update(scene, (Sequence *)ptr->data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int rna_Sequence_frame_final_start_get(PointerRNA *ptr)
|
||||||
|
{
|
||||||
|
return SEQ_time_left_handle_frame_get((Sequence *)ptr->data);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int rna_Sequence_frame_final_end_get(PointerRNA *ptr)
|
||||||
|
{
|
||||||
|
return SEQ_time_right_handle_frame_get((Sequence *)ptr->data);
|
||||||
|
}
|
||||||
|
|
||||||
static void rna_Sequence_start_frame_set(PointerRNA *ptr, int value)
|
static void rna_Sequence_start_frame_set(PointerRNA *ptr, int value)
|
||||||
{
|
{
|
||||||
Sequence *seq = (Sequence *)ptr->data;
|
Sequence *seq = (Sequence *)ptr->data;
|
||||||
@@ -1971,7 +1981,8 @@ static void rna_def_sequence(BlenderRNA *brna)
|
|||||||
|
|
||||||
prop = RNA_def_property(srna, "frame_final_start", PROP_INT, PROP_TIME);
|
prop = RNA_def_property(srna, "frame_final_start", PROP_INT, PROP_TIME);
|
||||||
RNA_def_property_int_sdna(prop, NULL, "startdisp");
|
RNA_def_property_int_sdna(prop, NULL, "startdisp");
|
||||||
RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
|
RNA_def_property_int_funcs(prop, "rna_Sequence_frame_final_start_get", NULL, NULL);
|
||||||
|
RNA_def_property_clear_flag(prop, PROP_EDITABLE | PROP_ANIMATABLE);
|
||||||
RNA_def_property_ui_text(
|
RNA_def_property_ui_text(
|
||||||
prop,
|
prop,
|
||||||
"Start Frame",
|
"Start Frame",
|
||||||
@@ -1985,7 +1996,8 @@ static void rna_def_sequence(BlenderRNA *brna)
|
|||||||
|
|
||||||
prop = RNA_def_property(srna, "frame_final_end", PROP_INT, PROP_TIME);
|
prop = RNA_def_property(srna, "frame_final_end", PROP_INT, PROP_TIME);
|
||||||
RNA_def_property_int_sdna(prop, NULL, "enddisp");
|
RNA_def_property_int_sdna(prop, NULL, "enddisp");
|
||||||
RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);
|
RNA_def_property_int_funcs(prop, "rna_Sequence_frame_final_end_get", NULL, NULL);
|
||||||
|
RNA_def_property_clear_flag(prop, PROP_EDITABLE | PROP_ANIMATABLE);
|
||||||
RNA_def_property_ui_text(
|
RNA_def_property_ui_text(
|
||||||
prop, "End Frame", "End frame displayed in the sequence editor after offsets are applied");
|
prop, "End Frame", "End frame displayed in the sequence editor after offsets are applied");
|
||||||
/* overlap tests and calc_seq_disp */
|
/* overlap tests and calc_seq_disp */
|
||||||
|
|||||||
Reference in New Issue
Block a user