public override void Render(DwarfTime gameTime)
        {
            var mouse = GuiRoot.MousePointer;

            GuiRoot.MousePointer      = null;
            GuiRoot.MouseOverlaySheet = null;

            GuiRoot.Draw();

            for (var i = PreviewOffset; i < Items.Count && i < (PreviewOffset + Grid.Children.Count); ++i)
            {
                var item = Items[i];
                if (item.ScreenshotStatus == ChooserItem.ScreenshotStatusEnum.Unloaded)
                {
                    item.Screenshot       = (ScreenshotSource == null ? null : ScreenshotSource(item.Path));
                    item.ScreenshotStatus = (item.Screenshot == null ? ChooserItem.ScreenshotStatusEnum.NoneFound : ChooserItem.ScreenshotStatusEnum.Loaded);
                }

                if (item.ScreenshotStatus == ChooserItem.ScreenshotStatusEnum.Loaded)
                {
                    GuiRoot.DrawQuad(Grid.GetChild(i - PreviewOffset).Rect.Interior(7, 7, 7, 7), item.Screenshot);
                }
            }

            GuiRoot.RedrawPopups(); // This hack sucks.
            GuiRoot.MousePointer = mouse;
            GuiRoot.DrawMouse();
            base.Render(gameTime);
        }
示例#2
0
        public override void Render(DwarfTime gameTime)
        {
            var mouse = GuiRoot.MousePointer;

            GuiRoot.MousePointer      = null;
            GuiRoot.MouseOverlaySheet = null;

            GuiRoot.Draw();

            for (var i = 0; i < Items.Count; i++)
            {
                var item = Items[i];
                if (item.ScreenshotStatus == ChooserItem.ScreenshotStatusEnum.Unloaded)
                {
                    item.Screenshot       = (ScreenshotSource == null ? null : ScreenshotSource(item.Path));
                    item.ScreenshotStatus = (item.Screenshot == null ? ChooserItem.ScreenshotStatusEnum.NoneFound : ChooserItem.ScreenshotStatusEnum.Loaded);
                }

                if (item.ScreenshotStatus == ChooserItem.ScreenshotStatusEnum.Loaded)
                {
                    if (i < Grid.Children.Count - 1)
                    {
                        var widget = (Grid.GetChild(i + 1) as ChooserWidget);
                        var rect   = widget.ScreenshotWidget.Rect;
                        if (!widget.Hidden)
                        {
                            GuiRoot.DrawQuad(rect, item.Screenshot);
                        }
                    }
                }
            }

            GuiRoot.RedrawPopups(); // This hack sucks.
            GuiRoot.MousePointer = mouse;
            GuiRoot.DrawMouse();
            base.Render(gameTime);
        }
示例#3
0
 public void Render(Rectangle Where, Gui.Root Gui)
 {
     Gui.DrawQuad(Where, RenderTarget);
 }