private void listViewIndicatorTypes_SelectedIndexChanged(object sender, EventArgs e) { if (listViewIndicatorTypes.SelectedItems.Count > 0) { string name = listViewIndicatorTypes.SelectedItems[0].Tag as string; // Just create the indicator, no need to set it up, this will be handled by the session itself. _pendingIndicator = (PlatformIndicator)IndicatorFactory.Instance.GetIndicatorCloneByName(name); foreach (string setName in GeneralHelper.EnumerableToArray <string>(_pendingIndicator.ChartSeries.OutputResultSetsPens.Keys)) { _pendingIndicator.ChartSeries.OutputResultSetsPens[setName] = Pens.WhiteSmoke; } indicatorControl1.IsReadOnly = true; indicatorControl1.SelectedObject = _pendingIndicator.ChartSeries; } else { indicatorControl1.SelectedObject = null; _pendingIndicator = null; } UpdateUI(); }
protected override void OnRemovedFromChart() { if (_indicator != null) { _indicator.IndicatorCalculatedEvent -= new Indicator.IndicatorCalculatedDelegate(_indicator_IndicatorCalculatedEvent); _indicator = null; } }
private void buttonRemove_Click(object sender, EventArgs e) { if (listViewIndicators.SelectedIndices.Count > 0) { PlatformIndicator indicator = (PlatformIndicator)listViewIndicators.SelectedItems[0].Tag; _session.DataProvider.DataBars.Indicators.RemoveIndicator(indicator); //RemoveIndicatorEvent(indicator); } UpdateUI(); }
private void listViewIndicators_SelectedIndexChanged(object sender, EventArgs e) { if (listViewIndicators.SelectedItems.Count > 0) { indicatorControl1.IsReadOnly = false; PlatformIndicator indicator = (PlatformIndicator)_session.DataProvider.DataBars.Indicators.IndicatorsArray[listViewIndicators.SelectedItems[0].Index]; this.indicatorControl1.SelectedObject = indicator.ChartSeries; } else { indicatorControl1.SelectedObject = null; } }
void control_AddIndicatorEvent(PlatformIndicator indicator, ChartPane pane) { if (pane == null) { pane = chartControl.CreateSlavePane(indicator.Name, SlaveChartPane.MasterPaneSynchronizationModeEnum.XAxis, this.Height / 4); pane.RightMouseButtonSelectionMode = ChartPane.SelectionModeEnum.HorizontalZoom; pane.Add(indicator.ChartSeries); // Establish proper Y axis values. //pane.FitDrawingSpaceToScreen(true, true); } else { pane.Add(indicator.ChartSeries); } }
private void buttonNew_Click(object sender, EventArgs e) { if (listViewIndicatorTypes.SelectedItems.Count == 0 || _pendingIndicator == null) { return; } // Get rid of the _pending indicator reference as soon as possible. PlatformIndicator pendingIndicator = _pendingIndicator; _pendingIndicator = null; _session.DataProvider.DataBars.Indicators.AddIndicator(pendingIndicator); if (AddIndicatorEvent != null) { AddIndicatorEvent(pendingIndicator, GetSelectedPane()); } UpdateUI(); //// Select the newly created indicator. //this.listViewIndicators.Items[listViewIndicators.Items.Count - 1].Selected = true; //this.listViewIndicators.Focus(); //_pendingIndicator = null; // Invoke the creation of a new _pendingIndicator //listViewIndicatorTypes_SelectedIndexChanged(sender, e); // Select the newly created indicator. if (listViewIndicators.Items.Count > 0) { listViewIndicators.Items[listViewIndicators.Items.Count - 1].Selected = true; } listViewIndicators.Focus(); }
protected void Initialize(PlatformIndicator indicator) { _indicator = indicator; _indicator.IndicatorCalculatedEvent += new Indicator.IndicatorCalculatedDelegate(_indicator_IndicatorCalculatedEvent); _indicator.UI.IndicatorUIUpdatedEvent += new PlatformIndicatorUI.IndicatorUIUpdatedDelegate(UI_IndicatorUIUpdatedEvent); }
/// <summary> /// /// </summary> public IndicatorChartSeries(string name, PlatformIndicator indicator) { Name = name; Initialize(indicator); }
void control_RemoveIndicatorEvent(PlatformIndicator indicator) { }