Пример #1
0
        // GET: /<controller>/
        public IActionResult Index()
        {
            var descriptor = _widgetHarvester.HarvestWidgets().Last();

            var renderer = _lifetimeScope.ResolveNamed <Lazy <IRenderer> >(descriptor.RendererDescriptor.RendererName, new PositionalParameter(0, descriptor.RendererDescriptor.Model));
            var context  = new WidgetRenderContext(renderer, "Page1", "page", "Widget1", descriptor.Name, new Dictionary <string, object>());

            var widgetRenderer = _lifetimeScope.Resolve <Lazy <IWidgetRenderer> >(new PositionalParameter(0, context));

            var page = new Page(() => _pageRenderEventses.Value)
            {
                Widgets = new IWidget[]
                {
                    new Widget(descriptor, widgetRenderer)
                }
            };

            return(View(page));
        }
Пример #2
0
        public UserInterfaceScene(GraphicsDevice graphicsDevice,
                                  IUserInterfaceRenderer userInterfaceRenderer,
                                  ILocalizedContentLayoutEngine contentLayoutEngine,
                                  IStyleConfigurator styleConfigurator,
                                  IDoubleBuffer doubleBuffer  = null,
                                  RenderTarget2D renderTarget = null)
        {
            DrawBelow   = true;
            UpdateBelow = false;

            renderContext = new WidgetRenderContext(
                graphicsDevice,
                contentLayoutEngine,
                userInterfaceRenderer,
                styleConfigurator,
                renderTarget,
                null,
                doubleBuffer);

            driver = new UserInterfaceSceneDriver(renderContext);

            driver.Desktop.Empty += () =>
            {
                if (ExitWhenEmpty)
                {
                    IsFinished = true;
                }
            };

            BlendState = new BlendState
            {
                ColorSourceBlend      = Blend.SourceAlpha,
                ColorDestinationBlend = Blend.InverseSourceAlpha,
                AlphaSourceBlend      = Blend.One,
                AlphaDestinationBlend = Blend.InverseSourceAlpha,
            };
        }
Пример #3
0
 public WidgetRenderer(WidgetRenderContext renderContext)
 {
     _renderContext = renderContext;
 }