X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FIdPanel.java;h=1a61429c0fe36469b6faa58a2590cb74f28d009d;hb=cd71fb9ef1a21678ad648ba13564b658b53ab834;hp=d159a4ceee454ab487d80add3080b7e04d3b7fc8;hpb=55e2e9b22b133db8b9ff0979b0338a33081fc8fd;p=jalview.git diff --git a/src/jalview/appletgui/IdPanel.java b/src/jalview/appletgui/IdPanel.java index d159a4c..1a61429 100755 --- a/src/jalview/appletgui/IdPanel.java +++ b/src/jalview/appletgui/IdPanel.java @@ -69,8 +69,42 @@ public class IdPanel } } + Tooltip tooltip; public void mouseMoved(MouseEvent e) - {} + { + int y = e.getY(); + if (av.getWrapAlignment()) + { + y -= 2 * av.charHeight; + } + + int seq = av.getIndex(y); + if (seq == -1) + { + return; + } + + SequenceI sequence = av.getAlignment().getSequenceAt(seq); + + if(sequence.getDescription()==null) + { + if(tooltip!=null) + tooltip.setVisible(false); + tooltip = null; + return; + } + + if (tooltip == null) + tooltip = new Tooltip( + sequence.getDisplayId(true) + + "\n" + sequence.getDescription(), idCanvas); + else + tooltip.setTip(sequence.getDisplayId(true) + + "\n" + sequence.getDescription()); + + tooltip.repaint(); + + } public void mouseDragged(MouseEvent e) { @@ -193,31 +227,15 @@ public class IdPanel return; } - if (!e.isControlDown() && !e.isShiftDown() && - av.alignment.findGroup(av.alignment.getSequenceAt(seq)) != null) - { - - SequenceGroup selection = new SequenceGroup(); - SequenceGroup sg = av.alignment.findGroup(av.alignment.getSequenceAt(seq)); - selection.setStartRes(0); - selection.setEndRes(av.alignment.getWidth() - 1); - for (int i = 0; i < sg.getSize(); i++) - { - selection.addSequence(sg.getSequenceAt(i), true); - } - - av.setSelectionGroup(selection); - return; - } - if (av.getSelectionGroup() == null || - (!e.isControlDown() && av.getSelectionGroup() != null)) + if ((av.getSelectionGroup() == null) || + ((!e.isControlDown() && !e.isShiftDown()) && av.getSelectionGroup() != null)) { av.setSelectionGroup(new SequenceGroup()); + av.getSelectionGroup().setStartRes(0); + av.getSelectionGroup().setEndRes(av.alignment.getWidth() - 1); } - av.getSelectionGroup().setStartRes(0); - av.getSelectionGroup().setEndRes(av.alignment.getWidth() - 1); if (e.isShiftDown() && lastid != -1) {