X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FIdPanel.java;h=f2761ab44e6b87a0fecf54e67b568e081418d132;hb=acf9118bba86938c8406e7041b4e5a507f4f37a3;hp=065f97ed172efe4cbbdde85b8a154b79d18b29cb;hpb=6b90cce63b09fca914a35d49a1b6883664e48a29;p=jalview.git diff --git a/src/jalview/gui/IdPanel.java b/src/jalview/gui/IdPanel.java index 065f97e..f2761ab 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; @@ -138,7 +138,7 @@ public class IdPanel extends JPanel implements MouseListener, } lastid = seq; - alignPanel.paintAlignment(false); + alignPanel.paintAlignment(false, false); } /** @@ -148,7 +148,8 @@ 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()) { @@ -159,7 +160,7 @@ public class IdPanel extends JPanel implements MouseListener, av.getRanges().scrollUp(false); } } - else + else if (wheelRotation < 0) { if (e.isShiftDown()) { @@ -293,8 +294,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 +314,7 @@ public class IdPanel extends JPanel implements MouseListener, av.isSelectionGroupChanged(true); - alignPanel.paintAlignment(false); + alignPanel.paintAlignment(false, false); } /** @@ -325,23 +326,19 @@ public class IdPanel extends JPanel implements MouseListener, { int seq2 = alignPanel.getSeqPanel().findSeq(e); Sequence sq = (Sequence) av.getAlignment().getSequenceAt(seq2); - // build a new links menu based on the current links + any non-positional - // features + + /* + * build a new links menu based on the current links + * and any non-positional features + */ List nlinks = Preferences.sequenceUrlLinks.getLinksForMenu(); - SequenceFeature sfs[] = sq == null ? null : sq.getSequenceFeatures(); - if (sfs != null) + for (SequenceFeature sf : sq.getFeatures().getNonPositionalFeatures()) { - for (SequenceFeature sf : sfs) + if (sf.links != null) { - if (sf.begin == sf.end && sf.begin == 0) + for (String link : sf.links) { - if (sf.links != null && sf.links.size() > 0) - { - for (int l = 0, lSize = sf.links.size(); l < lSize; l++) - { - nlinks.add(sf.links.elementAt(l)); - } - } + nlinks.add(link); } } } @@ -395,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); } } @@ -511,7 +508,7 @@ public class IdPanel extends JPanel implements MouseListener, running = false; } - alignPanel.paintAlignment(false); + alignPanel.paintAlignment(false, false); try {