private void BtnAddClick(object sender, EventArgs e) { var dlg = new ChooseIndicatorDialog(owner); if (dlg.ShowDialog() != DialogResult.OK) { BuildView(); return; } if (string.IsNullOrEmpty(dlg.SelectedIndiName)) { return; } var selectedTypeName = dlg.SelectedIndiName; foreach (var tp in PluginManager.Instance.typeIndicators) { var indnameattr = (DisplayNameAttribute)Attribute.GetCustomAttribute(tp, typeof(DisplayNameAttribute)); if (indnameattr == null) { continue; } if (selectedTypeName != indnameattr.DisplayName) { continue; } var ind = (IChartIndicator)Activator.CreateInstance(tp); if (onIndicatorAdd == null) { return; } onIndicatorAdd(ind); break; } BuildView(); UpdateUserInterface(); EditIndicator(fastGrid.rows.Count - 1); }
private void BtnAddClick(object sender, EventArgs e) { var dlg = new ChooseIndicatorDialog(owner); if (dlg.ShowDialog() != DialogResult.OK) { BuildView(); return; } if (string.IsNullOrEmpty(dlg.SelectedIndiName)) return; var selectedTypeName = dlg.SelectedIndiName; foreach (var tp in PluginManager.Instance.typeIndicators) { var indnameattr = (DisplayNameAttribute)Attribute.GetCustomAttribute(tp, typeof(DisplayNameAttribute)); if (indnameattr == null) continue; if (selectedTypeName != indnameattr.DisplayName) continue; var ind = (IChartIndicator)Activator.CreateInstance(tp); if (onIndicatorAdd == null) return; onIndicatorAdd(ind); break; } BuildView(); UpdateUserInterface(); EditIndicator(fastGrid.rows.Count - 1); }