private void RecalculatePositions(string dockName) { Hash <string, float> panelPositions = _panelPositions[dockName]; if (panelPositions == null) { panelPositions = new Hash <string, float>(); _panelPositions[dockName] = panelPositions; } panelPositions.Clear(); PanelAlignEnum align = _pluginConfig.Docks[dockName].Alignment; DockData dock = _pluginConfig.Docks[dockName]; DockPosition pos = dock.Position; float leftOffset = dock.DockPadding.Left; float rightOffSet = dock.DockPadding.Right; List <PanelRegistration> dockPanels = _registeredPanels.Values .Where(rp => rp.Dock == dockName) .OrderBy(rp => rp.Order) .ToList(); float startX = pos.XPos; if (align == PanelAlignEnum.Right) { foreach (PanelRegistration panel in dockPanels) { startX -= panel.Width + dock.PanelPadding; } startX -= leftOffset + rightOffSet; dockPanels = dockPanels.OrderByDescending(p => p.Order).ToList(); } else if (align == PanelAlignEnum.Center) { foreach (PanelRegistration panel in dockPanels) { startX -= panel.Width / 2 + dock.PanelPadding / 2; } startX -= (leftOffset + rightOffSet) / 2; } float offset = leftOffset; foreach (PanelRegistration panel in dockPanels) { panelPositions[panel.Name] = startX + offset; offset += panel.Width + dock.PanelPadding; DrawPanel(BasePlayer.activePlayerList, panel, UpdateEnum.All); } }
public SideBarPanel(PanelAlignEnum panelAlign) { panelAlignEnum = panelAlign; BackgroundColor = Color.White; VerticalOptions = LayoutOptions.FillAndExpand; HorizontalOptions = LayoutOptions.EndAndExpand; panelLayout = new RelativeLayout(); SetLayoutFlags(panelLayout, AbsoluteLayoutFlags.All); SetLayoutBounds(panelLayout, new Rectangle(0f, 0f, 1f, 1f)); Children.Add(panelLayout); CloseContext(); }
public SideBarPanel(PanelAlignEnum panelAlign) { panelAlignEnum = panelAlign; BackgroundColor = Color.White; VerticalOptions = LayoutOptions.FillAndExpand; HorizontalOptions = LayoutOptions.EndAndExpand; panelLayout = new RelativeLayout(); var scrollPanel = new ScrollView { VerticalOptions = LayoutOptions.FillAndExpand, Content = panelLayout, }; Children.Add(scrollPanel); CloseContext(); }
public SideBarPanel(PanelAlignEnum panelAlign) { _panelAlign = panelAlign; BackgroundColor = Color.White; VerticalOptions = LayoutOptions.FillAndExpand; HorizontalOptions = LayoutOptions.EndAndExpand; panelLayout = new RelativeLayout(); var scrollPanel = new ScrollView { VerticalOptions = LayoutOptions.FillAndExpand, Content = panelLayout, }; Children.Add(scrollPanel); CloseContext(); }
public SideBarEventArgs(bool isShow, PanelAlignEnum panel) { IsShow = isShow; Panel = panel; }
public SideBarEventArgs(bool isShow, PanelAlignEnum panel) { IsShow = isShow; Panel = panel; }