/// <summary> /// Sets a custom dock area to the specified widget and colors its background accordingly /// </summary> /// <param name="widget"></param> /// <param name="dockArea"></param> private void SetDockArea(NWidget widget, ENDockArea dockArea) { NDockLayout.SetDockArea(widget, dockArea); switch (dockArea) { case ENDockArea.Bottom: widget.BackgroundFill = new NColorFill(new NColor(0, 162, 232)); break; case ENDockArea.Center: widget.BackgroundFill = new NColorFill(new NColor(239, 228, 176)); break; case ENDockArea.Left: widget.BackgroundFill = new NColorFill(new NColor(34, 177, 76)); break; case ENDockArea.Right: widget.BackgroundFill = new NColorFill(new NColor(163, 73, 164)); break; case ENDockArea.Top: widget.BackgroundFill = new NColorFill(new NColor(237, 28, 36)); break; default: throw new Exception("New ENDockArea?"); } }
/// <summary> /// Creates the default docked widget for this example, that is docked to the specified area. /// </summary> /// <param name="dockArea"></param> /// <returns></returns> private NWidget CreateDockedWidget(ENDockArea dockArea) { NLabel label = new NLabel(dockArea.ToString() + "(" + m_DockPanel.Count.ToString() + ")"); label.HorizontalPlacement = ENHorizontalPlacement.Center; label.VerticalPlacement = ENVerticalPlacement.Center; NWidget widget = new NContentHolder(label); widget.Border = NBorder.CreateFilledBorder(NColor.Black); widget.BorderThickness = new NMargins(1); SetDockArea(widget, dockArea); return(widget); }
void OnLegendDockAreaComboBoxSelectedIndexChanged(NValueChangeEventArgs arg) { ENDockArea dockArea = (ENDockArea)((NComboBox)arg.TargetNode).SelectedIndex; NLegend legend = m_ChartView.Surface.Legends[0]; // adjust the legend layout / position accordingly to the dock area switch (dockArea) { case ENDockArea.Left: legend.ExpandMode = ENLegendExpandMode.RowsOnly; legend.VerticalPlacement = ENVerticalPlacement.Center; break; case ENDockArea.Top: legend.ExpandMode = ENLegendExpandMode.ColsOnly; legend.HorizontalPlacement = ENHorizontalPlacement.Center; break; case ENDockArea.Right: legend.ExpandMode = ENLegendExpandMode.RowsOnly; legend.VerticalPlacement = ENVerticalPlacement.Center; break; case ENDockArea.Bottom: legend.ExpandMode = ENLegendExpandMode.ColsOnly; legend.HorizontalPlacement = ENHorizontalPlacement.Center; break; case ENDockArea.Center: legend.ExpandMode = ENLegendExpandMode.RowsOnly; legend.HorizontalPlacement = ENHorizontalPlacement.Center; legend.VerticalPlacement = ENVerticalPlacement.Center; break; } NDockLayout.SetDockArea(legend, dockArea); }