JAL-1517 update copyright to version 2.8.2
[jalview.git] / src / jalview / appletgui / AlignFrame.java
index 47d3001..16602c8 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
  * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
@@ -20,6 +20,7 @@ package jalview.appletgui;
 
 import jalview.analysis.AlignmentSorter;
 import jalview.analysis.Conservation;
+import jalview.api.AlignViewControllerGuiI;
 import jalview.api.AlignViewControllerI;
 import jalview.api.SequenceStructureBinding;
 import jalview.bin.JalviewLite;
@@ -52,6 +53,7 @@ import jalview.schemes.NucleotideColourScheme;
 import jalview.schemes.PIDColourScheme;
 import jalview.schemes.PurinePyrimidineColourScheme;
 import jalview.schemes.RNAHelicesColourChooser;
+import jalview.schemes.RNAInteractionColourScheme;\r
 import jalview.schemes.ResidueProperties;
 import jalview.schemes.StrandColourScheme;
 import jalview.schemes.TCoffeeColourScheme;
@@ -93,7 +95,7 @@ import java.util.StringTokenizer;
 import java.util.Vector;
 
 public class AlignFrame extends EmbmenuFrame implements ActionListener,
-        ItemListener, KeyListener
+        ItemListener, KeyListener, AlignViewControllerGuiI
 {
   public AlignViewControllerI avc;
   public AlignmentPanel alignPanel;
@@ -121,10 +123,31 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       ex.printStackTrace();
     }
-
+    // need to get window geometry before we calculate alignment layout
+    if (applet != null)
+    {
+      String param;
+      try
+      {
+        param = applet.getParameter("windowWidth");
+        if (param != null)
+        {
+          int width = Integer.parseInt(param);
+          DEFAULT_WIDTH = width;
+        }
+        param = applet.getParameter("windowHeight");
+        if (param != null)
+        {
+          int height = Integer.parseInt(param);
+          DEFAULT_HEIGHT = height;
+        }
+      } catch (Exception ex)
+      {
+      }
+    }
     viewport = new AlignViewport(al, applet);
     alignPanel = new AlignmentPanel(this, viewport);
-    avc = new jalview.controller.AlignViewController(viewport, alignPanel);
+    avc = new jalview.controller.AlignViewController(this, viewport, alignPanel);
     viewport.updateConservation(alignPanel);
     viewport.updateConsensus(alignPanel);
 
@@ -136,7 +159,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     showConsensusHistogram.setState(viewport.isShowConsensusHistogram());
     showSequenceLogo.setState(viewport.isShowSequenceLogo());
     normSequenceLogo.setState(viewport.isNormaliseSequenceLogo());
-
+    applyToAllGroups.setState(viewport.getColourAppliesToAllGroups());
+    
     seqLimits.setState(viewport.showJVSuffix);
 
     if (applet != null)
@@ -173,23 +197,6 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
         centreColumnLabelFlag.setState(true);
         centreColumnLabelFlag_stateChanged();
       }
-      try
-      {
-        param = applet.getParameter("windowWidth");
-        if (param != null)
-        {
-          int width = Integer.parseInt(param);
-          DEFAULT_WIDTH = width;
-        }
-        param = applet.getParameter("windowHeight");
-        if (param != null)
-        {
-          int height = Integer.parseInt(param);
-          DEFAULT_HEIGHT = height;
-        }
-      } catch (Exception ex)
-      {
-      }
 
     }
     if (viewport.getAlignment().isNucleotide())
@@ -1039,6 +1046,10 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       changeColour(new PurinePyrimidineColourScheme());
     }
+    else if (source == RNAInteractionColour)\r
+    {\r
+      changeColour(new RNAInteractionColourScheme());\r
+    }\r
     else if (source == RNAHelixColour)
     {
       new RNAHelicesColourChooser(viewport, alignPanel);
@@ -2322,42 +2333,20 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     {
       if (viewport.getAbovePIDThreshold())
       {
-        threshold = SliderPanel.setPIDSliderSource(alignPanel, cs,
-                "Background");
-
-        cs.setThreshold(threshold, viewport.getIgnoreGapsConsensus());
-
-        viewport.setGlobalColourScheme(cs);
-      }
-      else
-      {
-        cs.setThreshold(0, viewport.getIgnoreGapsConsensus());
-      }
+        viewport.setThreshold(SliderPanel.setPIDSliderSource(alignPanel, cs,
+                "Background"));
+      } 
 
       if (viewport.getConservationSelected())
       {
-
-        Alignment al = (Alignment) viewport.getAlignment();
-        Conservation c = new Conservation("All",
-                ResidueProperties.propHash, 3, al.getSequences(), 0,
-                al.getWidth() - 1);
-
-        c.calculate();
-        c.verdict(false, viewport.getConsPercGaps());
-
-        cs.setConservation(c);
-
-        cs.setConservationInc(SliderPanel.setConservationSlider(alignPanel,
+        cs.setConservationApplied(true);
+        viewport.setIncrement(SliderPanel.setConservationSlider(alignPanel,
                 cs, "Background"));
-
       }
       else
       {
-        cs.setConservation(null);
+        cs.setConservationApplied(false);
       }
-
-      cs.setConsensus(viewport.getSequenceConsensusHash());
-
     }
     viewport.setGlobalColourScheme(cs);
 
@@ -2826,6 +2815,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   MenuItem purinePyrimidineColour = new MenuItem();
 
+  MenuItem RNAInteractionColour = new MenuItem();\r
+\r
   MenuItem RNAHelixColour = new MenuItem();
 
   MenuItem userDefinedColour = new MenuItem();
@@ -3033,6 +3024,8 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     buriedColour.addActionListener(this);
     purinePyrimidineColour.setLabel(MessageManager.getString("label.purine_pyrimidine"));
     purinePyrimidineColour.addActionListener(this);
+    RNAInteractionColour.setLabel(MessageManager.getString("label.rna_interaction"));\r
+    RNAInteractionColour.addActionListener(this);\r
     RNAHelixColour.setLabel(MessageManager.getString("action.by_rna_helixes"));
     RNAHelixColour.addActionListener(this);
     userDefinedColour.setLabel(MessageManager.getString("action.user_defined"));
@@ -3150,7 +3143,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     menu1.setLabel(MessageManager.getString("action.show"));
     showColumns.setLabel(MessageManager.getString("label.all_columns"));
     showSeqs.setLabel(MessageManager.getString("label.all_sequences"));
-    menu2.setLabel(MessageManager.getString("aciton.hide"));
+    menu2.setLabel(MessageManager.getString("action.hide"));
     hideColumns.setLabel(MessageManager.getString("label.selected_columns"));
     hideSequences.setLabel(MessageManager.getString("label.selected_sequences"));
     hideAllButSelection.setLabel(MessageManager.getString("label.all_but_selected_region"));
@@ -3259,6 +3252,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
     colourMenu.add(buriedColour);
     colourMenu.add(nucleotideColour);
     colourMenu.add(purinePyrimidineColour);
+    //    colourMenu.add(RNAInteractionColour);\r
     colourMenu.add(tcoffeeColour);
     colourMenu.add(userDefinedColour);
     colourMenu.addSeparator();
@@ -3321,6 +3315,11 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
 
   }
 
+  
+  public void setStatus(String string) {
+    statusBar.setText(string);
+  };
+
   MenuItem featureSettings = new MenuItem();
 
   CheckboxMenuItem sequenceFeatures = new CheckboxMenuItem();
@@ -3373,7 +3372,7 @@ public class AlignFrame extends EmbmenuFrame implements ActionListener,
       fileMenu.remove(closeMenuItem);
       fileMenu.remove(3); // Remove Seperator
       embeddedMenu = makeEmbeddedPopupMenu(alignFrameMenuBar, "Arial",
-              Font.PLAIN, 10, false); // use our own fonts.
+              Font.PLAIN, 11, false); // use our own fonts.
       // and actually add the components to the applet area
       viewport.applet.setLayout(new BorderLayout());
       viewport.applet.add(embeddedMenu, BorderLayout.NORTH);