Exemplo n.º 1
0
        private StackPanel MakeAnalyzerInfoArea(string message, EvaluationData dropData, bool after)
        {
            StackPanel stackPanel = new StackPanel();

            if (dropData.DroppingDone)
            {
                // data about drop
                string infotxt = "";
                string detRule = DropCriterion.ToString(dropData.DeterminativeCriterion.Type);

                infotxt = ListUsedCriteria(dropData);

                stackPanel.Children.Add(MakeMakeAnalyzerInfoLabel(message + " by " + detRule + ": " + DropCriterion.ToString(dropData.Side).ToUpper() +
                                                                  " with Quality: " + Math.Round(dropData.DroppingQuality, 3)));

                stackPanel.Children.Add(MakeMakeAnalyzerInfoLabel("Criteria: " + infotxt));
            }
            else
            {
                if (after)
                {
                    stackPanel.Children.Add(MakeMakeAnalyzerInfoLabel(message + " with Overall Quality: " + Math.Round(dropData.Evaluation.EvaluationQuality, 3)));
                }
                else
                {
                    stackPanel.Children.Add(MakeMakeAnalyzerInfoLabel(message));
                }
            }

            return(stackPanel);
        }
Exemplo n.º 2
0
        private string ListUsedCriteria(EvaluationData dropData)
        {
            string result = "";

            foreach (DropCriterion criterion in dropData.Criteria)
            {
                string title = DropCriterion.ToString(criterion.Type);
                string side  = DropCriterion.ToString(criterion.Side).ToUpper();
                string score = "";
                if (criterion.Type == DropCriterionType.Displacement)
                {
                    score = " [" + ScoreString(dropData.DisplacementLow, dropData.DisplacementHigh) + "]";
                }
                if (criterion.Type == DropCriterionType.Distance)
                {
                    score = " [" + ScoreString(dropData.DistanceLow, dropData.DistanceHigh) + "]";
                }
                if (criterion.Type == DropCriterionType.Droppables)
                {
                    score = " [" + ScoreString(dropData.DroppablesLow, dropData.DroppablesHigh) + "]";
                }
                if (criterion.Type == DropCriterionType.OrderQuality)
                {
                    score = " [" + ScoreString(dropData.QualityDroppingLow, dropData.QualityDroppingHigh, 3) + "]";
                }
                if (dropData.DeterminativeCriterion.Type == DropCriterionType.Vote && !criterion.UsedForVoting)
                {
                    result += "(" + title + score + ": " + side + ") / ";
                }
                else
                {
                    result += title + score + ": " + side + " / ";
                }
            }
            return(result.Trim().Trim(',').Trim('/').Trim());
        }