Interface HtmlRendererContext

  • All Known Implementing Classes:
    AbstractHtmlRendererContext, SimpleHtmlRendererContext

    public interface HtmlRendererContext
    The HtmlRendererContext interface must be implemented in order to use the Cobra HTML renderer. An instance of this interface will be called back whenever the renderer needs to perform an action that it is not designed to know how to perform on its own, e.g. opening a browser window or a context menu. In many ways this interface parallers the Javascript Window class (which in reality represents a browser frame, not a window).

    A simple implementation of this interface is provided in SimpleHtmlRendererContext.

    See Also:
    HtmlPanel.setDocument(org.w3c.dom.Document, HtmlRendererContext)
    • Method Summary

      All Methods Instance Methods Abstract Methods Deprecated Methods 
      Modifier and Type Method Description
      void alert​(java.lang.String message)
      Opens an alert dialog.
      void back()
      Goes to the previous page in the browser's history.
      void blur()
      Relinquishes focus.
      void close()
      Closes the browser window, provided this is allowed for the current context.
      boolean confirm​(java.lang.String message)
      Opens a confirmation dialog.
      BrowserFrame createBrowserFrame()
      Creates a BrowserFrame instance.
      void focus()
      Requests focus for the current window.
      void forward()
      Goes forward one page.
      java.lang.String getCurrentURL()
      Gets the current URL in history.
      java.lang.String getDefaultStatus()  
      HTMLCollection getFrames()
      Gets a collection of frames from the document currently in the context.
      int getHistoryLength()
      Gets the number of pages in the history list.
      HtmlObject getHtmlObject​(HTMLElement element)
      Gets a HtmlObject instance that implements a OBJECT tag from HTML.
      java.lang.String getName()
      Gets the window name.
      java.lang.String getNextURL()
      Gets the next URL in the history.
      HtmlRendererContext getOpener()
      Gets the opener of the frame/window in the current context.
      HtmlRendererContext getParent()
      Gets the parent of the frame/window in the current context.
      java.lang.String getPreviousURL()
      Gets the previous URL in the history.
      java.lang.String getStatus()
      Gets the window status text.
      HtmlRendererContext getTop()
      Gets the top-most browser frame/window.
      UserAgentContext getUserAgentContext()
      Gets the user agent context.
      void goToHistoryURL​(java.lang.String url)
      Navigates to a URL in the history list.
      boolean isClosed()
      Gets a value indicating if the window is closed.
      boolean isImageLoadingEnabled()
      This method should return true if and only if image loading needs to be enabled.
      boolean isVisitedLink​(HTMLLinkElement link)
      It should return true if the link provided has been visited.
      void linkClicked​(HTMLElement linkNode, java.net.URL url, java.lang.String target)
      Performs a link click.
      void moveInHistory​(int offset)
      Navigates the history according to the given offset.
      void navigate​(java.net.URL url, java.lang.String target)
      Navigates to the location given.
      boolean onContextMenu​(HTMLElement element, java.awt.event.MouseEvent event)
      This method is called when a visual element is right-clicked.
      boolean onDoubleClick​(HTMLElement element, java.awt.event.MouseEvent event)
      This method is called when there's a mouse double-click on an element.
      boolean onMouseClick​(HTMLElement element, java.awt.event.MouseEvent event)
      This method is called when there's a mouse click on an element.
      void onMouseOut​(HTMLElement element, java.awt.event.MouseEvent event)
      This method is called when the mouse no longer hovers a given element.
      void onMouseOver​(HTMLElement element, java.awt.event.MouseEvent event)
      This method is called when the mouse first hovers over an element.
      HtmlRendererContext open​(java.lang.String absoluteUrl, java.lang.String windowName, java.lang.String windowFeatures, boolean replace)
      Deprecated.
      HtmlRendererContext open​(java.net.URL url, java.lang.String windowName, java.lang.String windowFeatures, boolean replace)
      Opens a separate browser window and renders a URL.
      java.lang.String prompt​(java.lang.String message, java.lang.String inputDefault)
      Shows a prompt dialog.
      void reload()
      Reloads the current document.
      void resizeBy​(int byWidth, int byHeight)
      Resizes the window.
      void resizeTo​(int width, int height)
      Resizes the window.
      void scroll​(int x, int y)
      Scrolls the client area.
      void scrollBy​(int x, int y)
      Scrolls the client area.
      void setDefaultStatus​(java.lang.String value)  
      void setOpener​(HtmlRendererContext opener)
      Sets the context that opened the current frame/window.
      void setStatus​(java.lang.String message)
      Sets the window status text.
      void submitForm​(java.lang.String method, java.net.URL action, java.lang.String target, java.lang.String enctype, FormInput[] formInputs)
      Submits a HTML form.
    • Method Detail

      • navigate

        void navigate​(java.net.URL url,
                      java.lang.String target)
        Navigates to the location given. Implementations should retrieve the URL content, parse it and render it.
        Parameters:
        url - The destination URL.
        target - Same as the target attribute in the HTML anchor tag, i.e. _top, _blank, etc.
      • linkClicked

        void linkClicked​(HTMLElement linkNode,
                         java.net.URL url,
                         java.lang.String target)
        Performs a link click. Implementations should invoke navigate(URL, String).
        Parameters:
        linkNode - The HTML node that was clicked.
        url - The destination URL.
        target - Same as the target attribute in the HTML anchor tag, i.e. _top, _blank, etc.
      • getFrames

        HTMLCollection getFrames()
        Gets a collection of frames from the document currently in the context.
      • submitForm

        void submitForm​(java.lang.String method,
                        java.net.URL action,
                        java.lang.String target,
                        java.lang.String enctype,
                        FormInput[] formInputs)
        Submits a HTML form. Note that when the the method is "GET", parameters are still expected to be part of formInputs.
        Parameters:
        method - The request method, GET or POST.
        action - The destination URL.
        target - Same as the target attribute in the FORM tag, i.e. _blank, _top, etc.
        enctype - The encoding type.
        formInputs - An array of FormInput instances.
      • getUserAgentContext

        UserAgentContext getUserAgentContext()
        Gets the user agent context.
      • getHtmlObject

        HtmlObject getHtmlObject​(HTMLElement element)
        Gets a HtmlObject instance that implements a OBJECT tag from HTML.
        Parameters:
        element - The DOM element for the object, which may either represent an OBJECT, EMBED or an APPLET tag.
        Returns:
        Implementations of this method must return null if they have any problems producing a HtmlObject instance. This is particularly true of OBJECT tags, where inner HTML of the tag must be rendered if the OBJECT content cannot be handled.
      • onContextMenu

        boolean onContextMenu​(HTMLElement element,
                              java.awt.event.MouseEvent event)
        This method is called when a visual element is right-clicked.
        Parameters:
        element - The narrowest element enclosing the mouse location.
        event - The mouse event.
        Returns:
        The method should return true to continue propagating the event, or false to stop propagating it.
      • onMouseClick

        boolean onMouseClick​(HTMLElement element,
                             java.awt.event.MouseEvent event)
        This method is called when there's a mouse click on an element.
        Parameters:
        element - The narrowest element enclosing the mouse location.
        event - The mouse event.
        Returns:
        The method should return true to continue propagating the event, or false to stop propagating it.
      • onDoubleClick

        boolean onDoubleClick​(HTMLElement element,
                              java.awt.event.MouseEvent event)
        This method is called when there's a mouse double-click on an element.
        Parameters:
        element - The narrowest element enclosing the mouse location.
        event - The mouse event.
        Returns:
        The method should return true to continue propagating the event, or false to stop propagating it.
      • onMouseOver

        void onMouseOver​(HTMLElement element,
                         java.awt.event.MouseEvent event)
        This method is called when the mouse first hovers over an element.
        Parameters:
        element - The element that the mouse has just entered.
        event - The mouse event.
      • onMouseOut

        void onMouseOut​(HTMLElement element,
                        java.awt.event.MouseEvent event)
        This method is called when the mouse no longer hovers a given element.
        Parameters:
        element - The element that the mouse has just exited.
        event - The mouse event.
      • isImageLoadingEnabled

        boolean isImageLoadingEnabled()
        This method should return true if and only if image loading needs to be enabled.
      • alert

        void alert​(java.lang.String message)
        Opens an alert dialog.
        Parameters:
        message - Message shown by the dialog.
      • back

        void back()
        Goes to the previous page in the browser's history.
      • blur

        void blur()
        Relinquishes focus.
      • close

        void close()
        Closes the browser window, provided this is allowed for the current context.
      • confirm

        boolean confirm​(java.lang.String message)
        Opens a confirmation dialog.
        Parameters:
        message - The message shown by the confirmation dialog.
        Returns:
        True if the user selects YES.
      • focus

        void focus()
        Requests focus for the current window.
      • open

        HtmlRendererContext open​(java.lang.String absoluteUrl,
                                 java.lang.String windowName,
                                 java.lang.String windowFeatures,
                                 boolean replace)
        Deprecated.
        Opens a separate browser window and renders a URL.
        Parameters:
        absoluteUrl - The URL to be rendered.
        windowName - The name of the new window.
        windowFeatures - The features of the new window (same as in Javascript open method).
        replace -
        Returns:
        A new HtmlRendererContext instance.
      • open

        HtmlRendererContext open​(java.net.URL url,
                                 java.lang.String windowName,
                                 java.lang.String windowFeatures,
                                 boolean replace)
        Opens a separate browser window and renders a URL.
        Parameters:
        url - The URL to be rendered.
        windowName - The name of the new window.
        windowFeatures - The features of the new window (same as in Javascript open method).
        replace -
        Returns:
        A new HtmlRendererContext instance.
      • prompt

        java.lang.String prompt​(java.lang.String message,
                                java.lang.String inputDefault)
        Shows a prompt dialog.
        Parameters:
        message - The message shown by the dialog.
        inputDefault - The default input value.
        Returns:
        The user's input value.
      • scroll

        void scroll​(int x,
                    int y)
        Scrolls the client area.
        Parameters:
        x - Document's x coordinate.
        y - Document's y coordinate.
      • scrollBy

        void scrollBy​(int x,
                      int y)
        Scrolls the client area.
        Parameters:
        x - Horizontal pixels to scroll.
        y - Vertical pixels to scroll.
      • resizeTo

        void resizeTo​(int width,
                      int height)
        Resizes the window.
        Parameters:
        width - The new width.
        height - The new height.
      • resizeBy

        void resizeBy​(int byWidth,
                      int byHeight)
        Resizes the window.
        Parameters:
        byWidth - The number of pixels to resize the width by.
        byHeight - The number of pixels to resize the height by.
      • isClosed

        boolean isClosed()
        Gets a value indicating if the window is closed.
      • getDefaultStatus

        java.lang.String getDefaultStatus()
      • setDefaultStatus

        void setDefaultStatus​(java.lang.String value)
      • getName

        java.lang.String getName()
        Gets the window name.
      • getParent

        HtmlRendererContext getParent()
        Gets the parent of the frame/window in the current context.
      • getOpener

        HtmlRendererContext getOpener()
        Gets the opener of the frame/window in the current context.
      • getStatus

        java.lang.String getStatus()
        Gets the window status text.
      • setStatus

        void setStatus​(java.lang.String message)
        Sets the window status text.
        Parameters:
        message - A string.
      • isVisitedLink

        boolean isVisitedLink​(HTMLLinkElement link)
        It should return true if the link provided has been visited.
      • reload

        void reload()
        Reloads the current document.
      • getHistoryLength

        int getHistoryLength()
        Gets the number of pages in the history list.
      • getCurrentURL

        java.lang.String getCurrentURL()
        Gets the current URL in history.
      • getNextURL

        java.lang.String getNextURL()
        Gets the next URL in the history.
      • getPreviousURL

        java.lang.String getPreviousURL()
        Gets the previous URL in the history.
      • forward

        void forward()
        Goes forward one page.
      • moveInHistory

        void moveInHistory​(int offset)
        Navigates the history according to the given offset.
        Parameters:
        offset - A positive or negative number. -1 is equivalent to back(). +1 is equivalent to forward().
      • goToHistoryURL

        void goToHistoryURL​(java.lang.String url)
        Navigates to a URL in the history list.