Feature Settings added to Applet
[jalview.git] / src / jalview / appletgui / AlignFrame.java
index dfd58b2..fbe21b5 100755 (executable)
@@ -203,6 +203,10 @@ public class AlignFrame extends Frame implements ActionListener,
       }\r
 \r
       viewport.showSequenceFeatures = true;\r
+      viewMenu.addSeparator();\r
+      viewMenu.add(sequenceFeatures);\r
+      viewMenu.add(featureSettings);\r
+\r
 \r
       alignPanel.repaint();\r
 \r
@@ -289,6 +293,10 @@ public void itemStateChanged(ItemEvent evt)
             renderGapsMenuItem_actionPerformed();\r
     else if(evt.getSource()==annotationPanelMenuItem)\r
             annotationPanelMenuItem_actionPerformed();\r
+      else if(evt.getSource()==sequenceFeatures)\r
+       {     viewport.showSequenceFeatures(sequenceFeatures.getState());\r
+            alignPanel.seqPanel.seqCanvas.repaint();\r
+        }\r
       else if(evt.getSource()==conservationMenuItem)\r
             conservationMenuItem_actionPerformed();\r
       else if(evt.getSource()==abovePIDThreshold)\r
@@ -346,6 +354,8 @@ public void itemStateChanged(ItemEvent evt)
             findMenuItem_actionPerformed();\r
     else if(evt.getSource()==font)\r
             font_actionPerformed();\r
+    else if(evt.getSource()==featureSettings)\r
+            featureSettings_actionPerformed();\r
     else if(evt.getSource()==overviewMenuItem)\r
             overviewMenuItem_actionPerformed();\r
     else if(evt.getSource()==noColourmenuItem)\r
@@ -817,6 +827,7 @@ public void itemStateChanged(ItemEvent evt)
     viewport.setSelectionGroup(null);\r
     viewport.getColumnSelection().clear();\r
     viewport.setSelectionGroup(null);\r
+    alignPanel.idPanel.idCanvas.searchResults = null;\r
     alignPanel.seqPanel.seqCanvas.highlightSearchResults(null);\r
     alignPanel.repaint();\r
     PaintRefresher.Refresh(null, viewport.alignment);\r
@@ -992,6 +1003,8 @@ public void itemStateChanged(ItemEvent evt)
     resetAllColourSchemes();\r
     if(alignPanel.overviewPanel!=null)\r
       alignPanel.overviewPanel.updateOverviewImage();\r
+\r
+    viewport.alignment.adjustSequenceAnnotations();\r
     alignPanel.repaint();\r
   }\r
 \r
@@ -1113,6 +1126,11 @@ public void itemStateChanged(ItemEvent evt)
     alignPanel.setAnnotationVisible(annotationPanelMenuItem.getState());\r
   }\r
 \r
+  public void featureSettings_actionPerformed()\r
+  {\r
+    new FeatureSettings(viewport, alignPanel);\r
+  }\r
+\r
   public void overviewMenuItem_actionPerformed()\r
   {\r
     if (alignPanel.overviewPanel != null)\r
@@ -1872,6 +1890,7 @@ public void itemStateChanged(ItemEvent evt)
         font.addActionListener(this);\r
         scaleAbove.setLabel("Scale Above");\r
         scaleAbove.setState(true);\r
+        scaleAbove.setEnabled(false);\r
         scaleAbove.addItemListener(this);\r
         scaleLeft.setEnabled(false);\r
         scaleLeft.setState(true);\r
@@ -1900,6 +1919,11 @@ public void itemStateChanged(ItemEvent evt)
           seqLimits.setState(true);\r
     seqLimits.setLabel("Show Sequence Limits");\r
     seqLimits.addItemListener(this);\r
+    featureSettings.setLabel("Feature Settings...");\r
+    featureSettings.addActionListener(this);\r
+    sequenceFeatures.setLabel("Sequence Features");\r
+    sequenceFeatures.addItemListener(this);\r
+    sequenceFeatures.setState(true);\r
 \r
     alignFrameMenuBar.add(fileMenu);\r
         alignFrameMenuBar.add(editMenu);\r
@@ -1932,7 +1956,7 @@ public void itemStateChanged(ItemEvent evt)
         searchMenu.add(findMenuItem);\r
         viewMenu.add(font);\r
         viewMenu.addSeparator();\r
-        viewMenu.add(seqLimits);\r
+    viewMenu.add(seqLimits);\r
         viewMenu.addSeparator();\r
     viewMenu.add(wrapMenuItem);\r
         viewMenu.add(scaleAbove);\r
@@ -1944,7 +1968,7 @@ public void itemStateChanged(ItemEvent evt)
         viewMenu.add(colourTextMenuItem);\r
         viewMenu.add(renderGapsMenuItem);\r
         viewMenu.add(annotationPanelMenuItem);\r
-        viewMenu.addSeparator();\r
+    viewMenu.addSeparator();\r
         viewMenu.add(overviewMenuItem);\r
         colourMenu.add(applyToAllGroups);\r
         colourMenu.addSeparator();\r
@@ -2053,6 +2077,8 @@ public void itemStateChanged(ItemEvent evt)
 \r
   PopupMenu filePopup, editPopup, searchPopup,\r
       viewPopup, colourPopup, calculatePopup, helpPopup;\r
+  MenuItem featureSettings = new MenuItem();\r
+  CheckboxMenuItem sequenceFeatures = new CheckboxMenuItem();\r
 \r
   public void mousePressed(MouseEvent evt)\r
   {\r