org.biojava.bio.gui.sequence
Class GlyphFeatureRenderer

java.lang.Object
  extended by org.biojava.utils.AbstractChangeable
      extended by org.biojava.bio.gui.sequence.SequenceRendererWrapper
          extended by org.biojava.bio.gui.sequence.FilteringRenderer
              extended by org.biojava.bio.gui.sequence.GlyphFeatureRenderer
All Implemented Interfaces:
java.io.Serializable, FeatureRenderer, SequenceRenderer, Changeable
Direct Known Subclasses:
SecondaryStructureFeatureRenderer

public class GlyphFeatureRenderer
extends FilteringRenderer
implements FeatureRenderer

A FeatureRenderer that renders a particular Glyph for Features accepted by a particular FeatureFilter

Since:
1.5
Author:
Mark Southern
See Also:
Glyph, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.biojava.bio.gui.sequence.SequenceRenderer
SequenceRenderer.RendererForwarder
 
Field Summary
 
Fields inherited from class org.biojava.bio.gui.sequence.FilteringRenderer
filter, FILTER, recurse, RECURSE
 
Fields inherited from class org.biojava.bio.gui.sequence.SequenceRendererWrapper
RENDERER
 
Constructor Summary
GlyphFeatureRenderer()
           
 
Method Summary
 void addFilterAndGlyph(FeatureFilter ff, Glyph g)
           
 double getDepth(SequenceRenderContext src)
          Retrieve the depth of this renderer when rendering src.
 FeatureHolder processMouseEvent(FeatureHolder fh, SequenceRenderContext src, java.awt.event.MouseEvent me)
           
 void renderFeature(java.awt.Graphics2D g2, Feature f, SequenceRenderContext src)
           
 void setDepth(double depth)
           
 
Methods inherited from class org.biojava.bio.gui.sequence.FilteringRenderer
getChangeSupport, getContext, getFilter, getMinimumLeader, getMinimumTrailer, getRecurse, hasListeners, paint, processMouseEvent, setFilter, setRecurse, toString
 
Methods inherited from class org.biojava.bio.gui.sequence.SequenceRendererWrapper
getRenderer, setRenderer
 
Methods inherited from class org.biojava.utils.AbstractChangeable
addChangeListener, addChangeListener, generateChangeSupport, hasListeners, isUnchanging, removeChangeListener, removeChangeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GlyphFeatureRenderer

public GlyphFeatureRenderer()
Method Detail

addFilterAndGlyph

public void addFilterAndGlyph(FeatureFilter ff,
                              Glyph g)
                       throws ChangeVetoException
Throws:
ChangeVetoException

setDepth

public void setDepth(double depth)

getDepth

public double getDepth(SequenceRenderContext src)
Description copied from interface: SequenceRenderer
Retrieve the depth of this renderer when rendering src.

The depth may vary between sequence panels - for example based upon sequence length. Each line of information in the SequenceRendererContext only renders a region of the sequence. The depth for one complete line may be different from that for another due to the sequence having more or less information in that region to show. For example, a feature renderer implementation may chose to collapse down to a depth of zero pixels if there are no features to render within a region.

Specified by:
getDepth in interface FeatureRenderer
Specified by:
getDepth in interface SequenceRenderer
Overrides:
getDepth in class FilteringRenderer
Parameters:
src - the SequenceRenderContext to return info for
Returns:
the depth of the renderer for that sequence panel

processMouseEvent

public FeatureHolder processMouseEvent(FeatureHolder fh,
                                       SequenceRenderContext src,
                                       java.awt.event.MouseEvent me)
Specified by:
processMouseEvent in interface FeatureRenderer

renderFeature

public void renderFeature(java.awt.Graphics2D g2,
                          Feature f,
                          SequenceRenderContext src)
Specified by:
renderFeature in interface FeatureRenderer