JAL-2738 copy to spikes/mungo
[jalview.git] / src / jalview / jbgui / GPCAPanel.java
index 8ff42f8..a183794 100755 (executable)
@@ -1,79 +1,75 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)
- * Copyright (C) 2011 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ 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.jbgui;
 
-import java.awt.*;
-import java.awt.event.*;
-
-import javax.swing.*;
-import javax.swing.event.*;
+import jalview.util.MessageManager;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.GridLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.JButton;
+import javax.swing.JCheckBoxMenuItem;
+import javax.swing.JComboBox;
+import javax.swing.JInternalFrame;
+import javax.swing.JLabel;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.event.MenuEvent;
+import javax.swing.event.MenuListener;
 
 public class GPCAPanel extends JInternalFrame
 {
-  JPanel jPanel2 = new JPanel();
-
-  JLabel jLabel1 = new JLabel();
-
-  JLabel jLabel2 = new JLabel();
-
-  JLabel jLabel3 = new JLabel();
-
-  protected JComboBox xCombobox = new JComboBox();
-
-  protected JComboBox yCombobox = new JComboBox();
-
-  protected JComboBox zCombobox = new JComboBox();
-
-  FlowLayout flowLayout1 = new FlowLayout();
-
-  BorderLayout borderLayout1 = new BorderLayout();
+  private static final Font VERDANA_12 = new Font("Verdana", 0, 12);
 
-  JMenuBar jMenuBar1 = new JMenuBar();
+  protected JComboBox<String> xCombobox = new JComboBox<String>();
 
-  JMenu fileMenu = new JMenu();
+  protected JComboBox<String> yCombobox = new JComboBox<String>();
 
-  JMenu saveMenu = new JMenu();
+  protected JComboBox<String> zCombobox = new JComboBox<String>();
 
-  JMenuItem eps = new JMenuItem();
+  protected JMenu scoreModelMenu = new JMenu();
 
-  JMenuItem png = new JMenuItem();
+  protected JMenu viewMenu = new JMenu();
 
-  JMenuItem print = new JMenuItem();
+  protected JCheckBoxMenuItem showLabels = new JCheckBoxMenuItem();
 
-  JMenuItem outputValues = new JMenuItem();
+  protected JMenu associateViewsMenu = new JMenu();
 
-  JMenuItem outputPoints = new JMenuItem();
+  protected JMenu calcSettings = new JMenu();
 
-  JMenuItem outputProjPoints = new JMenuItem();
+  protected JCheckBoxMenuItem nuclSetting = new JCheckBoxMenuItem();
 
-  protected JMenu viewMenu = new JMenu();
+  protected JCheckBoxMenuItem protSetting = new JCheckBoxMenuItem();
 
-  protected JCheckBoxMenuItem showLabels = new JCheckBoxMenuItem();
+  protected JLabel statusBar = new JLabel();
 
-  JMenuItem bgcolour = new JMenuItem();
+  protected JPanel statusPanel = new JPanel();
 
-  JMenuItem originalSeqData = new JMenuItem();
-
-  protected JMenu associateViewsMenu = new JMenu();
-
-  protected JMenu calcSettings=new JMenu();
-  protected JCheckBoxMenuItem nuclSetting=new JCheckBoxMenuItem();
-  protected JCheckBoxMenuItem protSetting=new JCheckBoxMenuItem();
   public GPCAPanel()
   {
     try
@@ -90,143 +86,202 @@ public class GPCAPanel extends JInternalFrame
       yCombobox.addItem("dim " + i);
       zCombobox.addItem("dim " + i);
     }
-
-    setJMenuBar(jMenuBar1);
   }
 
   private void jbInit() throws Exception
   {
-    this.getContentPane().setLayout(borderLayout1);
-    jPanel2.setLayout(flowLayout1);
-    jLabel1.setFont(new java.awt.Font("Verdana", 0, 12));
+    this.getContentPane().setLayout(new BorderLayout());
+    JPanel jPanel2 = new JPanel();
+    jPanel2.setLayout(new FlowLayout());
+    JLabel jLabel1 = new JLabel();
+    jLabel1.setFont(VERDANA_12);
     jLabel1.setText("x=");
-    jLabel2.setFont(new java.awt.Font("Verdana", 0, 12));
+    JLabel jLabel2 = new JLabel();
+    jLabel2.setFont(VERDANA_12);
     jLabel2.setText("y=");
-    jLabel3.setFont(new java.awt.Font("Verdana", 0, 12));
+    JLabel jLabel3 = new JLabel();
+    jLabel3.setFont(VERDANA_12);
     jLabel3.setText("z=");
     jPanel2.setBackground(Color.white);
     jPanel2.setBorder(null);
-    zCombobox.setFont(new java.awt.Font("Verdana", 0, 12));
-    zCombobox.addActionListener(new java.awt.event.ActionListener()
+    zCombobox.setFont(VERDANA_12);
+    zCombobox.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         zCombobox_actionPerformed(e);
       }
     });
-    yCombobox.setFont(new java.awt.Font("Verdana", 0, 12));
-    yCombobox.addActionListener(new java.awt.event.ActionListener()
+    yCombobox.setFont(VERDANA_12);
+    yCombobox.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         yCombobox_actionPerformed(e);
       }
     });
-    xCombobox.setFont(new java.awt.Font("Verdana", 0, 12));
-    xCombobox.addActionListener(new java.awt.event.ActionListener()
+    xCombobox.setFont(VERDANA_12);
+    xCombobox.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         xCombobox_actionPerformed(e);
       }
     });
-    fileMenu.setText("File");
-    saveMenu.setText("Save as");
-    eps.setText("EPS");
+    JButton resetButton = new JButton();
+    resetButton.setFont(VERDANA_12);
+    resetButton.setText(MessageManager.getString("action.reset"));
+    resetButton.addActionListener(new ActionListener()
+    {
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        resetButton_actionPerformed(e);
+      }
+    });
+    JMenu fileMenu = new JMenu();
+    fileMenu.setText(MessageManager.getString("action.file"));
+    JMenu saveMenu = new JMenu();
+    saveMenu.setText(MessageManager.getString("action.save_as"));
+    JMenuItem eps = new JMenuItem("EPS");
     eps.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         eps_actionPerformed(e);
       }
     });
-    png.setText("PNG");
+    JMenuItem png = new JMenuItem("PNG");
     png.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         png_actionPerformed(e);
       }
     });
-    outputValues.setText("Output Values...");
+    JMenuItem outputValues = new JMenuItem();
+    outputValues.setText(MessageManager.getString("label.output_values"));
     outputValues.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         outputValues_actionPerformed(e);
       }
     });
-    outputPoints.setText("Output points...");
+    JMenuItem outputPoints = new JMenuItem();
+    outputPoints.setText(MessageManager.getString("label.output_points"));
     outputPoints.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         outputPoints_actionPerformed(e);
       }
     });
-    outputProjPoints.setText("Output transformed points...");
+    JMenuItem outputProjPoints = new JMenuItem();
+    outputProjPoints.setText(
+            MessageManager.getString("label.output_transformed_points"));
     outputProjPoints.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         outputProjPoints_actionPerformed(e);
       }
     });
+    JMenuItem print = new JMenuItem();
+    print.setText(MessageManager.getString("action.print"));
     print.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         print_actionPerformed(e);
       }
     });
-    viewMenu.setText("View");
+    viewMenu.setText(MessageManager.getString("action.view"));
     viewMenu.addMenuListener(new MenuListener()
     {
+      @Override
       public void menuSelected(MenuEvent e)
       {
         viewMenu_menuSelected();
       }
 
+      @Override
       public void menuDeselected(MenuEvent e)
       {
       }
 
+      @Override
       public void menuCanceled(MenuEvent e)
       {
       }
     });
-    showLabels.setText("Show Labels");
+    scoreModelMenu
+            .setText(MessageManager.getString("label.select_score_model"));
+    scoreModelMenu.addMenuListener(new MenuListener()
+    {
+      @Override
+      public void menuSelected(MenuEvent e)
+      {
+        scoreModel_menuSelected();
+      }
+
+      @Override
+      public void menuDeselected(MenuEvent e)
+      {
+      }
+
+      @Override
+      public void menuCanceled(MenuEvent e)
+      {
+      }
+    });
+    showLabels.setText(MessageManager.getString("label.show_labels"));
     showLabels.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         showLabels_actionPerformed(e);
       }
     });
-    print.setText("Print");
-    bgcolour.setText("Background Colour...");
+    JMenuItem bgcolour = new JMenuItem();
+    bgcolour.setText(MessageManager.getString("action.background_colour"));
     bgcolour.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         bgcolour_actionPerformed(e);
       }
     });
-    originalSeqData.setText("Input Data...");
+    JMenuItem originalSeqData = new JMenuItem();
+    originalSeqData.setText(MessageManager.getString("label.input_data"));
     originalSeqData.addActionListener(new ActionListener()
     {
+      @Override
       public void actionPerformed(ActionEvent e)
       {
         originalSeqData_actionPerformed(e);
       }
     });
-    associateViewsMenu.setText("Associate Nodes With");
-    calcSettings.setText("Change Parameters");
-    nuclSetting.setText("Nucleotide matrix");
-    protSetting.setText("Protein matrix");
+    associateViewsMenu.setText(
+            MessageManager.getString("label.associate_nodes_with"));
+    calcSettings.setText(MessageManager.getString("action.change_params"));
+    nuclSetting
+            .setText(MessageManager.getString("label.nucleotide_matrix"));
+    protSetting.setText(MessageManager.getString("label.protein_matrix"));
     nuclSetting.addActionListener(new ActionListener()
     {
-      
+
       @Override
       public void actionPerformed(ActionEvent arg0)
       {
@@ -235,26 +290,39 @@ public class GPCAPanel extends JInternalFrame
     });
     protSetting.addActionListener(new ActionListener()
     {
-      
+
       @Override
       public void actionPerformed(ActionEvent arg0)
       {
         protSetting_actionPerfomed(arg0);
       }
-    });calcSettings.add(nuclSetting);
+    });
+
+    calcSettings.add(nuclSetting);
     calcSettings.add(protSetting);
-    
-    
-    this.getContentPane().add(jPanel2, BorderLayout.SOUTH);
+    calcSettings.add(scoreModelMenu);
+    statusPanel.setLayout(new GridLayout());
+    statusBar.setFont(VERDANA_12);
+    // statusPanel.setBackground(Color.lightGray);
+    // statusBar.setBackground(Color.lightGray);
+    // statusPanel.add(statusBar, null);
+    JPanel panelBar = new JPanel(new BorderLayout());
+    panelBar.add(jPanel2, BorderLayout.NORTH);
+    panelBar.add(statusPanel, BorderLayout.SOUTH);
+    this.getContentPane().add(panelBar, BorderLayout.SOUTH);
     jPanel2.add(jLabel1, null);
     jPanel2.add(xCombobox, null);
     jPanel2.add(jLabel2, null);
     jPanel2.add(yCombobox, null);
     jPanel2.add(jLabel3, null);
     jPanel2.add(zCombobox, null);
+    jPanel2.add(resetButton, null);
+
+    JMenuBar jMenuBar1 = new JMenuBar();
     jMenuBar1.add(fileMenu);
     jMenuBar1.add(viewMenu);
     jMenuBar1.add(calcSettings);
+    setJMenuBar(jMenuBar1);
     fileMenu.add(saveMenu);
     fileMenu.add(outputValues);
     fileMenu.add(print);
@@ -268,16 +336,28 @@ public class GPCAPanel extends JInternalFrame
     viewMenu.add(associateViewsMenu);
   }
 
+  protected void scoreModel_menuSelected()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  protected void resetButton_actionPerformed(ActionEvent e)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
   protected void protSetting_actionPerfomed(ActionEvent arg0)
   {
     // TODO Auto-generated method stub
-    
+
   }
 
   protected void nuclSetting_actionPerfomed(ActionEvent arg0)
   {
     // TODO Auto-generated method stub
-    
+
   }
 
   protected void outputPoints_actionPerformed(ActionEvent e)