Beispiel #1
0
        public void ShowTooltip(SuperTipSettings settings)
        {
            if (!TooltipAllowed())
            {
                return;
            }

            _toolTip.Show(settings, _control);
        }
Beispiel #2
0
        public void ShowTooltip(string title, string body)
        {
            var settings = new SuperTipSettings();

            settings.HeaderText = title;
            settings.Text       = body;

            ShowTooltip(settings);
        }
        protected virtual SuperTipSettings BuildTooltip(Village village)
        {
            var settings = new SuperTipSettings();

            settings.ToolTipStyle = ToolTipStyle.Standard;
            settings.HeaderText   = village.Tooltip.Title;
            settings.Text         = village.Tooltip.Text;
            settings.Image        = village.Type.GetImage(false);

            if (!string.IsNullOrEmpty(village.Tooltip.Footer))
            {
                settings.FooterText  = village.Tooltip.Footer;
                settings.FooterImage = village.Tooltip.FooterImage;
            }
            return(settings);
        }
Beispiel #4
0
        protected override SuperTipSettings BuildTooltip(Village village)
        {
            AttackPlanFrom attacker;
            AttackPlan     plan = _attacker.GetPlan(village, out attacker, false);

            if (plan == null)
            {
                return(base.BuildTooltip(village));
            }

            var settings = new SuperTipSettings();

            settings.ToolTipStyle = ToolTipStyle.Standard;
            settings.HeaderImage  = Properties.Resources.FlagGreen;

            var str = new System.Text.StringBuilder();

            if (attacker == null)
            {
                settings.HeaderText = plan.Target.Tooltip.Title;
            }
            else
            {
                settings.HeaderText = attacker.Attacker.Tooltip.Title;

                str.AppendFormat(ControlsRes.AttackManipulatorManager_Tooltip_Target, plan.Target.Tooltip.Title);
                str.Append(Environment.NewLine);
            }
            str.AppendFormat(ControlsRes.AttackManipulatorManager_Tooltip_Points, Common.GetPrettyNumber(plan.Target.Points));
            str.Append(Environment.NewLine);
            str.AppendFormat(ControlsRes.AttackManipulatorManager_Tooltip_ArrivalDate, plan.ArrivalTime.GetPrettyDate());

            if (attacker != null)
            {
                settings.Image = attacker.SlowestUnit.Image;

                str.Append(Environment.NewLine);
                str.Append(Environment.NewLine);
                str.AppendFormat(ControlsRes.AttackManipulatorManager_Tooltip_TravelTime, attacker.TravelTime);
                str.Append(Environment.NewLine);
                str.AppendFormat(ControlsRes.AttackManipulatorManager_Tooltip_SendOn, attacker.FormattedSendDate());
            }
            else
            {
                str.Append(Environment.NewLine);
                str.Append(Environment.NewLine);
                if (!plan.Attacks.Any())
                {
                    str.AppendFormat("");
                    str.AppendLine();
                    str.AppendFormat("");

                    if (World.Default.You.Empty)
                    {
                        str.AppendLine();
                        str.AppendLine();
                        str.Append(ControlsRes.AttackManipulatorManager_Tooltip_Help_NoYou);
                    }
                }
                else
                {
                    IOrderedEnumerable <AttackPlanFrom> attacks = plan.Attacks.OrderByDescending(x => x.TravelTime);

                    IEnumerable <IGrouping <Unit, AttackPlanFrom> > unitsSent;
                    if (plan.Attacks.Any(x => x.SlowestUnit.Type == UnitTypes.Snob))
                    {
                        settings.Image = WorldUnits.Default[UnitTypes.Snob].Image;
                        unitsSent      = attacks.GroupBy(x => x.SlowestUnit);
                    }
                    else
                    {
                        unitsSent = attacks.GroupBy(x => x.SlowestUnit);
                    }

                    foreach (var unitSent in unitsSent)
                    {
                        str.AppendFormat("{0}: {1}", unitSent.Key.Name, unitSent.Count());
                        str.AppendLine();
                    }

                    if (!string.IsNullOrWhiteSpace(plan.Comments))
                    {
                        settings.FooterText  = plan.Comments;
                        settings.FooterImage = Other.Note;
                    }
                }
            }

            settings.Text = str.ToString();

            if (!string.IsNullOrEmpty(village.Tooltip.Footer))
            {
                if (!string.IsNullOrWhiteSpace(settings.FooterText))
                {
                    settings.FooterText += "\n\n";
                    settings.FooterText += village.Tooltip.Footer;
                }
                else
                {
                    settings.FooterText = village.Tooltip.Footer;
                }

                settings.FooterImage = village.Tooltip.FooterImage;
            }
            return(settings);
        }
Beispiel #5
0
        public void ShowTooltip(SuperTipSettings settings)
        {
            if (!TooltipAllowed())
            {
                return;
            }

            _toolTip.Show(settings, _control);
        }
Beispiel #6
0
        public void ShowTooltip(string title, string body)
        {
            var settings = new SuperTipSettings();
            settings.HeaderText = title;
            settings.Text = body;

            ShowTooltip(settings);
        }
        protected override SuperTipSettings BuildTooltip(Village village)
        {
            AttackPlanFrom attacker;
            AttackPlan plan = _attacker.GetPlan(village, out attacker, false);
            if (plan == null)
            {
                return base.BuildTooltip(village);
            }

            var settings = new SuperTipSettings();
            settings.ToolTipStyle = ToolTipStyle.Standard;
            settings.HeaderImage = Properties.Resources.FlagGreen;

            var str = new System.Text.StringBuilder();
            if (attacker == null)
            {
                settings.HeaderText = plan.Target.Tooltip.Title;
            }
            else
            {
                settings.HeaderText = attacker.Attacker.Tooltip.Title;

                str.AppendFormat("Target: {0}", plan.Target.Tooltip.Title);
                str.Append(Environment.NewLine);
            }
            str.AppendFormat("Points: {0}", Common.GetPrettyNumber(plan.Target.Points));
            str.Append(Environment.NewLine);
            str.AppendFormat("Arrival date: {0}", plan.ArrivalTime.GetPrettyDate());

            if (attacker != null)
            {
                settings.Image = attacker.SlowestUnit.Image;

                str.Append(Environment.NewLine);
                str.Append(Environment.NewLine);
                str.AppendFormat("Travel time: {0}", attacker.TravelTime);
                str.Append(Environment.NewLine);
                str.AppendFormat("Send on: {0}", attacker.FormattedSendDate());
            }
            else
            {
                str.Append(Environment.NewLine);
                str.Append(Environment.NewLine);
                if (!plan.Attacks.Any())
                {
                    str.AppendFormat("Right click on your own villages to add them as attacking (or defending) villages.");
                    str.AppendLine();
                    str.AppendFormat("Or easier: use the search function (binoculars icon) in the 'Plan Attacks' panel on the left!");

                    if (World.Default.You.Empty)
                    {
                        str.AppendLine();
                        str.AppendLine();
                        str.Append("You have not yet set who you are so right click wont work! You can do so using the menu 'World' -> 'Set Active Player'");
                    }
                }
                else
                {
                    IOrderedEnumerable<AttackPlanFrom> attacks = plan.Attacks.OrderByDescending(x => x.TravelTime);

                    IEnumerable<IGrouping<Unit, AttackPlanFrom>> unitsSent;
                    if (plan.Attacks.Any(x => x.SlowestUnit.Type == UnitTypes.Snob))
                    {
                        settings.Image = WorldUnits.Default[UnitTypes.Snob].Image;
                        unitsSent = attacks.GroupBy(x => x.SlowestUnit);
                    }
                    else
                    {
                        unitsSent = attacks.GroupBy(x => x.SlowestUnit);
                    }

                    foreach (var unitSent in unitsSent)
                    {
                        str.AppendFormat("{0}: {1}", unitSent.Key.Name, unitSent.Count());
                        str.AppendLine();
                    }

                    if (!string.IsNullOrWhiteSpace(plan.Comments))
                    {
                        settings.FooterText = plan.Comments;
                        settings.FooterImage = Other.Note;
                    }
                }
            }

            settings.Text = str.ToString();

            if (!string.IsNullOrEmpty(village.Tooltip.Footer))
            {
                if (!string.IsNullOrWhiteSpace(settings.FooterText))
                {
                    settings.FooterText += "\n\n";
                    settings.FooterText += village.Tooltip.Footer;
                }
                else
                {
                    settings.FooterText = village.Tooltip.Footer;
                }

                settings.FooterImage = village.Tooltip.FooterImage;
            }
            return settings;
        }
        protected virtual SuperTipSettings BuildTooltip(Village village)
        {
            var settings = new SuperTipSettings();
            settings.ToolTipStyle = ToolTipStyle.Standard;
            settings.HeaderText = village.Tooltip.Title;
            settings.Text = village.Tooltip.Text;
            settings.Image = village.Type.GetImage(false);

            if (!string.IsNullOrEmpty(village.Tooltip.Footer))
            {
                settings.FooterText = village.Tooltip.Footer;
                settings.FooterImage = village.Tooltip.FooterImage;
            }
            return settings;
        }