org.embl.ebi.escience.scuflui.renderers
Class JMolRenderer

java.lang.Object
  extended by org.embl.ebi.escience.scuflui.renderers.AbstractRenderer
      extended by org.embl.ebi.escience.scuflui.renderers.AbstractRenderer.ByMimeType
          extended by org.embl.ebi.escience.scuflui.renderers.JMolRenderer
All Implemented Interfaces:
RendererSPI

public class JMolRenderer
extends AbstractRenderer.ByMimeType

Renders using the Jmol software for chemical structures

Author:
Tom Oinn

Nested Class Summary
 
Nested classes/interfaces inherited from class org.embl.ebi.escience.scuflui.renderers.AbstractRenderer
AbstractRenderer.ByJavaClass, AbstractRenderer.ByMimeType, AbstractRenderer.ByPattern, AbstractRenderer.BySemanticType
 
Constructor Summary
JMolRenderer()
           
 
Method Summary
 boolean canHandle(RendererRegistry renderers, java.lang.Object userObject, java.lang.String mimeType)
          Make a decision about each mime type presented.
 javax.swing.JComponent getComponent(RendererRegistry renderers, DataThing dataThing)
          Return a JComponent that renders this object that proports to have a particular mime type.
 boolean isTerminal()
          Discover if this is a terminal renderer.
 
Methods inherited from class org.embl.ebi.escience.scuflui.renderers.AbstractRenderer.ByMimeType
canHandle
 
Methods inherited from class org.embl.ebi.escience.scuflui.renderers.AbstractRenderer
getIcon, getName
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JMolRenderer

public JMolRenderer()
Method Detail

isTerminal

public boolean isTerminal()
Description copied from interface: RendererSPI
Discover if this is a terminal renderer. A renderer is terminal if it renders the given DataThing. It is not terminal if it first calculates some property of that DataThing that may potentially lead to some other non-terminal Renderer being used.

Returns:
true if this is a terminal renderer, false otherwise

canHandle

public boolean canHandle(RendererRegistry renderers,
                         java.lang.Object userObject,
                         java.lang.String mimeType)
Description copied from class: AbstractRenderer.ByMimeType
Make a decision about each mime type presented.

Parameters:
renderers - the sibling renderers
userObject - the user data object to render
mimeType - one of the mime types associated with it
Returns:
true if we can handle this object with this mime type

getComponent

public javax.swing.JComponent getComponent(RendererRegistry renderers,
                                           DataThing dataThing)
                                    throws RendererException
Description copied from interface: RendererSPI
Return a JComponent that renders this object that proports to have a particular mime type. If canHandle() returns true, then getComponent() must not return null.

Parameters:
renderers - the MimeTypeRendereRegistry to look up sibling renderers
dataThing - the object to render
Returns:
a JComponent for displaying the object, or null
Throws:
RendererException