JAL-1152 prototype of new Annotations menu with sort options
[jalview.git] / src / jalview / jbgui / GAlignFrame.java
index afb0dc1..5e60a85 100755 (executable)
@@ -65,6 +65,8 @@ public class GAlignFrame extends JInternalFrame
 
   protected JMenu viewMenu = new JMenu();
 
+  protected JMenu annotationsMenu = new JMenu();
+
   protected JMenu colourMenu = new JMenu();
 
   protected JMenu calculateMenu = new JMenu();
@@ -308,6 +310,10 @@ public class GAlignFrame extends JInternalFrame
 
   protected JMenuItem hideAllAnnotations = new JMenuItem();
 
+  protected JMenuItem sortAnnBySequence = new JMenuItem();
+
+  protected JMenuItem sortAnnByType = new JMenuItem();
+
   protected JCheckBoxMenuItem hiddenMarkers = new JCheckBoxMenuItem();
 
   JMenuItem invertColSel = new JMenuItem();
@@ -611,6 +617,7 @@ public class GAlignFrame extends JInternalFrame
     });
     editMenu.setText(MessageManager.getString("action.edit"));
     viewMenu.setText(MessageManager.getString("action.view"));
+    annotationsMenu.setText(MessageManager.getString("action.annotations"));
     colourMenu.setText(MessageManager.getString("action.colour"));
     calculateMenu.setText(MessageManager.getString("action.calculate"));
     webService.setText(MessageManager.getString("action.web_service"));
@@ -1098,6 +1105,26 @@ public class GAlignFrame extends JInternalFrame
         hideAllAnnotations_actionPerformed();
       }
     });
+    sortAnnBySequence.setText(MessageManager
+            .getString("label.sort_annotations_by_sequence"));
+    sortAnnBySequence.addActionListener(new ActionListener()
+    {
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        sortAnnotationsBySequence_actionPerformed();
+      }
+    });
+    sortAnnByType.setText(MessageManager
+            .getString("label.sort_annotations_by_type"));
+    sortAnnByType.addActionListener(new ActionListener()
+    {
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        sortAnnotationsByType_actionPerformed();
+      }
+    });
     colourTextMenuItem.setText(MessageManager
             .getString("label.colour_text"));
     colourTextMenuItem
@@ -2101,6 +2128,7 @@ public class GAlignFrame extends JInternalFrame
     alignFrameMenuBar.add(editMenu);
     alignFrameMenuBar.add(selectMenu);
     alignFrameMenuBar.add(viewMenu);
+    alignFrameMenuBar.add(annotationsMenu);
     alignFrameMenuBar.add(formatMenu);
     alignFrameMenuBar.add(colourMenu);
     alignFrameMenuBar.add(calculateMenu);
@@ -2150,9 +2178,11 @@ public class GAlignFrame extends JInternalFrame
     viewMenu.add(hideMenu);
     viewMenu.addSeparator();
     viewMenu.add(followHighlightMenuItem);
-    viewMenu.add(annotationPanelMenuItem);
-    viewMenu.add(showAllAnnotations);
-    viewMenu.add(hideAllAnnotations);
+    annotationsMenu.add(annotationPanelMenuItem);
+    annotationsMenu.add(showAllAnnotations);
+    annotationsMenu.add(hideAllAnnotations);
+    annotationsMenu.add(sortAnnBySequence);
+    annotationsMenu.add(sortAnnByType);
     autoAnnMenu.add(applyAutoAnnotationSettings);
     autoAnnMenu.add(showConsensusHistogram);
     autoAnnMenu.add(showSequenceLogo);
@@ -2160,7 +2190,7 @@ public class GAlignFrame extends JInternalFrame
     autoAnnMenu.addSeparator();
     autoAnnMenu.add(showGroupConservation);
     autoAnnMenu.add(showGroupConsensus);
-    viewMenu.add(autoAnnMenu);
+    annotationsMenu.add(autoAnnMenu);
     viewMenu.addSeparator();
     viewMenu.add(showSeqFeatures);
     // viewMenu.add(showSeqFeaturesHeight);
@@ -2272,6 +2302,20 @@ public class GAlignFrame extends JInternalFrame
   }
 
   /**
+   * Action on clicking sort annotations by type.
+   */
+  protected void sortAnnotationsByType_actionPerformed()
+  {
+  }
+
+  /**
+   * Action on clicking sort annotations by sequence
+   */
+  protected void sortAnnotationsBySequence_actionPerformed()
+  {
+  }
+
+  /**
    * Action on clicking Show all annotations.
    */
   protected void showAllAnnotations_actionPerformed()