public RollPane() { RootWidget = new Frame { Id = nameof(RollPane), Layout = new StackLayout { VerticallySizeable = true }, ClipChildren = ClipMethod.ScissorTest, HitTestTarget = true, Input = { AcceptMouseThroughDescendants = true }, }; ContentWidget = new Widget { Padding = new Thickness { Top = 1, Bottom = 1 }, Width = RootWidget.Width, Height = 0, Anchors = Anchors.LeftRight, Layout = new VBoxLayout { Spacing = TimelineMetrics.RowSpacing }, Presenter = new SyncDelegatePresenter <Node>(RenderBackground) }; OverlayWidget = new Widget { Presenter = new SyncDelegatePresenter <Widget>(w => OnRenderOverlay?.Invoke(w)) }; RootWidget.AddNode(OverlayWidget); RootWidget.AddNode(ContentWidget); ContentWidget.Updating += _ => ContentWidget.Y = -Timeline.Instance.Offset.Y; RootWidget.Gestures.Add(new ClickGesture(1, ShowContextMenu)); }
public RollPane() { RootWidget = new Frame { Id = nameof(RollPane), Layout = new StackLayout { VerticallySizeable = true }, MinWidth = TimelineMetrics.ToolbarMinWidth, ClipChildren = ClipMethod.ScissorTest, HitTestTarget = true, }; ContentWidget = new Widget { Padding = new Thickness { Top = 1, Bottom = 1 }, Width = RootWidget.Width, Height = 0, Anchors = Anchors.LeftRight, Layout = new VBoxLayout { Spacing = TimelineMetrics.RowSpacing }, Presenter = new SyncDelegatePresenter <Node>(RenderBackground) }; OverlayWidget = new Widget { Presenter = new SyncDelegatePresenter <Widget>(w => OnRenderOverlay?.Invoke(w)) }; RootWidget.AddNode(OverlayWidget); RootWidget.AddNode(ContentWidget); ContentWidget.Updating += delta => ContentWidget.Y = -Timeline.Instance.Offset.Y; }