formatting
[jalview.git] / src / jalview / gui / AnnotationPanel.java
index e0b36d3..0f6901d 100755 (executable)
@@ -167,6 +167,15 @@ public class AnnotationPanel extends JPanel implements MouseListener,
         AlignmentAnnotation[] aa = av.alignment.getAlignmentAnnotation();\r
         Annotation[] anot = aa[activeRow].annotations;\r
 \r
+        if (anot.length < av.getColumnSelection().getMax())\r
+        {\r
+          Annotation[] temp = new Annotation[av.getColumnSelection().getMax()+2 ];\r
+          System.arraycopy(anot, 0, temp, 0, anot.length);\r
+          anot = temp;\r
+          aa[activeRow].annotations = anot;\r
+        }\r
+\r
+\r
         if (evt.getActionCommand().equals(REMOVE))\r
         {\r
             for (int i = 0; i < av.getColumnSelection().size(); i++)\r
@@ -492,6 +501,7 @@ public class AnnotationPanel extends JPanel implements MouseListener,
 \r
         if (aa == null)\r
         {\r
+          this.setToolTipText(null);\r
             return;\r
         }\r
 \r
@@ -514,7 +524,10 @@ public class AnnotationPanel extends JPanel implements MouseListener,
         }\r
 \r
         if(row==-1)\r
-          return;\r
+       {\r
+         this.setToolTipText(null);\r
+         return;\r
+       }\r
 \r
         int res = (evt.getX() / av.getCharWidth()) + av.getStartRes();\r
 \r
@@ -539,18 +552,23 @@ public class AnnotationPanel extends JPanel implements MouseListener,
                 this.setToolTipText(tip.toString() + "</html>");\r
               }\r
             }\r
-            else if(aa[row].annotations[res] != null)\r
+            else if(aa[row].annotations[res] != null\r
+                    && aa[row].annotations[res].description!=null)\r
               this.setToolTipText(aa[row].annotations[res].description);\r
 \r
             if(aa[row].annotations[res]!=null)\r
             {\r
               StringBuffer text = new StringBuffer("Sequence position " +\r
-                                                   (res + 1) + "  " +\r
-                                                   aa[row].annotations[res].description);\r
+                                                   (res + 1));\r
+\r
+              if (aa[row].annotations[res].description != null)\r
+                text.append("  " + aa[row].annotations[res].description);\r
 \r
               ap.alignFrame.statusBar.setText(text.toString());\r
             }\r
         }\r
+        else\r
+          this.setToolTipText(null);\r
     }\r
 \r
     /**\r