Example #1
0
        /// <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?");
            }
        }
Example #2
0
        /// <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);
        }