git://source.jalview.org
/
jalview.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
1deb632
)
Fast paint update
author
amwaterhouse
<Andrew Waterhouse>
Mon, 30 Jan 2006 14:54:54 +0000
(14:54 +0000)
committer
amwaterhouse
<Andrew Waterhouse>
Mon, 30 Jan 2006 14:54:54 +0000
(14:54 +0000)
src/jalview/gui/AlignmentPanel.java
patch
|
blob
|
history
diff --git
a/src/jalview/gui/AlignmentPanel.java
b/src/jalview/gui/AlignmentPanel.java
index
3ebc57c
..
fdd01d3
100755
(executable)
--- a/
src/jalview/gui/AlignmentPanel.java
+++ b/
src/jalview/gui/AlignmentPanel.java
@@
-81,9
+81,7
@@
public class AlignmentPanel extends GAlignmentPanel
annotationPanel = new AnnotationPanel(this);
\r
alabels = new AnnotationLabels(this);
\r
\r
annotationPanel = new AnnotationPanel(this);
\r
alabels = new AnnotationLabels(this);
\r
\r
- annotationSpaceFillerHolder.setPreferredSize(annotationPanel.
\r
- getPreferredSize());
\r
- annotationScroller.setPreferredSize(annotationPanel.getPreferredSize());
\r
+
\r
annotationScroller.setViewportView(annotationPanel);
\r
annotationSpaceFillerHolder.add(alabels, BorderLayout.CENTER);
\r
\r
annotationScroller.setViewportView(annotationPanel);
\r
annotationSpaceFillerHolder.add(alabels, BorderLayout.CENTER);
\r
\r
@@
-491,28
+489,33
@@
public class AlignmentPanel extends GAlignmentPanel
overviewPanel.setBoxPosition();
\r
}
\r
\r
overviewPanel.setBoxPosition();
\r
}
\r
\r
- int xShift = av.getStartRes() - oldX;
\r
- int yShift = av.getStartSeq() - oldY;
\r
+ int scrollX = av.startRes - oldX;
\r
+ int scrollY = av.startSeq - oldY;
\r
\r
\r
- if ( (xShift != 0 && yShift != 0) ||
\r
- (Math.abs(xShift) > av.getEndRes() - av.getStartRes()
\r
- || Math.abs(yShift) > av.getEndSeq() - av.getStartSeq())
\r
- || av.getWrapAlignment()
\r
- || !fastPaint)
\r
+ if (av.getWrapAlignment() || !fastPaint)
\r
{
\r
{
\r
- // Either no shift at all, or shift greater than visible amount
\r
repaint();
\r
}
\r
else
\r
{
\r
repaint();
\r
}
\r
else
\r
{
\r
- idPanel.idCanvas.fastPaint(yShift);
\r
- seqPanel.seqCanvas.fastPaint(xShift, yShift);
\r
-
\r
- scalePanel.repaint();
\r
-
\r
- if (av.getShowAnnotation())
\r
+ // Make sure we're not trying to draw a panel
\r
+ // larger than the visible window
\r
+ if(scrollX>av.endRes-av.startRes)
\r
+ scrollX = av.endRes-av.startRes;
\r
+ else if(scrollX<av.startRes-av.endRes)
\r
+ scrollX = av.startRes - av.endRes;
\r
+
\r
+ if(scrollX!=0 || scrollY!=0)
\r
{
\r
{
\r
- annotationPanel.fastPaint(xShift);
\r
+ idPanel.idCanvas.fastPaint(scrollY);
\r
+ seqPanel.seqCanvas.fastPaint(scrollX,
\r
+ scrollY);
\r
+ scalePanel.repaint();
\r
+
\r
+ if (av.getShowAnnotation())
\r
+ {
\r
+ annotationPanel.fastPaint(scrollX);
\r
+ }
\r
}
\r
}
\r
}
\r
}
\r
}
\r
}
\r