*/
package jalview.gui;
-import jalview.api.AlignViewportI;
-import jalview.bin.Cache;
-import jalview.renderer.OverviewRenderer;
-import jalview.renderer.OverviewResColourFinder;
-import jalview.viewmodel.OverviewDimensions;
-import jalview.viewmodel.seqfeatures.FeatureRendererModel;
-
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.JPanel;
+import jalview.api.AlignViewportI;
+import jalview.bin.Cache;
+import jalview.renderer.OverviewRenderer;
+import jalview.renderer.OverviewResColourFinder;
+import jalview.viewmodel.OverviewDimensions;
+import jalview.viewmodel.seqfeatures.FeatureRendererModel;
+
public class OverviewCanvas extends JPanel
{
+ public static final Color OVERVIEW_DEFAULT_GAP = Color.lightGray;
+
+ public static final Color OVERVIEW_DEFAULT_LEGACY_GAP = Color.white;
+
+ public static final Color OVERVIEW_DEFAULT_RESIDUE = Color.white;
+
+ public static final Color OVERVIEW_DEFAULT_LEGACY_RESIDUE = Color.lightGray;
+
+ public static final Color OVERVIEW_DEFAULT_HIDDEN = Color.darkGray
+ .darker();
+
private static final Color TRANS_GREY = new Color(100, 100, 100, 25);
// This is set true if the alignment view changes whilst
boolean useLegacy = Cache.getDefault(Preferences.USE_LEGACY_GAP, false);
Color gapCol = Cache.getDefaultColour(Preferences.GAP_COLOUR,
- jalview.renderer.OverviewResColourFinder.OVERVIEW_DEFAULT_GAP);
+ OVERVIEW_DEFAULT_GAP);
Color hiddenCol = Cache.getDefaultColour(Preferences.HIDDEN_COLOUR,
- jalview.renderer.OverviewResColourFinder.OVERVIEW_DEFAULT_HIDDEN);
- cf = new OverviewResColourFinder(useLegacy, gapCol, hiddenCol);
+ OVERVIEW_DEFAULT_HIDDEN);
+ Color residueCol = useLegacy ? OVERVIEW_DEFAULT_LEGACY_RESIDUE : OVERVIEW_DEFAULT_RESIDUE;
+
+ cf = new OverviewResColourFinder(gapCol, residueCol, hiddenCol);
setSize(od.getWidth(), od.getHeight());
}
@Override
public void paintComponent(Graphics g)
{
- //super.paintComponent(g);
+ // super.paintComponent(g);
if (restart)
{
{
// if there is annotation, scale the alignment and annotation
// separately
- if (od.getGraphHeight() > 0
- && od.getSequencesHeight() > 0 // BH 2019
- )
+ if (od.getGraphHeight() > 0 && od.getSequencesHeight() > 0 // BH 2019
+ )
{
BufferedImage topImage = lastMiniMe.getSubimage(0, 0,
od.getWidth(), od.getSequencesHeight());
{
g.drawImage(lastMiniMe, 0, 0, getWidth(), getHeight(), this);
}
-
+
// draw the box
g.setColor(Color.red);
od.drawBox(g);
}
-
public void dispose()
{
dispose = true;
}
}
}
+
+ public Color getGapColour()
+ {
+ return cf.getGapColour();
+ }
+
+ public Color getHiddenColour()
+ {
+ return cf.getHiddenColour();
+ }
+
+ public Color getResidueColour()
+ {
+ return cf.getResidueColour();
+ }
+
+ /**
+ * Sets the colours to use for gaps, residues and hidden regions
+ *
+ * @param gaps
+ * @param residues
+ * @param hidden
+ */
+ public void setColours(Color gaps, Color residues, Color hidden)
+ {
+ cf = new OverviewResColourFinder(gaps, residues, hidden);
+ }
}