Ejemplo n.º 1
0
        protected override void LoadContent(HTMLTextureRenderer renderer, Size size, int slice)
        {
            string patchPath;

            FHost.GetHostPath(out patchPath);
            renderer.LoadString(size, FHtmlIn[slice], FBaseUrlIn[slice], Path.GetDirectoryName(patchPath));
        }
Ejemplo n.º 2
0
 public WebClient(HTMLTextureRenderer renderer)
 {
     FRenderHandler   = new RenderHandler(renderer);
     FLifeSpanHandler = new LifeSpanHandler(this, renderer);
     FLoadHandler     = new LoadHandler(renderer);
     FKeyboardHandler = new KeyboardHandler();
     FRequestHandler  = new RequestHandler();
     FDisplayHandler  = new DisplayHandler(renderer);
 }
Ejemplo n.º 3
0
 protected abstract DXResource <EX9.Texture, CefBrowser> DoRenderCall(
     HTMLTextureRenderer webRenderer,
     int slice,
     out XDocument dom,
     out XElement rootElement,
     out bool isLoading,
     out string currentUrl,
     out string errorText,
     bool reload,
     int width,
     int height,
     double zoomLevel,
     MouseState mouseEvent,
     KeyboardState keyEvent,
     Vector2D scrollTo,
     string javaScript,
     bool execute,
     bool enabled);
Ejemplo n.º 4
0
 protected override DXResource <EX9.Texture, CefBrowser> DoRenderCall(HTMLTextureRenderer webRenderer, int slice, out XDocument dom, out XElement rootElement, out bool isLoading, out string currentUrl, out string errorText, bool reload, int width, int height, double zoomLevel, MouseState mouseEvent, KeyboardState keyEvent, Vector2D scrollTo, string javaScript, bool execute, bool enabled)
 {
     return(webRenderer.RenderUrl(
                out dom,
                out rootElement,
                out isLoading,
                out currentUrl,
                out errorText,
                FUrlIn[slice],
                reload,
                width,
                height,
                zoomLevel,
                mouseEvent,
                keyEvent,
                scrollTo,
                javaScript,
                execute,
                enabled));
 }
Ejemplo n.º 5
0
 protected override void LoadContent(HTMLTextureRenderer renderer, Size size, int slice)
 {
     renderer.LoadUrl(size, FUrlIn[slice]);
 }
Ejemplo n.º 6
0
 protected abstract void LoadContent(HTMLTextureRenderer renderer, Size size, int slice);
Ejemplo n.º 7
0
        public void Evaluate(int spreadMax)
        {
            FWebRenderers.ResizeAndDispose(spreadMax, (i) => new HTMLTextureRenderer(FLogger, FFrameRateIn[i]));

            FTextureOut.SliceCount        = spreadMax;
            FRootElementOut.SliceCount    = spreadMax;
            FDomOut.SliceCount            = spreadMax;
            FDocumentWidthOut.SliceCount  = spreadMax;
            FDocumentHeightOut.SliceCount = spreadMax;
            FIsLoadingOut.SliceCount      = spreadMax;
            FLoadedOut.SliceCount         = spreadMax;
            FErrorTextOut.SliceCount      = spreadMax;
            FCurrentUrlOut.SliceCount     = spreadMax;

            for (int i = 0; i < spreadMax; i++)
            {
                var webRenderer = FWebRenderers[i];

                var frameRate = VMath.Clamp(FFrameRateIn[i], HTMLTextureRenderer.MIN_FRAME_RATE, HTMLTextureRenderer.MAX_FRAME_RATE);
                if (frameRate != webRenderer.FrameRate)
                {
                    webRenderer.Dispose();
                    webRenderer      = new HTMLTextureRenderer(FLogger, frameRate);
                    FWebRenderers[i] = webRenderer;
                }

                // Check enabled state
                webRenderer.Enabled = FEnabledIn[i];
                if (!webRenderer.Enabled)
                {
                    continue;
                }

                // LoadUrl or LoadString
                LoadContent(webRenderer, new Size(FWidthIn[i], FHeightIn[i]), i);

                // Assign inputs
                webRenderer.ZoomLevel = FZoomLevelIn[i];
                webRenderer.Mouse     = FMouseIn[i];
                webRenderer.Keyboard  = FKeyboardIn[i];
                webRenderer.ScrollTo  = FScrollToIn[i];

                if (FExecuteIn[i])
                {
                    webRenderer.ExecuteJavaScript(FJavaScriptIn[i]);
                }

                if (FUpdateDomIn[i])
                {
                    webRenderer.UpdateDom();
                }

                if (FReloadIn[i])
                {
                    webRenderer.Reload();
                }

                // Set outputs
                FErrorTextOut[i] = webRenderer.CurrentError;
                FIsLoadingOut[i] = webRenderer.IsLoading;
                FLoadedOut[i]    = webRenderer.Loaded;
                // As long as the renderer is in the loading state stick to the old values
                if (!webRenderer.IsLoading)
                {
                    if (FDomOut[i] != webRenderer.CurrentDom)
                    {
                        FDomOut[i] = webRenderer.CurrentDom;
                    }
                    var rootElement = webRenderer.CurrentDom != null
                        ? webRenderer.CurrentDom.Root
                        : null;
                    if (FRootElementOut[i] != rootElement)
                    {
                        FRootElementOut[i] = rootElement;
                    }
                    var documentSize = webRenderer.DocumentSize;
                    FDocumentWidthOut[i]  = documentSize.Width;
                    FDocumentHeightOut[i] = documentSize.Height;
                    FCurrentUrlOut[i]     = webRenderer.CurrentUrl;
                }
            }

            FTextureOut.MarkPinAsChanged();
        }
Ejemplo n.º 8
0
 public DisplayHandler(HTMLTextureRenderer renderer)
 {
     FRenderer = renderer;
 }
Ejemplo n.º 9
0
 public RenderHandler(HTMLTextureRenderer renderer)
 {
     FRenderer = renderer;
 }
Ejemplo n.º 10
0
 public LifeSpanHandler(WebClient webClient, HTMLTextureRenderer renderer)
 {
     FWebClient = webClient;
     FRenderer  = renderer;
 }
Ejemplo n.º 11
0
 public RequestHandler(WebClient webClient, HTMLTextureRenderer renderer)
 {
     FWebClient = webClient;
     FRenderer  = renderer;
 }
Ejemplo n.º 12
0
 protected override void LoadContent(HTMLTextureRenderer renderer, int slice)
 {
     renderer.LoadURL(FUrlIn[slice]);
 }
Ejemplo n.º 13
0
 protected override void LoadContent(HTMLTextureRenderer renderer, int slice)
 {
     renderer.LoadString(FHtmlIn[slice], FBaseUrlIn[slice]);
 }
Ejemplo n.º 14
0
 public DomVisitor(HTMLTextureRenderer renderer)
 {
     FRenderer = renderer;
 }
Ejemplo n.º 15
0
 public LifeSpanHandler(HTMLTextureRenderer renderer)
 {
     FRenderer = renderer;
 }