if (horizontal > 0) // scrollbar pulled right, image to the left
{
- er++;
transX = (er - sr - horizontal) * charWidth;
sr = er - horizontal;
}
else if (horizontal < 0)
{
- er = sr - horizontal - 1;
+ er = sr - horizontal;
}
else if (vertical > 0) // scroll down
{
av.setWrappedWidth(cWidth);
- av.getRanges().setEndRes(av.getRanges().getStartRes() + cWidth);
+ av.getRanges().setEndRes(av.getRanges().getStartRes() + cWidth - 1);
int endx;
int ypos = hgap;
@Override
public void propertyChange(PropertyChangeEvent evt)
{
-
- if (evt.getPropertyName().equals("startres")
- || evt.getPropertyName().equals("endres"))
+ if (av.getWrapAlignment())
{
- // Make sure we're not trying to draw a panel
- // larger than the visible window
- ViewportRanges vpRanges = av.getRanges();
- int scrollX = (int) evt.getNewValue() - (int) evt.getOldValue();
- if (scrollX > vpRanges.getEndRes() - vpRanges.getStartRes())
+ if (evt.getPropertyName().equals("startres")
+ || evt.getPropertyName().equals("endres"))
{
- scrollX = vpRanges.getEndRes() - vpRanges.getStartRes();
+ // Make sure we're not trying to draw a panel
+ // larger than the visible window
+ ViewportRanges vpRanges = av.getRanges();
+ int scrollX = (int) evt.getNewValue() - (int) evt.getOldValue();
+ if (scrollX > vpRanges.getEndRes() - vpRanges.getStartRes())
+ {
+ scrollX = vpRanges.getEndRes() - vpRanges.getStartRes();
+ }
+ else if (scrollX < vpRanges.getStartRes() - vpRanges.getEndRes())
+ {
+ scrollX = vpRanges.getStartRes() - vpRanges.getEndRes();
+ }
+ fastPaint(scrollX, 0);
}
- else if (scrollX < vpRanges.getStartRes() - vpRanges.getEndRes())
+ else if (evt.getPropertyName() == "startseq"
+ || evt.getPropertyName() == "endseq")
{
- scrollX = vpRanges.getStartRes() - vpRanges.getEndRes();
+ fastPaint(0, (int) evt.getNewValue() - (int) evt.getOldValue());
}
- fastPaint(scrollX, 0);
- }
- else if (evt.getPropertyName() == "startseq"
- || evt.getPropertyName() == "endseq")
- {
- fastPaint(0, (int) evt.getNewValue() - (int) evt.getOldValue());
}
-
}
}