示例#1
0
        Xwt.Widget CreateItem(string title, Xwt.Drawing.Image image)
        {
            if (image.Size.Width > 150 || image.Size.Height > 150)
            {
                image = image.WithBoxSize(150);
            }

            var vbox = new Xwt.VBox();

            RegisterFocusHandlers(vbox);

            vbox.PackStart(new Xwt.Label(title)
            {
                HorizontalPlacement = Xwt.WidgetPlacement.Center,
                TextAlignment       = Xwt.Alignment.Center,
                CanGetFocus         = false,
            });

            vbox.PackStart(new Xwt.ImageView(image)
            {
                HorizontalPlacement = Xwt.WidgetPlacement.Center,
                CanGetFocus         = false,
            });

            return(vbox);
        }
            public override void DrawForeground(TextEditor editor, Cairo.Context cr, MarginDrawMetrics metrics)
            {
                isFailed = false;
                var  test        = NUnitService.Instance.SearchTestById(unitTest.UnitTestIdentifier);
                bool searchCases = false;

                Xwt.Drawing.Image icon = null;

                if (test != null)
                {
                    icon = test.StatusIcon;
                    var result = test.GetLastResult();
                    if (result == null)
                    {
                        searchCases = true;
                    }
                    else if (result.IsFailure)
                    {
                        failMessage = result.Message;
                        isFailed    = true;
                    }
                }
                else
                {
                    searchCases = true;
                }

                if (searchCases)
                {
                    foreach (var caseId in unitTest.TestCases)
                    {
                        test = NUnitService.Instance.SearchTestById(unitTest.UnitTestIdentifier + caseId);
                        if (test != null)
                        {
                            icon = test.StatusIcon;
                            var result = test.GetLastResult();
                            if (result != null && result.IsFailure)
                            {
                                failMessage = result.Message;
                                isFailed    = true;
                                break;
                            }
                        }
                    }
                }

                if (icon != null)
                {
                    if (icon.Width > metrics.Width || icon.Height > metrics.Height)
                    {
                        icon = icon.WithBoxSize(metrics.Width, metrics.Height);
                    }
                    cr.DrawImage(editor, icon, Math.Truncate(metrics.X + metrics.Width / 2 - icon.Width / 2), Math.Truncate(metrics.Y + metrics.Height / 2 - icon.Height / 2));
                }
            }
示例#3
0
        public override void DrawForeground(Mono.TextEditor.MonoTextEditor editor, Cairo.Context cr, MarginDrawMetrics metrics)
        {
            if (statusIcon == null)
            {
                UpdateStatusIcon();
            }

            if (statusIcon != null)
            {
                if (statusIcon.Width > metrics.Width || statusIcon.Height > metrics.Height)
                {
                    statusIcon = statusIcon.WithBoxSize(metrics.Width, metrics.Height);
                }
                cr.DrawImage(editor, statusIcon, Math.Truncate(metrics.X + metrics.Width / 2 - statusIcon.Width / 2), Math.Truncate(metrics.Y + metrics.Height / 2 - statusIcon.Height / 2));
            }
        }
示例#4
0
        public override void DrawForeground(Mono.TextEditor.MonoTextEditor editor, Cairo.Context cr, MarginDrawMetrics metrics)
        {
            isFailed = false;
            bool searchCases = false;

            Xwt.Drawing.Image icon = host.GetStatusIcon(unitTest.UnitTestIdentifier);
            if (icon != null)
            {
                if (host.HasResult(unitTest.UnitTestIdentifier))
                {
                    searchCases = true;
                }
                else if (host.IsFailure(unitTest.UnitTestIdentifier))
                {
                    failMessage = host.GetMessage(unitTest.UnitTestIdentifier);
                    isFailed    = true;
                }
            }
            else
            {
                searchCases = true;
            }

            if (searchCases)
            {
                foreach (var caseId in unitTest.TestCases)
                {
                    icon = host.GetStatusIcon(unitTest.UnitTestIdentifier, caseId);
                    if (host.IsFailure(unitTest.UnitTestIdentifier, caseId))
                    {
                        failMessage = host.GetMessage(unitTest.UnitTestIdentifier, caseId);
                        isFailed    = true;
                        break;
                    }
                }
            }

            if (icon != null)
            {
                if (icon.Width > metrics.Width || icon.Height > metrics.Height)
                {
                    icon = icon.WithBoxSize(metrics.Width, metrics.Height);
                }
                cr.DrawImage(editor, icon, Math.Truncate(metrics.X + metrics.Width / 2 - icon.Width / 2), Math.Truncate(metrics.Y + metrics.Height / 2 - icon.Height / 2));
            }
        }