/// <summary> /// Fires the RankingCompleted event /// </summary> /// <param name="args">Argumenst for the event</param> public virtual void OnRankingCompleted(RankingEventArgs args) { EventHandler <RankingEventArgs> handler = RankingCompleted; if (handler != null) { handler(this, args); } }
private void RankingCompletedHandler(object sender, RankingEventArgs e) { // Remove event handler for currently selected ranker SelectedRanker.RankingCompleted -= RankingCompletedHandler; GraphComponents graph = GraphManager.Instance.DefaultGraphComponentsInstance; List<RankingData> data = new List<RankingData>(); if (_colorVisualizer == null) _colorVisualizer = new ColorVisualizer(e.Results.Values.Min(), e.Results.Values.Max()); else _colorVisualizer.Reset(e.Results.Values.Min(), e.Results.Values.Max()); _scaleVisualizer = new ScaleVisualizer(); foreach (INode node in e.Results.Keys) { RankingData rankingData = new RankingData { Score = e.Results[node], NodeCount = 1 }; if (data.Contains(rankingData)) data[data.IndexOf(rankingData)].NodeCount += 1; else data.Add(rankingData); NodeViewModelBase nodeVM = graph.GetNodeViewModel(node) as NodeViewModelBase; if (nodeVM != null) { if ((VisualizationOption & VisualizationOptions.Color) == VisualizationOptions.Color) { _colorVisualizer.Visualize(nodeVM, e.Results[node]); } else { _colorVisualizer.ClearVisualization(nodeVM); } if ((VisualizationOption & VisualizationOptions.Scale) == VisualizationOptions.Scale) { _scaleVisualizer.Visualize(nodeVM, e.Results[node]); } else _scaleVisualizer.ClearVisualization(nodeVM); } } Scores = new ObservableCollection<RankingData>(data.OrderBy(rankData => rankData.Score)); IsActive = true; }
/// <summary> /// Fires the RankingCompleted event /// </summary> /// <param name="args">Argumenst for the event</param> public virtual void OnRankingCompleted(RankingEventArgs args) { EventHandler<RankingEventArgs> handler = RankingCompleted; if (handler != null) { handler(this, args); } }