JAL-1645 Version-Rel Version 2.9 Year-Rel 2015 Licensing glob
[jalview.git] / src / jalview / appletgui / SliderPanel.java
old mode 100755 (executable)
new mode 100644 (file)
index c494650..d49cd6c
@@ -1,29 +1,48 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.9)
+ * Copyright (C) 2015 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- * 
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
- * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.appletgui;
 
-import java.util.*;
-
-import java.awt.*;
-import java.awt.event.*;
-
-import jalview.datamodel.*;
-import jalview.schemes.*;
+import jalview.datamodel.SequenceGroup;
+import jalview.schemes.ColourSchemeI;
+import jalview.util.MessageManager;
+
+import java.awt.BorderLayout;
+import java.awt.Button;
+import java.awt.Checkbox;
+import java.awt.Color;
+import java.awt.FlowLayout;
+import java.awt.Frame;
+import java.awt.Label;
+import java.awt.Panel;
+import java.awt.Scrollbar;
+import java.awt.TextField;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.AdjustmentEvent;
+import java.awt.event.AdjustmentListener;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.util.Iterator;
 
 public class SliderPanel extends Panel implements ActionListener,
         AdjustmentListener, MouseListener
@@ -55,9 +74,11 @@ public class SliderPanel extends Panel implements ActionListener,
       sp.cs = cs;
     }
 
-    conservationSlider.setTitle("Conservation Colour Increment  (" + source
-            + ")");
-    if (ap.av.alignment.getGroups() != null)
+    conservationSlider
+            .setTitle(MessageManager.formatMessage(
+                    "label.conservation_colour_increment",
+                    new String[] { source }));
+    if (ap.av.getAlignment().getGroups() != null)
     {
       sp.setAllGroupsCheckEnabled(true);
     }
@@ -110,9 +131,11 @@ public class SliderPanel extends Panel implements ActionListener,
       pid = (SliderPanel) PIDSlider.getComponent(0);
       pid.cs = cs;
     }
-    PIDSlider.setTitle("Percentage Identity Threshold (" + source + ")");
+    PIDSlider.setTitle(MessageManager
+            .formatMessage("label.percentage_identity_thereshold",
+                    new String[] { source }));
 
-    if (ap.av.alignment.getGroups() != null)
+    if (ap.av.getAlignment().getGroups() != null)
     {
       pid.setAllGroupsCheckEnabled(true);
     }
@@ -167,14 +190,16 @@ public class SliderPanel extends Panel implements ActionListener,
     applyButton.setVisible(false);
     if (forConservation)
     {
-      label.setText("Modify conservation visibility");
+      label.setText(MessageManager
+              .getString("label.modify_conservation_visibility"));
       slider.setMinimum(0);
       slider.setMaximum(50 + slider.getVisibleAmount());
       slider.setUnitIncrement(1);
     }
     else
     {
-      label.setText("Colour residues above % occurence");
+      label.setText(MessageManager
+              .getString("label.colour_residues_above_occurence"));
       slider.setMinimum(0);
       slider.setMaximum(100 + slider.getVisibleAmount());
       slider.setBlockIncrement(1);
@@ -194,37 +219,36 @@ public class SliderPanel extends Panel implements ActionListener,
       return;
     }
 
-    ColourSchemeI toChange = null;
-    Vector allGroups = null;
-    int groupIndex = 0;
+    ColourSchemeI toChange = cs;
+    Iterator<SequenceGroup> allGroups = null;
 
     if (allGroupsCheck.getState())
     {
-      allGroups = ap.av.alignment.getGroups();
-      groupIndex = allGroups.size() - 1;
-    }
-    else
-    {
-      toChange = cs;
+      allGroups = ap.av.getAlignment().getGroups().listIterator();
     }
 
-    while (groupIndex > -1)
+    while (toChange != null)
     {
-      if (allGroups != null)
-      {
-        toChange = ((SequenceGroup) allGroups.elementAt(groupIndex)).cs;
-      }
-
       if (forConservation)
       {
         toChange.setConservationInc(i);
       }
       else
       {
-        toChange.setThreshold(i, ap.av.getIgnoreGapsConsensus());
+        toChange.setThreshold(i, ap.av.isIgnoreGapsConsensus());
+      }
+      if (allGroups != null && allGroups.hasNext())
+      {
+        while ((toChange = allGroups.next().cs) == null
+                && allGroups.hasNext())
+        {
+          ;
+        }
+      }
+      else
+      {
+        toChange = null;
       }
-
-      groupIndex--;
     }
 
     ap.seqPanel.seqCanvas.repaint();
@@ -316,23 +340,26 @@ public class SliderPanel extends Panel implements ActionListener,
     slider.setFont(new java.awt.Font("Verdana", 0, 11));
     slider.setOrientation(0);
     valueField.setFont(new java.awt.Font("Verdana", 0, 11));
-    valueField.setText("      ");
+    valueField.setText("   ");
     valueField.addActionListener(this);
+    valueField.setColumns(3);
     label.setFont(new java.awt.Font("Verdana", 0, 11));
-    label.setText("set this label text");
+    label.setText(MessageManager.getString("label.set_this_label_text"));
     jPanel1.setLayout(borderLayout1);
     jPanel2.setLayout(flowLayout1);
     applyButton.setFont(new java.awt.Font("Verdana", 0, 11));
-    applyButton.setLabel("Apply");
+    applyButton.setLabel(MessageManager.getString("action.apply"));
     applyButton.addActionListener(this);
     undoButton.setEnabled(false);
     undoButton.setFont(new java.awt.Font("Verdana", 0, 11));
-    undoButton.setLabel("Undo");
+    undoButton.setLabel(MessageManager.getString("action.undo"));
     undoButton.addActionListener(this);
     allGroupsCheck.setEnabled(false);
     allGroupsCheck.setFont(new java.awt.Font("Verdana", 0, 11));
-    allGroupsCheck.setLabel("Apply threshold to all groups");
-    allGroupsCheck.setName("Apply to all Groups");
+    allGroupsCheck.setLabel(MessageManager
+            .getString("action.apply_threshold_all_groups"));
+    allGroupsCheck.setName(MessageManager
+            .getString("action.apply_all_groups"));
     this.setBackground(Color.white);
     this.setForeground(Color.black);
     jPanel2.add(label, null);