Merge branch 'develop' into features/mchmmer
[jalview.git] / src / jalview / gui / PopupMenu.java
index 0cf7ef4..8710031 100644 (file)
@@ -158,6 +158,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
 
   JMenuItem sequenceFeature = new JMenuItem();
 
+
   JMenuItem textColour = new JMenuItem();
 
   JMenu jMenu1 = new JMenu();
@@ -233,8 +234,8 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
      * currently selected sequence (if there is one):
      */
     final List<SequenceI> selectedSequence = (seq == null
-            ? Collections.<SequenceI> emptyList()
-            : Arrays.asList(seq));
+            ? Collections.<SequenceI> emptyList() : Arrays.asList(seq));
+
     buildAnnotationTypesMenus(seqShowAnnotationsMenu,
             seqHideAnnotationsMenu, selectedSequence);
     configureReferenceAnnotationsMenu(seqAddReferenceAnnotations,
@@ -359,6 +360,23 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
       });
       add(menuItem);
 
+      if (sequence.isHMMConsensusSequence())
+      {
+        JMenuItem selectHMM = new JCheckBoxMenuItem();
+        selectHMM.setText(MessageManager.getString("label.select_hmm"));
+        selectHMM.addActionListener(new ActionListener()
+        {
+
+          @Override
+          public void actionPerformed(ActionEvent e)
+          {
+            selectHMM_actionPerformed(e);
+          }
+        });
+        add(selectHMM);
+      }
+
+
       if (alignPanel.av.getSelectionGroup() != null
               && alignPanel.av.getSelectionGroup().getSize() > 1)
       {
@@ -461,7 +479,8 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
         buildGroupURLMenu(sg, groupLinks);
       }
       // Add a 'show all structures' for the current selection
-      Hashtable<String, PDBEntry> pdbe = new Hashtable<>(), reppdb = new Hashtable<>();
+      Hashtable<String, PDBEntry> pdbe = new Hashtable<>();
+      Hashtable<String, PDBEntry> reppdb = new Hashtable<>();
 
       SequenceI sqass = null;
       for (SequenceI sq : alignPanel.av.getSequenceSelection())
@@ -1351,6 +1370,13 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener
     jMenu1.add(displayNonconserved);
   }
 
+
+  protected void selectHMM_actionPerformed(ActionEvent e)
+  {
+    SequenceI hmm = ap.av.getSequenceSelection()[0];
+    ap.alignFrame.setSelectedHMMSequence(hmm);
+  }
+
   /**
    * Constructs the entries for the colour menu
    */