## org.biojava.bio.gui.sequence
Class GlyphFeatureRenderer

    java.lang.Object
      org.biojava.utils.AbstractChangeable
          org.biojava.bio.gui.sequence.SequenceRendererWrapper
              org.biojava.bio.gui.sequence.FilteringRenderer
                  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`