X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FIdPanel.java;h=3c7e06fcb302fc6b66c9f30380823c50cad3a3c3;hb=36cb7e0a22de94370c4397d1d7feffcfe72a88fc;hp=1271fa39c0c652ea08e4e56dd845bb85843e9c7f;hpb=33efc987cb15d2c0d914a8e4299bb77a63c056b2;p=jalview.git diff --git a/src/jalview/gui/IdPanel.java b/src/jalview/gui/IdPanel.java index 1271fa3..3c7e06f 100755 --- a/src/jalview/gui/IdPanel.java +++ b/src/jalview/gui/IdPanel.java @@ -48,8 +48,8 @@ import javax.swing.ToolTipManager; * @author $author$ * @version $Revision$ */ -public class IdPanel extends JPanel implements MouseListener, - MouseMotionListener, MouseWheelListener +public class IdPanel extends JPanel + implements MouseListener, MouseMotionListener, MouseWheelListener { private IdCanvas idCanvas; @@ -108,8 +108,7 @@ public class IdPanel extends JPanel implements MouseListener, SequenceI sequence = av.getAlignment().getSequenceAt(seq); StringBuilder tip = new StringBuilder(64); seqAnnotReport.createTooltipAnnotationReport(tip, sequence, - av.isShowDBRefs(), av.isShowNPFeats(), - sp.seqCanvas.fr.getMinMax()); + av.isShowDBRefs(), av.isShowNPFeats(), sp.seqCanvas.fr); setToolTipText(JvSwingUtils.wrapTooltip(true, sequence.getDisplayId(true) + " " + tip.toString())); } @@ -138,7 +137,7 @@ public class IdPanel extends JPanel implements MouseListener, } lastid = seq; - alignPanel.paintAlignment(false); + alignPanel.paintAlignment(false, false); } /** @@ -148,24 +147,25 @@ public class IdPanel extends JPanel implements MouseListener, public void mouseWheelMoved(MouseWheelEvent e) { e.consume(); - if (e.getWheelRotation() > 0) + double wheelRotation = e.getPreciseWheelRotation(); + if (wheelRotation > 0) { if (e.isShiftDown()) { av.getRanges().scrollRight(true); } - else if (!av.getWrapAlignment()) + else { av.getRanges().scrollUp(false); } } - else + else if (wheelRotation < 0) { if (e.isShiftDown()) { av.getRanges().scrollRight(false); } - else if (!av.getWrapAlignment()) + else { av.getRanges().scrollUp(true); } @@ -293,8 +293,8 @@ public class IdPanel extends JPanel implements MouseListener, } if ((av.getSelectionGroup() == null) - || (!jalview.util.Platform.isControlDown(e) && !e.isShiftDown() && av - .getSelectionGroup() != null)) + || (!jalview.util.Platform.isControlDown(e) && !e.isShiftDown() + && av.getSelectionGroup() != null)) { av.setSelectionGroup(new SequenceGroup()); av.getSelectionGroup().setStartRes(0); @@ -313,7 +313,7 @@ public class IdPanel extends JPanel implements MouseListener, av.isSelectionGroupChanged(true); - alignPanel.paintAlignment(false); + alignPanel.paintAlignment(false, false); } /** @@ -331,7 +331,8 @@ public class IdPanel extends JPanel implements MouseListener, * and any non-positional features */ List nlinks = Preferences.sequenceUrlLinks.getLinksForMenu(); - for (SequenceFeature sf : sq.getFeatures().getNonPositionalFeatures()) + List features = sq.getFeatures().getNonPositionalFeatures(); + for (SequenceFeature sf : features) { if (sf.links != null) { @@ -342,7 +343,7 @@ public class IdPanel extends JPanel implements MouseListener, } } - PopupMenu pop = new PopupMenu(alignPanel, sq, nlinks, + PopupMenu pop = new PopupMenu(alignPanel, sq, features, Preferences.getGroupURLLinks()); pop.show(this, e.getX(), e.getY()); } @@ -391,8 +392,8 @@ public class IdPanel extends JPanel implements MouseListener, for (int i = start; i <= end; i++) { - av.getSelectionGroup().addSequence( - av.getAlignment().getSequenceAt(i), i == end); + av.getSelectionGroup().addSequence(av.getAlignment().getSequenceAt(i), + i == end); } } @@ -429,10 +430,11 @@ public class IdPanel extends JPanel implements MouseListener, */ public void highlightSearchResults(List list) { - getIdCanvas().setHighlighted(list); + av.setHighlightedSeqs(list); if (list == null) { + idCanvas.repaint(); return; } @@ -444,6 +446,11 @@ public class IdPanel extends JPanel implements MouseListener, { av.getRanges().setStartSeq(index); } + else + { + // just repaint + idCanvas.repaint(); + } } public IdCanvas getIdCanvas() @@ -507,7 +514,7 @@ public class IdPanel extends JPanel implements MouseListener, running = false; } - alignPanel.paintAlignment(false); + alignPanel.paintAlignment(false, false); try {