Fixes redraw top of group bug
[jalview.git] / src / jalview / appletgui / IdPanel.java
index f3db9be..71acfa2 100755 (executable)
@@ -50,14 +50,17 @@ public class IdPanel
     idCanvas.addMouseMotionListener(this);\r
 \r
     String label, url;\r
-    for(int i=1; i<10; i++)\r
+    if(parent.alignFrame.applet!=null)\r
     {\r
-      label = parent.alignFrame.applet.getParameter("linkLabel_"+i);\r
-      url = parent.alignFrame.applet.getParameter("linkURL_"+i);\r
+      for (int i = 1; i < 10; i++)\r
+      {\r
+        label = parent.alignFrame.applet.getParameter("linkLabel_" + i);\r
+        url = parent.alignFrame.applet.getParameter("linkURL_" + i);\r
 \r
-      if(label!=null && url!=null)\r
-        links.addElement(label+"|"+url);\r
+        if (label != null && url != null)\r
+          links.addElement(label + "|" + url);\r
 \r
+      }\r
     }\r
     if (links.size() < 1)\r
     {\r
@@ -113,6 +116,8 @@ public class IdPanel
     //DEFAULT LINK IS FIRST IN THE LINK LIST\r
     int seq = av.getIndex(y);\r
     String id = av.getAlignment().getSequenceAt(seq).getName();\r
+    if (id.indexOf("|") > -1)\r
+        id = id.substring(id.lastIndexOf("|") + 1);\r
 \r
     String target = links.elementAt(0).toString();\r
     target = target.substring(0, target.indexOf("|"));\r
@@ -124,7 +129,8 @@ public class IdPanel
 \r
     try\r
     {\r
-      jalview.bin.JalviewLite.showURL(url, target);\r
+\r
+      alignPanel.alignFrame.showURL(url, target);\r
     }\r
     catch (Exception ex)\r
     {\r
@@ -187,31 +193,15 @@ public class IdPanel
       return;\r
     }\r
 \r
-    if (!e.isControlDown() && !e.isShiftDown() &&\r
-        av.alignment.findGroup(av.alignment.getSequenceAt(seq)) != null)\r
-    {\r
-\r
-      SequenceGroup selection = new SequenceGroup();\r
-      SequenceGroup sg = av.alignment.findGroup(av.alignment.getSequenceAt(seq));\r
-      selection.setStartRes(0);\r
-      selection.setEndRes(av.alignment.getWidth() - 1);\r
-      for (int i = 0; i < sg.getSize(); i++)\r
-      {\r
-        selection.addSequence(sg.getSequenceAt(i), true);\r
-      }\r
-\r
-      av.setSelectionGroup(selection);\r
-      return;\r
-    }\r
 \r
-    if (av.getSelectionGroup() == null ||\r
-        (!e.isControlDown() && av.getSelectionGroup() != null))\r
+    if ((av.getSelectionGroup() == null) ||\r
+            ((!e.isControlDown() && !e.isShiftDown()) && av.getSelectionGroup() != null))\r
     {\r
       av.setSelectionGroup(new SequenceGroup());\r
+      av.getSelectionGroup().setStartRes(0);\r
+      av.getSelectionGroup().setEndRes(av.alignment.getWidth() - 1);\r
     }\r
 \r
-    av.getSelectionGroup().setStartRes(0);\r
-    av.getSelectionGroup().setEndRes(av.alignment.getWidth() - 1);\r
 \r
     if (e.isShiftDown() && lastid != -1)\r
     {\r