public void Push(IBladeRenderer renderer, string title = "") { var blade = new Blade(this, renderer, _stack.Count(), _panels[_stack.Count()], title, _containers[_stack.Count()]); _stack.Push(blade); blade.Refresh(); }
public void OpenSideBlade(IBladeRenderer renderer, Action <object> onClose = null, string title = "") { if (_sideBlade != null) { _sideBlade?.Clear(); _sideBlade = null; _overlay.Hide(); } _overlay.Show(); _sideBladeOnClose = onClose; _divSideBlade.SetVisibility(true); _sideBlade = new Blade(this, renderer, -1, _sideBladeContainer, title, null); _sideBlade.Refresh(); }
public void CloseSideBlade(object result = null, bool refresh = false) { _divSideBlade.SetVisibility(false); _overlay.Hide(); _sideBlade?.Clear(); _sideBlade = null; if (_sideBladeOnClose != null) { _sideBladeOnClose(result); } else if (refresh) { _stack.Peek().Refresh(); } _sideBladeOnClose = null; }
public object Render(Blade blade) { var searchBox = new SearchBox(); var refreshContainer = new RefreshPanel(new[] { searchBox }, () => { return(new Menu( _options.Where(e => e.Label.StartsWith(searchBox.Text)).Select(e => new MenuButton(e.Label, (_) => { _onSelect(e); })).ToArray() )); }); return(new HeaderPanel( Layout.Fill().Middle().Add(searchBox, "1fr").Horizontal(), refreshContainer )); }
public object Render(Blade blade) { return(_render(blade)); }
public object Render(Blade blade) { return(new Menu(_rootNode.Children.Select(e => e.Render(blade)).ToArray())); }