/// <summary> /// /// </summary> void InitializeElements() { InitializeComponent(); this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true); this.SetStyle(ControlStyles.AllPaintingInWmPaint, true); this.SetStyle(ControlStyles.UserPaint, true); // Establishing a brand new state. _stateId = Guid.NewGuid(); _drawingSpace = new RectangleF(0, 0, 0, 0); _drawingSpaceDisplayLimit = _drawingSpace; _actualSpaceGrid.Visible = false; _actualSpaceGrid.Pen = new Pen(Color.Gray); _yAxisLabelsPosition = YAxisLabelPosition.Right; _actualDrawingSpaceAreaMarginLeft = 15 + _additionalDrawingSpaceAreaMarginLeft; _actualDrawingSpaceAreaMarginTop = 60; _actualDrawingSpaceAreaMarginRight = 45 + _additionalDrawingSpaceAreaMarginRight; _actualDrawingSpaceAreaMarginBottom = 20; _resources = new ComponentResourceManager(typeof(ChartPane)); _seriesTypeDynamicContextMenu = new ContextMenuStrip(); _chartContextMenu = new ContextMenuStrip(); _chartContextMenu.Opening += new CancelEventHandler(_chartContextMenu_Opening); ToolStripMenuItem item; item = new ToolStripMenuItem("Zoom In", ((Image)(_resources.GetObject("imageZoomIn"))), new EventHandler(ZoomInChartContextMenuItem_Click)); _chartContextMenu.Items.Add(item); item = new ToolStripMenuItem("Zoom Out", ((Image)(_resources.GetObject("imageZoomOut"))), new EventHandler(ZoomOutChartContextMenuItem_Click)); _chartContextMenu.Items.Add(item); _chartContextMenu.Items.Add(new ToolStripSeparator()); item = new ToolStripMenuItem("Fit To Screen", ((Image)(_resources.GetObject("imageLayoutCenter"))), new EventHandler(FitToScreenChartContextMenuItem_Click)); _chartContextMenu.Items.Add(item); item = new ToolStripMenuItem("Fit Horizontal", ((Image)(_resources.GetObject("imageLayoutHorizontal"))), new EventHandler(FitHorizontalChartContextMenuItem_Click)); _chartContextMenu.Items.Add(item); item = new ToolStripMenuItem("Fit Vertical", ((Image)(_resources.GetObject("imageLayoutVertical"))), new EventHandler(FitVerticalChartContextMenuItem_Click)); _chartContextMenu.Items.Add(item); _chartContextMenu.Items.Add(new ToolStripSeparator()); ToolStripMenuItem selectionContextMenuItem = new ToolStripMenuItem("Selection"); foreach(string name in Enum.GetNames(typeof(SelectionModeEnum))) { ToolStripItem subItem = selectionContextMenuItem.DropDownItems.Add(name, null, new EventHandler(SelectionChartContextMenuItem_Click)); subItem.Tag = name; } _chartContextMenu.Items.Add(selectionContextMenuItem); _chartContextMenu.Items.Add(new ToolStripSeparator()); ToolStripMenuItem scrollContextMenuItem = new ToolStripMenuItem("Scroll"); foreach(string name in Enum.GetNames(typeof(ScrollModeEnum))) { ToolStripItem subItem = scrollContextMenuItem.DropDownItems.Add(name, null, new EventHandler(ScrollChartContextMenuItem_Click)); subItem.Tag = name; } _chartContextMenu.Items.Add(scrollContextMenuItem); _chartContextMenu.Items.Add(new ToolStripSeparator()); ToolStripMenuItem appearanceContextMenuItem = new ToolStripMenuItem("Appearance"); foreach(string name in Enum.GetNames(typeof(AppearanceSchemeEnum))) { ToolStripItem subItem = appearanceContextMenuItem.DropDownItems.Add(GeneralHelper.SeparateCapitalLetters(name), null, new EventHandler(AppearanceChartContextMenuItem_Click)); subItem.Tag = name; } _chartContextMenu.Items.Add(appearanceContextMenuItem); _chartContextMenu.Items.Add(new ToolStripSeparator()); _autoScrollToEndContextMenuItem = new ToolStripMenuItem("Auto Scroll to End", ((Image)(_resources.GetObject("imageScrollToEnd"))), new EventHandler(AutoScrollToEndChartContextMenuItem_Click)); _autoScrollToEndContextMenuItem.CheckOnClick = true; _autoScrollToEndContextMenuItem.Checked = this.AutoScrollToEnd; _chartContextMenu.Items.Add(_autoScrollToEndContextMenuItem); _crossHairContextMenuItem = new ToolStripMenuItem("Crosshair", ((Image)(_resources.GetObject("imageTarget"))), new EventHandler(CrosshairChartContextMenuItem_Click)); _crossHairContextMenuItem.CheckOnClick = true; _crossHairContextMenuItem.Checked = false; _chartContextMenu.Items.Add(_crossHairContextMenuItem); _labelsContextMenuItem = new ToolStripMenuItem("Labels", ((Image)(_resources.GetObject("imageText"))), new EventHandler(LabelsChartContextMenuItem_Click)); _labelsContextMenuItem.CheckOnClick = true; _labelsContextMenuItem.Checked = true; _chartContextMenu.Items.Add(_labelsContextMenuItem); _limitViewContextMenuItem = new ToolStripMenuItem("Limit View", ((Image)(_resources.GetObject("imageElementSelection"))), new EventHandler(LimitViewChartContextMenuItem_Click)); _limitViewContextMenuItem.CheckOnClick = true; _limitViewContextMenuItem.Checked = true; _chartContextMenu.Items.Add(_limitViewContextMenuItem); _chartContextMenu.Items.Add(new ToolStripSeparator()); _seriesPropertiesContextMenuItem = new ToolStripMenuItem("Series Properties", null); _chartContextMenu.Items.Add(_seriesPropertiesContextMenuItem); _chartContextMenu.Items.Add(new ToolStripSeparator()); _selectedObjectsContextMenuItem = new ToolStripMenuItem("Selected Object(s) Properties"); _selectedObjectsContextMenuItem.DropDownItemClicked += new ToolStripItemClickedEventHandler(_selectedObjectsContextMenuItem_DropDownItemClicked); _chartContextMenu.Items.Add(_selectedObjectsContextMenuItem); _customObjectsManager = new CustomObjectsManager(); _customObjectsManager.Initialize(this); _customObjectDrawingImage = ((Image)(_resources.GetObject("imageBrush"))); }
public void RestoreState(SerializationInfoEx info, bool restoreCustomObjects) { this.Name = info.GetString("Name"); this.Height = info.GetInt32("Height"); _stateId = info.GetValue<Guid>("_stateId"); _titleFont = info.GetValue<Font>("_titleFont"); _titleFontBrush = info.GetValue<Brush>("_titleFontBrush"); _fill = info.GetValue<Brush>("_fill"); _axisLabelsFont = info.GetValue<Font>("_axisLabelsFont"); _xAxisLabelsFontBrush = info.GetValue<Brush>("_xAxisLabelsFontBrush"); _yAxisLabelsPosition = info.GetValue<YAxisLabelPosition>("_yAxisLabelsPosition"); _yAxisLabelsFontBrush = info.GetValue<Brush>("_yAxisLabelsFontBrush"); _xAxisLabelsFormat = info.GetString("_xAxisLabelsFormat"); _yAxisLabelsFormat = info.GetString("_yAxisLabelsFormat"); _labelsFont = info.GetValue<Font>("_labelsFont"); _labelsFontBrush = info.GetValue<Brush>("_labelsFontBrush"); _labelsFill = info.GetValue<Brush>("_labelsFill"); _labelsTopMargin = info.GetSingle("_labelsTopMargin"); _labelsMargin = info.GetSingle("_labelsMargin"); _showSeriesLabels = info.GetBoolean("_showSeriesLabels"); _showClippingRectangle = info.GetBoolean("_showClippingRectangle"); _unitUnificationOptimizationEnabled = info.GetBoolean("_unitUnificationOptimizationEnabled"); _smoothingMode = info.GetValue<SmoothingMode>("_smoothingMode"); _defaultAbsoluteSelectionMargin = info.GetSingle("_defaultAbsoluteSelectionMargin"); _scrollMode = info.GetValue<ScrollModeEnum>("_scrollMode"); _rightMouseButtonSelectionMode = info.GetValue<SelectionModeEnum>("_rightMouseButtonSelectionMode"); _selectionPen = info.GetValue<Pen>("_selectionPen"); _selectionFill = info.GetValue<Brush>("_selectionFill"); _additionalDrawingSpaceAreaMarginLeft = info.GetInt32("_additionalDrawingSpaceAreaMarginLeft"); _additionalDrawingSpaceAreaMarginRight = info.GetInt32("_additionalDrawingSpaceAreaMarginRight"); _actualDrawingSpaceAreaMarginLeft = info.GetInt32("_actualDrawingSpaceAreaMarginLeft"); _actualDrawingSpaceAreaMarginTop = info.GetInt32("_actualDrawingSpaceAreaMarginTop"); _actualDrawingSpaceAreaMarginRight = info.GetInt32("_actualDrawingSpaceAreaMarginRight"); _actualDrawingSpaceAreaMarginBottom = info.GetInt32("_actualDrawingSpaceAreaMarginBottom"); _actualDrawingSpaceAreaBorderPen = info.GetValue<Pen>("_actualDrawingSpaceAreaBorderPen"); _actualDrawingSpaceAreaFill = info.GetValue<Brush>("_actualDrawingSpaceAreaFill"); _limitedView = info.GetBoolean("_limitedView"); _seriesItemWidth = info.GetSingle("_seriesItemWidth"); _seriesItemMargin = info.GetSingle("_seriesItemMargin"); if (restoreCustomObjects && info.GetBoolean("customObjectsSaved")) {// Restore custom objects. _customObjectsManager.RestoreState(info); } else {// New clear custom objects. _customObjectsManager.Clear(); } _actualSpaceGrid = info.GetValue<ChartGrid>("_actualSpaceGrid"); _drawingSpaceGrid = info.GetValue<ChartGrid>("_drawingSpaceGrid"); _chartName = info.GetString("_chartName"); _appearanceScheme = info.GetValue<AppearanceSchemeEnum>("_appearanceScheme"); _autoScrollToEnd = info.GetBoolean("_autoScrollToEnd"); if (info.ContainsValue("_maximumXZoom")) { _maximumXZoom = info.GetSingle("_maximumXZoom"); } else { _maximumXZoom = null; } _xAxisLabelSpacing = info.GetSingle("_xAxisLabelSpacing"); if (AppearanceSchemeChangedEvent != null) { AppearanceSchemeChangedEvent(this, _appearanceScheme); } }