Merge branch 'features/JAL-1723_sequenceReport' into develop
[jalview.git] / src / jalview / appletgui / APopupMenu.java
index d625f78..160224b 100644 (file)
@@ -24,7 +24,6 @@ import jalview.analysis.AAFrequency;
 import jalview.analysis.AlignmentAnnotationUtils;
 import jalview.analysis.AlignmentUtils;
 import jalview.analysis.Conservation;
-import jalview.bin.Cache;
 import jalview.commands.ChangeCaseCommand;
 import jalview.commands.EditCommand;
 import jalview.commands.EditCommand.Action;
@@ -320,13 +319,14 @@ public class APopupMenu extends java.awt.PopupMenu implements
         urlLink = new UrlLink(link);
       } catch (Exception foo)
       {
-        Cache.log.error("Exception for URLLink '" + link + "'", foo);
+        System.err.println("Exception for URLLink '" + link + "': "
+                + foo.getMessage());
         continue;
       }
 
       if (!urlLink.isValid())
       {
-        Cache.log.error(urlLink.getInvalidMessage());
+        System.err.println(urlLink.getInvalidMessage());
         continue;
       }
 
@@ -335,17 +335,25 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
     addshowLinks(linkMenu, linkset.values());
 
+    // disable link menu if there are no valid entries
     if (linkMenu.getItemCount() > 0)
     {
-      if (seq != null)
-      {
-        seqMenu.add(linkMenu);
-      }
-      else
-      {
-        add(linkMenu);
-      }
+      linkMenu.setEnabled(true);
+    }
+    else
+    {
+      linkMenu.setEnabled(false);
     }
+
+    if (seq != null)
+    {
+      seqMenu.add(linkMenu);
+    }
+    else
+    {
+      add(linkMenu);
+    }
+
   }
 
   private void addshowLinks(Menu linkMenu, Collection<List<String>> linkset)
@@ -794,7 +802,7 @@ public class APopupMenu extends java.awt.PopupMenu implements
 
     CutAndPasteTransfer cap = new CutAndPasteTransfer(false, ap.alignFrame);
 
-    StringBuffer contents = new StringBuffer();
+    StringBuilder contents = new StringBuilder(128);
     for (SequenceI seq : sequences)
     {
       contents.append(MessageManager.formatMessage(
@@ -805,7 +813,6 @@ public class APopupMenu extends java.awt.PopupMenu implements
               seq,
               true,
               true,
-              false,
               (ap.seqPanel.seqCanvas.fr != null) ? ap.seqPanel.seqCanvas.fr
                       .getMinMax() : null);
       contents.append("</p>");