+ * In unwrapped mode, only responds to a vertical scroll, as horizontal scroll + * leaves sequence ids unchanged. In wrapped mode, only vertical scroll is + * provided, but it generates a change of "startres" which does require an + * update here. + */ + @Override + public void propertyChange(PropertyChangeEvent evt) + { + String propertyName = evt.getPropertyName(); + if (propertyName.equals(ViewportRanges.STARTSEQ) + || (av.getWrapAlignment() + && propertyName.equals(ViewportRanges.STARTRES))) + { + fastPaint((int) evt.getNewValue() - (int) evt.getOldValue()); + } + else if (propertyName.equals(ViewportRanges.STARTRESANDSEQ)) + { + fastPaint(((int[]) evt.getNewValue())[1] + - ((int[]) evt.getOldValue())[1]); + } + } +}