/// <summary>Populate the colour drop down in the view.</summary> private void PopulateColourDropDown() { List <object> colourOptions = new List <object>(); foreach (Color colour in ColourUtilities.Colours) { colourOptions.Add(colour); } // Send colour options to view. colourOptions.AddRange(FactorNames.Select(factorName => "Vary by " + factorName)); this.seriesView.Colour.Values = colourOptions.ToArray(); if (series.FactorIndexToVaryColours == -1) { this.seriesView.Colour.SelectedValue = series.Colour; } else if (series.FactorIndexToVaryColours >= FactorNames.Count) { series.FactorIndexToVaryColours = -1; this.seriesView.Colour.SelectedValue = series.Colour; } else { this.seriesView.Colour.SelectedValue = "Vary by " + FactorNames[series.FactorIndexToVaryColours]; } }
/// <summary>Series color has been changed by the user.</summary> /// <param name="sender">Event sender</param> /// <param name="e">Event arguments</param> private void OnColourChanged(object sender, EventArgs e) { object obj = seriesView.Colour.SelectedValue; if (obj is Color) { this.SetModelProperty("Colour", obj); this.SetModelProperty("FactorIndexToVaryColours", -1); } else { List <string> colourOptions = new List <string>(); colourOptions.AddRange(FactorNames.Select(factorName => "Vary by " + factorName)); int factorIndex = colourOptions.IndexOf(obj.ToString()); this.SetModelProperty("FactorIndexToVaryColours", factorIndex); } }
/// <summary>Series marker type has been changed by the user.</summary> /// <param name="sender">Event sender</param> /// <param name="e">Event arguments</param> private void OnMarkerTypeChanged(object sender, EventArgs e) { MarkerType markerType; if (Enum.TryParse <MarkerType>(this.seriesView.MarkerType.SelectedValue, out markerType)) { this.SetModelProperty("Marker", markerType); this.SetModelProperty("FactorIndexToVaryMarkers", -1); } else { List <string> values = new List <string>(); values.AddRange(FactorNames.Select(factorName => "Vary by " + factorName)); int factorIndex = values.IndexOf(this.seriesView.MarkerType.SelectedValue); this.SetModelProperty("FactorIndexToVaryMarkers", factorIndex); } }
/// <summary>Populate the marker drop down.</summary> private void PopulateMarkerDropDown() { List <string> values = new List <string>(Enum.GetNames(typeof(MarkerType))); values.AddRange(FactorNames.Select(factorName => "Vary by " + factorName)); this.seriesView.MarkerType.Values = values.ToArray(); if (series.FactorIndexToVaryMarkers == -1) { this.seriesView.MarkerType.SelectedValue = series.Marker.ToString(); } else if (series.FactorIndexToVaryMarkers >= FactorNames.Count) { series.FactorIndexToVaryMarkers = -1; this.seriesView.MarkerType.SelectedValue = series.Marker.ToString(); } else { this.seriesView.MarkerType.SelectedValue = "Vary by " + FactorNames[series.FactorIndexToVaryMarkers]; } }