org.lobobrowser.html
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
 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.
 java.lang.String getDefaultStatus()
           
 HTMLCollection getFrames()
          Gets a collection of frames from the document currently in the context.
 HtmlObject getHtmlObject(HTMLElement element)
          Gets a HtmlObject instance that implements a OBJECT tag from HTML.
 java.lang.String getName()
          Gets the window name.
 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 getStatus()
          Gets the window status text.
 HtmlRendererContext getTop()
          Gets the top-most browser frame/window.
 UserAgentContext getUserAgentContext()
          Gets the user agent context.
 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 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. Use open(URL, String, String, boolean) instead.
 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 scroll(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.

createBrowserFrame

BrowserFrame createBrowserFrame()
Creates a BrowserFrame instance.


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. Use open(URL, String, String, boolean) instead.

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.

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.


setOpener

void setOpener(HtmlRendererContext opener)
Sets the context that opened the current frame/window.

Parameters:
opener - A HtmlRendererContext.

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.

getTop

HtmlRendererContext getTop()
Gets the top-most browser frame/window.


isVisitedLink

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


reload

void reload()
Reloads the current document.