git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-1648 house-keeping
[jalview.git]
/
src
/
jalview
/
appletgui
/
OverviewPanel.java
diff --git
a/src/jalview/appletgui/OverviewPanel.java
b/src/jalview/appletgui/OverviewPanel.java
index
0e22af9
..
3ef2936
100755
(executable)
--- a/
src/jalview/appletgui/OverviewPanel.java
+++ b/
src/jalview/appletgui/OverviewPanel.java
@@
-20,6
+20,8
@@
*/
package jalview.appletgui;
*/
package jalview.appletgui;
+import jalview.datamodel.SequenceI;
+import jalview.renderer.seqfeatures.FeatureColourFinder;
import jalview.viewmodel.OverviewDimensions;
import java.awt.Color;
import jalview.viewmodel.OverviewDimensions;
import java.awt.Color;
@@
-61,10
+63,10
@@
public class OverviewPanel extends Panel implements Runnable,
private Frame nullFrame;
private Frame nullFrame;
- public OverviewPanel(AlignmentPanel ap)
+ public OverviewPanel(AlignmentPanel alPanel)
{
{
- this.av = ap.av;
- this.ap = ap;
+ this.av = alPanel.av;
+ this.ap = alPanel;
setLayout(null);
nullFrame = new Frame();
nullFrame.addNotify();
setLayout(null);
nullFrame = new Frame();
nullFrame.addNotify();
@@
-75,7
+77,8
@@
public class OverviewPanel extends Panel implements Runnable,
sr.forOverview = true;
fr = new FeatureRenderer(av);
sr.forOverview = true;
fr = new FeatureRenderer(av);
- od = new OverviewDimensions(av);
+ od = new OverviewDimensions(av.getRanges(),
+ (av.isShowAnnotation() && av.getSequenceConsensusHash() != null));
setSize(new Dimension(od.getWidth(), od.getHeight()));
addComponentListener(new ComponentAdapter()
setSize(new Dimension(od.getWidth(), od.getHeight()));
addComponentListener(new ComponentAdapter()
@@
-140,13
+143,15
@@
public class OverviewPanel extends Panel implements Runnable,
private void mouseAction(MouseEvent evt)
{
private void mouseAction(MouseEvent evt)
{
- od.setBoxPositionByMouse(evt.getX(), evt.getY());
+ od.updateViewportFromMouse(evt.getX(), evt.getY(), av.getAlignment()
+ .getHiddenSequences(), av.getColumnSelection(), av
+ .getRanges());
ap.setScrollValues(od.getScrollCol(), od.getScrollRow());
ap.paintAlignment(false);
}
/**
ap.setScrollValues(od.getScrollCol(), od.getScrollRow());
ap.paintAlignment(false);
}
/**
- * DOCUMENT ME!
+ * Updates the overview image when the related alignment panel is updated
*/
public void updateOverviewImage()
{
*/
public void updateOverviewImage()
{
@@
-163,10
+168,10
@@
public class OverviewPanel extends Panel implements Runnable,
resizing = true;
resizing = true;
- if ((getWidth() > 0) && (getHeight() > 0))
+ if ((getSize().width > 0) && (getSize().height > 0))
{
{
- od.setWidth(getWidth()); // width = getWidth();
- od.setHeight(getHeight()); // sequencesHeight = getHeight() - graphHeight;
+ od.setWidth(getSize().width);
+ od.setHeight(getSize().height);
}
setSize(new Dimension(od.getWidth(), od.getHeight()));
}
setSize(new Dimension(od.getWidth(), od.getHeight()));
@@
-188,7
+193,7
@@
public class OverviewPanel extends Panel implements Runnable,
if (getSize().width > 0 && getSize().height > 0)
{
od.setWidth(getSize().width);
if (getSize().width > 0 && getSize().height > 0)
{
od.setWidth(getSize().width);
- od.setHeight(getSize().height - od.getGraphHeight());
+ od.setHeight(getSize().height);
}
setSize(new Dimension(od.getWidth(), od.getHeight()));
}
setSize(new Dimension(od.getWidth(), od.getHeight()));
@@
-198,8
+203,6
@@
public class OverviewPanel extends Panel implements Runnable,
Graphics mg = miniMe.getGraphics();
Graphics mg = miniMe.getGraphics();
- // od.updateScales();
-
int alwidth = av.getAlignment().getWidth();
int alheight = av.getAlignment().getAbsoluteHeight();
float sampleCol = alwidth / (float) od.getWidth();
int alwidth = av.getAlignment().getWidth();
int alheight = av.getAlignment().getAbsoluteHeight();
float sampleCol = alwidth / (float) od.getWidth();
@@
-207,7
+210,9
@@
public class OverviewPanel extends Panel implements Runnable,
buildImage(sampleRow, sampleCol, mg);
buildImage(sampleRow, sampleCol, mg);
- if (av.getAlignmentConservationAnnotation() != null)
+ // check for conservation annotation to make sure overview works for DNA too
+ if (av.isShowAnnotation()
+ && (av.getAlignmentConservationAnnotation() != null))
{
for (int col = 0; col < od.getWidth() && !resizeAgain; col++)
{
{
for (int col = 0; col < od.getWidth() && !resizeAgain; col++)
{
@@
-233,6
+238,9
@@
public class OverviewPanel extends Panel implements Runnable,
}
}
}
}
+ /*
+ * Build the overview panel image
+ */
private void buildImage(float sampleRow, float sampleCol, Graphics mg)
{
int lastcol = 0;
private void buildImage(float sampleRow, float sampleCol, Graphics mg)
{
int lastcol = 0;
@@
-243,7
+251,8
@@
public class OverviewPanel extends Panel implements Runnable,
int sameRow = 0;
int sameCol = 0;
int sameRow = 0;
int sameCol = 0;
- jalview.datamodel.SequenceI seq = null;
+ SequenceI seq = null;
+ FeatureColourFinder finder = new FeatureColourFinder(fr);
final boolean hasHiddenCols = av.hasHiddenColumns();
boolean hiddenRow = false;
final boolean hasHiddenCols = av.hasHiddenColumns();
boolean hiddenRow = false;
@@
-273,7
+282,7
@@
public class OverviewPanel extends Panel implements Runnable,
lastcol = (int) (col * sampleCol);
color = getColumnColourFromSequence(seq, hiddenRow,
lastcol = (int) (col * sampleCol);
color = getColumnColourFromSequence(seq, hiddenRow,
- hasHiddenCols, lastcol);
+ hasHiddenCols, lastcol, finder);
mg.setColor(color);
if (sameCol == 1 && sameRow == 1)
mg.setColor(color);
if (sameCol == 1 && sameRow == 1)
@@
-294,7
+303,6
@@
public class OverviewPanel extends Panel implements Runnable,
sameRow = 1;
}
}
sameRow = 1;
}
}
-
}
/*
}
/*
@@
-302,21
+310,12
@@
public class OverviewPanel extends Panel implements Runnable,
*/
private Color getColumnColourFromSequence(
jalview.datamodel.SequenceI seq, boolean hiddenRow,
*/
private Color getColumnColourFromSequence(
jalview.datamodel.SequenceI seq, boolean hiddenRow,
- boolean hasHiddenCols, int lastcol)
+ boolean hasHiddenCols, int lastcol, FeatureColourFinder finder)
{
{
- Color color;
+ Color color = Color.white;
if (seq.getLength() > lastcol)
{
if (seq.getLength() > lastcol)
{
- color = sr.getResidueBoxColour(seq, lastcol);
-
- if (av.isShowSequenceFeatures())
- {
- color = fr.findFeatureColour(color, seq, lastcol);
- }
- }
- else
- {
- color = Color.white; // White
+ color = sr.getResidueColour(seq, lastcol, finder);
}
if (hiddenRow
}
if (hiddenRow
@@
-335,7
+334,8
@@
public class OverviewPanel extends Panel implements Runnable,
*/
public void setBoxPosition()
{
*/
public void setBoxPosition()
{
- od.setBoxPosition();
+ od.setBoxPosition(av.getAlignment()
+ .getHiddenSequences(), av.getColumnSelection(), av.getRanges());
repaint();
}
repaint();
}