Exemplo n.º 1
0
        /// <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;
        }
Exemplo n.º 3
0
 /// <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);
         }
 }