View2d: bring back 2.4x option to lock time for 2d views
This commit is contained in:
@@ -1147,6 +1147,7 @@ class CLIP_MT_view(Menu):
|
|||||||
layout.operator_context = 'INVOKE_DEFAULT'
|
layout.operator_context = 'INVOKE_DEFAULT'
|
||||||
|
|
||||||
layout.prop(sc, "show_seconds")
|
layout.prop(sc, "show_seconds")
|
||||||
|
layout.prop(sc, "show_locked_time")
|
||||||
layout.separator()
|
layout.separator()
|
||||||
|
|
||||||
layout.separator()
|
layout.separator()
|
||||||
|
@@ -173,6 +173,7 @@ class DOPESHEET_MT_view(Menu):
|
|||||||
layout.prop(st, "use_marker_sync")
|
layout.prop(st, "use_marker_sync")
|
||||||
|
|
||||||
layout.prop(st, "show_seconds")
|
layout.prop(st, "show_seconds")
|
||||||
|
layout.prop(st, "show_locked_time")
|
||||||
|
|
||||||
layout.separator()
|
layout.separator()
|
||||||
layout.operator("anim.previewrange_set")
|
layout.operator("anim.previewrange_set")
|
||||||
|
@@ -105,6 +105,7 @@ class GRAPH_MT_view(Menu):
|
|||||||
layout.prop(st, "use_only_selected_keyframe_handles")
|
layout.prop(st, "use_only_selected_keyframe_handles")
|
||||||
|
|
||||||
layout.prop(st, "show_seconds")
|
layout.prop(st, "show_seconds")
|
||||||
|
layout.prop(st, "show_locked_time")
|
||||||
|
|
||||||
layout.separator()
|
layout.separator()
|
||||||
layout.operator("anim.previewrange_set")
|
layout.operator("anim.previewrange_set")
|
||||||
|
@@ -74,6 +74,7 @@ class NLA_MT_view(Menu):
|
|||||||
layout.prop(st, "show_frame_indicator")
|
layout.prop(st, "show_frame_indicator")
|
||||||
|
|
||||||
layout.prop(st, "show_seconds")
|
layout.prop(st, "show_seconds")
|
||||||
|
layout.prop(st, "show_locked_time")
|
||||||
|
|
||||||
layout.prop(st, "show_strip_curves")
|
layout.prop(st, "show_strip_curves")
|
||||||
|
|
||||||
|
@@ -126,6 +126,7 @@ class TIME_MT_view(Menu):
|
|||||||
st = context.space_data
|
st = context.space_data
|
||||||
|
|
||||||
layout.prop(st, "show_seconds")
|
layout.prop(st, "show_seconds")
|
||||||
|
layout.prop(st, "show_locked_time")
|
||||||
layout.operator("time.view_all")
|
layout.operator("time.view_all")
|
||||||
|
|
||||||
layout.separator()
|
layout.separator()
|
||||||
|
@@ -289,6 +289,55 @@ static void rna_area_region_from_regiondata(PointerRNA *ptr, ScrArea **r_sa, ARe
|
|||||||
area_region_from_regiondata(sc, regiondata, r_sa, r_ar);
|
area_region_from_regiondata(sc, regiondata, r_sa, r_ar);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int rna_Space_view2d_sync_get(PointerRNA *ptr)
|
||||||
|
{
|
||||||
|
ScrArea *sa;
|
||||||
|
ARegion *ar;
|
||||||
|
|
||||||
|
sa = rna_area_from_space(ptr); /* can be NULL */
|
||||||
|
ar = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW);
|
||||||
|
if (ar) {
|
||||||
|
View2D *v2d = &ar->v2d;
|
||||||
|
return (v2d->flag & V2D_VIEWSYNC_SCREEN_TIME) != 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void rna_Space_view2d_sync_set(PointerRNA *ptr, int value)
|
||||||
|
{
|
||||||
|
ScrArea *sa;
|
||||||
|
ARegion *ar;
|
||||||
|
|
||||||
|
sa = rna_area_from_space(ptr); /* can be NULL */
|
||||||
|
ar = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW);
|
||||||
|
if (ar) {
|
||||||
|
View2D *v2d = &ar->v2d;
|
||||||
|
if (value) {
|
||||||
|
v2d->flag |= V2D_VIEWSYNC_SCREEN_TIME;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
v2d->flag &= ~V2D_VIEWSYNC_SCREEN_TIME;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void rna_Space_view2d_sync_update(Main *UNUSED(bmain), Scene *UNUSED(scene), PointerRNA *ptr)
|
||||||
|
{
|
||||||
|
ScrArea *sa;
|
||||||
|
ARegion *ar;
|
||||||
|
|
||||||
|
sa = rna_area_from_space(ptr); /* can be NULL */
|
||||||
|
ar = BKE_area_find_region_type(sa, RGN_TYPE_WINDOW);
|
||||||
|
|
||||||
|
if (ar) {
|
||||||
|
bScreen *sc = (bScreen *)ptr->id.data;
|
||||||
|
View2D *v2d = &ar->v2d;
|
||||||
|
|
||||||
|
UI_view2d_sync(sc, sa, v2d, V2D_LOCK_SET);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static PointerRNA rna_CurrentOrientation_get(PointerRNA *ptr)
|
static PointerRNA rna_CurrentOrientation_get(PointerRNA *ptr)
|
||||||
{
|
{
|
||||||
Scene *scene = ((bScreen *)ptr->id.data)->scene;
|
Scene *scene = ((bScreen *)ptr->id.data)->scene;
|
||||||
@@ -1320,6 +1369,12 @@ static void rna_def_space(BlenderRNA *brna)
|
|||||||
RNA_def_property_enum_items(prop, space_type_items);
|
RNA_def_property_enum_items(prop, space_type_items);
|
||||||
RNA_def_property_clear_flag(prop, PROP_EDITABLE);
|
RNA_def_property_clear_flag(prop, PROP_EDITABLE);
|
||||||
RNA_def_property_ui_text(prop, "Type", "Space data type");
|
RNA_def_property_ui_text(prop, "Type", "Space data type");
|
||||||
|
|
||||||
|
/* access to V2D_VIEWSYNC_SCREEN_TIME */
|
||||||
|
prop = RNA_def_property(srna, "show_locked_time", PROP_BOOLEAN, PROP_NONE);
|
||||||
|
RNA_def_property_boolean_funcs(prop, "rna_Space_view2d_sync_get", "rna_Space_view2d_sync_set");
|
||||||
|
RNA_def_property_ui_text(prop, "Lock Time to Other Windows", "");
|
||||||
|
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_TIME, "rna_Space_view2d_sync_update");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* for all spaces that use a mask */
|
/* for all spaces that use a mask */
|
||||||
|
Reference in New Issue
Block a user