*/
package jalview.gui;
+import jalview.datamodel.SequenceI;
import jalview.renderer.AnnotationRenderer;
import jalview.viewmodel.OverviewDimensions;
sr.forOverview = true;
fr = new FeatureRenderer(alPanel);
- boolean showAnnotation = true;
- // TODO: in applet this was getSequenceConsensusHash()
- // check if it makes any functional difference: hconsensus or conservation
- if (av.getAlignmentConservationAnnotation() == null)
- {
- showAnnotation = false;
- }
- od = new OverviewDimensions(av.getPosProps(), showAnnotation);
+ od = new OverviewDimensions(av.getPosProps(), av.isShowAnnotation());
addComponentListener(new ComponentAdapter()
{
{
if (!av.getWrapAlignment())
{
- // TODO: feature: jv2.5 detect shift drag and update selection from
- // it.
od.updateViewportFromMouse(evt.getX(), evt.getY(), av
.getAlignment().getHiddenSequences(), av
.getColumnSelection(), av.getPosProps());
if ((getWidth() > 0) && (getHeight() > 0))
{
- od.setWidth(getWidth()); // width = getWidth();
- od.setHeight(getHeight()); // sequencesHeight = getHeight() - graphHeight;
+ od.setWidth(getWidth());
+ od.setHeight(getHeight());
}
setPreferredSize(new Dimension(od.getWidth(), od.getHeight()));
buildImage(sampleRow, sampleCol);
- if (av.getAlignmentConservationAnnotation() != null)
+ if (av.isShowAnnotation())
{
renderer.updateFromAlignViewport(av);
for (int col = 0; col < od.getWidth() && !resizeAgain; col++)
setBoxPosition();
}
+ /*
+ * Build the overview panel image
+ */
private void buildImage(float sampleRow, float sampleCol)
{
int lastcol = -1;
int lastrow = -1;
int color = Color.white.getRGB();
- jalview.datamodel.SequenceI seq = null;
+ SequenceI seq = null;
final boolean hasHiddenCols = av.hasHiddenColumns();
boolean hiddenRow = false;
seq = av.getAlignment().getSequenceAtAbsoluteIndex(lastrow);
}
- if (seq == null)
- {
- System.out.println(lastrow + " null");
- continue;
- }
-
for (int col = 0; col < od.getWidth() && !resizeAgain; col++)
{
if (doCopy)
color = getColumnColourFromSequence(seq, hiddenRow, hasHiddenCols,
lastcol);
}
- // else if ((int) (col * sampleCol) == lastcol && (int) (row *
- // sampleRow) == lastrow))
- // we just use the color we already have , so don't need to set it
+ // else we just use the color we already have , so don't need to set it
miniMe.setRGB(col, row, color);
}
{
int color;
- if (seq.getLength() > lastcol)
+ if (seq == null)
+ {
+ color = Color.white.getRGB();
+ }
+ else if (seq.getLength() > lastcol)
{
color = sr.getResidueBoxColour(seq, lastcol).getRGB();
}
else
{
- color = Color.white.getRGB(); // White
+ color = Color.white.getRGB();
}
if (hiddenRow
g.fillRect(0, 0, getWidth(), getHeight());
}
}
- // TODO: render selected regions
+
g.setColor(Color.red);
od.drawBox(g);
}