X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Frenderer%2Fseqfeatures%2FFeatureRenderer.java;h=5d3aa2d2dfcc9dfc364a516205ac84c8d23686c6;hb=7c621eb034de40a389393ae4a97762328f5b3046;hp=648f77672e71087536bf8b5b9a45f33b12d41674;hpb=be32c14cd8e48fe0a207cd7030cb9cd46f894678;p=jalview.git diff --git a/src/jalview/renderer/seqfeatures/FeatureRenderer.java b/src/jalview/renderer/seqfeatures/FeatureRenderer.java index 648f776..5d3aa2d 100644 --- a/src/jalview/renderer/seqfeatures/FeatureRenderer.java +++ b/src/jalview/renderer/seqfeatures/FeatureRenderer.java @@ -1,7 +1,28 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.renderer.seqfeatures; import jalview.datamodel.SequenceFeature; import jalview.datamodel.SequenceI; +import jalview.viewmodel.seqfeatures.FeatureRendererModel; import java.awt.AlphaComposite; import java.awt.Color; @@ -10,8 +31,7 @@ import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.image.BufferedImage; -public class FeatureRenderer extends - jalview.viewmodel.seqfeatures.FeatureRendererModel +public class FeatureRenderer extends FeatureRendererModel { FontMetrics fm; @@ -30,6 +50,8 @@ public class FeatureRenderer extends boolean av_validCharWidth, av_isShowSeqFeatureHeight; + private Integer currentColour; + protected void updateAvConfig() { av_charHeight = av.getCharHeight(); @@ -77,6 +99,7 @@ public class FeatureRenderer extends charOffset = (av_charWidth - fm.charWidth(s)) / 2; g.drawString(String.valueOf(s), charOffset + (av_charWidth * (i - start)), pady); + } } } @@ -147,17 +170,18 @@ public class FeatureRenderer extends BufferedImage offscreenImage; + @Override public Color findFeatureColour(Color initialCol, SequenceI seq, int res) { return new Color(findFeatureColour(initialCol.getRGB(), seq, res)); } /** - * This is used by the Molecule Viewer and Overview to get the accurate - * colourof the rendered sequence + * This is used by the Molecule Viewer and Overview to get the accurate colour + * of the rendered sequence */ - public synchronized int findFeatureColour(int initialCol, final SequenceI seq, - int column) + public synchronized int findFeatureColour(int initialCol, + final SequenceI seq, int column) { if (!av.isShowSequenceFeatures()) { @@ -224,7 +248,7 @@ public class FeatureRenderer extends } else { - return ((Integer) currentColour).intValue(); + return currentColour.intValue(); } } @@ -348,7 +372,7 @@ public class FeatureRenderer extends else if (showFeature(sequenceFeature)) { if (av_isShowSeqFeatureHeight - && sequenceFeature.score != Float.NaN) + && !Float.isNaN(sequenceFeature.score)) { renderScoreFeature(g, seq, seq.findIndex(sequenceFeature.begin) - 1, @@ -368,7 +392,7 @@ public class FeatureRenderer extends } - if (transparency != 1.0f && g != null && transparencyAvailable) + if (transparency != 1.0f && g != null) { Graphics2D g2 = (Graphics2D) g; g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, @@ -376,24 +400,12 @@ public class FeatureRenderer extends } } - boolean transparencyAvailable = true; - - protected void setTransparencyAvailable(boolean isTransparencyAvailable) - { - transparencyAvailable = isTransparencyAvailable; - } - - @Override - public boolean isTransparencyAvailable() - { - return transparencyAvailable; - } - /** * Called when alignment in associated view has new/modified features to * discover and display. * */ + @Override public void featuresAdded() { lastSeq = null;