JAL-1645 Version-Rel Version 2.9 Year-Rel 2015 Licensing glob
[jalview.git] / src / jalview / jbgui / GUserDefinedColours.java
index 9b685b5..d54e98a 100755 (executable)
-/*\r
-* Jalview - A Sequence Alignment Editor and Viewer\r
-* Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
-*\r
-* This program is free software; you can redistribute it and/or\r
-* modify it under the terms of the GNU General Public License\r
-* as published by the Free Software Foundation; either version 2\r
-* of the License, or (at your option) any later version.\r
-*\r
-* This program is distributed in the hope that it will be useful,\r
-* but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-* GNU General Public License for more details.\r
-*\r
-* You should have received a copy of the GNU General Public License\r
-* along with this program; if not, write to the Free Software\r
-* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA\r
-*/\r
-package jalview.jbgui;\r
-\r
-import java.awt.*;\r
-import java.awt.event.*;\r
-\r
-import javax.swing.*;\r
-import java.awt.Dimension;\r
-\r
-/**\r
- * DOCUMENT ME!\r
- *\r
- * @author $author$\r
- * @version $Revision$\r
- */\r
-public class GUserDefinedColours extends JPanel\r
-{\r
-    protected JColorChooser colorChooser = new JColorChooser();\r
-    protected JPanel buttonPanel = new JPanel();\r
-    protected GridLayout gridLayout = new GridLayout();\r
-    JPanel lowerPanel = new JPanel();\r
-    protected JButton okButton = new JButton();\r
-    protected JButton applyButton = new JButton();\r
-    protected JButton loadbutton = new JButton();\r
-    protected JButton savebutton = new JButton();\r
-    protected JButton cancelButton = new JButton();\r
-  JPanel namePanel = new JPanel();\r
-  JLabel jLabel1 = new JLabel();\r
-  protected JTextField schemeName = new JTextField();\r
-  BorderLayout borderLayout1 = new BorderLayout();\r
-  JPanel panel1 = new JPanel();\r
-  JPanel okCancelPanel = new JPanel();\r
-  JPanel saveLoadPanel = new JPanel();\r
-  BorderLayout borderLayout3 = new BorderLayout();\r
-  GridBagLayout gridBagLayout1 = new GridBagLayout();\r
-  BorderLayout borderLayout2 = new BorderLayout();\r
-  FlowLayout flowLayout1 = new FlowLayout();\r
-  BorderLayout borderLayout4 = new BorderLayout();\r
-  JPanel jPanel4 = new JPanel();\r
-  BorderLayout borderLayout5 = new BorderLayout();\r
-  JLabel label = new JLabel();\r
-  protected JPanel casePanel = new JPanel();\r
-  protected JCheckBox caseSensitive = new JCheckBox();\r
-  protected JButton lcaseColour = new JButton();\r
-  /**\r
-     * Creates a new GUserDefinedColours object.\r
-     */\r
-    public GUserDefinedColours()\r
-    {\r
-        try\r
-        {\r
-            jbInit();\r
-        }\r
-        catch (Exception e)\r
-        {\r
-            e.printStackTrace();\r
-        }\r
-\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @throws Exception DOCUMENT ME!\r
-     */\r
-    private void jbInit() throws Exception\r
-    {\r
-        this.setLayout(borderLayout4);\r
-        buttonPanel.setLayout(gridLayout);\r
-        gridLayout.setColumns(4);\r
-        gridLayout.setRows(5);\r
-        okButton.setFont(new java.awt.Font("Verdana", 0, 11));\r
-        okButton.setText("OK");\r
-        okButton.addActionListener(new java.awt.event.ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    okButton_actionPerformed(e);\r
-                }\r
-            });\r
-        applyButton.setFont(new java.awt.Font("Verdana", 0, 11));\r
-        applyButton.setText("Apply");\r
-        applyButton.addActionListener(new java.awt.event.ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    applyButton_actionPerformed(e);\r
-                }\r
-            });\r
-        loadbutton.setFont(new java.awt.Font("Verdana", 0, 11));\r
-        loadbutton.setText("Load scheme");\r
-        loadbutton.addActionListener(new java.awt.event.ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    loadbutton_actionPerformed(e);\r
-                }\r
-            });\r
-        savebutton.setFont(new java.awt.Font("Verdana", 0, 11));\r
-        savebutton.setText("Save scheme");\r
-        savebutton.addActionListener(new java.awt.event.ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    savebutton_actionPerformed(e);\r
-                }\r
-            });\r
-        cancelButton.setFont(new java.awt.Font("Verdana", 0, 11));\r
-        cancelButton.setText("Cancel");\r
-        cancelButton.addActionListener(new java.awt.event.ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    cancelButton_actionPerformed(e);\r
-                }\r
-            });\r
-        this.setBackground(new Color(212, 208, 223));\r
-    lowerPanel.setOpaque(false);\r
-    lowerPanel.setLayout(borderLayout3);\r
-    colorChooser.setOpaque(false);\r
-    jLabel1.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));\r
-    jLabel1.setText("Name");\r
-    namePanel.setMinimumSize(new Dimension(300, 31));\r
-    namePanel.setOpaque(false);\r
-    namePanel.setPreferredSize(new Dimension(240, 25));\r
-    namePanel.setLayout(borderLayout1);\r
-    schemeName.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11));\r
-    schemeName.setPreferredSize(new Dimension(105, 21));\r
-    schemeName.setText("");\r
-    schemeName.setHorizontalAlignment(SwingConstants.CENTER);\r
-    panel1.setLayout(flowLayout1);\r
-    panel1.setOpaque(false);\r
-    okCancelPanel.setOpaque(false);\r
-    saveLoadPanel.setOpaque(false);\r
-    jPanel4.setLayout(borderLayout5);\r
-    label.setFont(new java.awt.Font("Verdana", Font.ITALIC, 10));\r
-    label.setOpaque(false);\r
-    label.setPreferredSize(new Dimension(260, 34));\r
-    label.setText(\r
-        "<html>Save your colour scheme with a unique name and it will be added " +\r
-        "to the Colour menu.</html>");\r
-    caseSensitive.setText("Case Sensitive");\r
-    caseSensitive.addActionListener(new ActionListener()\r
-    {\r
-      public void actionPerformed(ActionEvent e)\r
-      {\r
-        caseSensitive_actionPerformed(e);\r
-      }\r
-    });\r
-    lcaseColour.setText("Lower Case Colour");\r
-    lcaseColour.addActionListener(new ActionListener()\r
-    {\r
-      public void actionPerformed(ActionEvent e)\r
-      {\r
-        lcaseColour_actionPerformed(e);\r
-      }\r
-    });\r
-\r
-    saveLoadPanel.add(savebutton);\r
-    saveLoadPanel.add(loadbutton);\r
-    okCancelPanel.add(applyButton);\r
-    okCancelPanel.add(okButton);\r
-    okCancelPanel.add(cancelButton);\r
-    lowerPanel.add(saveLoadPanel, java.awt.BorderLayout.NORTH);\r
-    lowerPanel.add(okCancelPanel, java.awt.BorderLayout.SOUTH);\r
-\r
-    namePanel.add(schemeName, java.awt.BorderLayout.CENTER);\r
-    namePanel.add(jLabel1, java.awt.BorderLayout.WEST);\r
-    panel1.add(namePanel, null);\r
-    panel1.add(buttonPanel, null);\r
-    panel1.add(casePanel);\r
-    casePanel.add(caseSensitive);\r
-    casePanel.add(lcaseColour);\r
-    panel1.add(lowerPanel, null);\r
-    panel1.add(label);\r
-\r
-    jPanel4.add(panel1, java.awt.BorderLayout.CENTER);\r
-    this.add(jPanel4, java.awt.BorderLayout.CENTER);\r
-    this.add(colorChooser, java.awt.BorderLayout.EAST);\r
-  }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    protected void okButton_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    protected void applyButton_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    protected void loadbutton_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    protected void savebutton_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    protected void cancelButton_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    public void caseSensitive_actionPerformed(ActionEvent e)\r
-    {\r
-\r
-    }\r
-\r
-    public void lcaseColour_actionPerformed(ActionEvent e)\r
-    {\r
-\r
-    }\r
-}\r
+/*
+ * 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.
+ *  
+ * 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/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.jbgui;
+
+import jalview.gui.JvSwingUtils;
+import jalview.util.MessageManager;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Dimension;
+import java.awt.FlowLayout;
+import java.awt.Font;
+import java.awt.GridBagLayout;
+import java.awt.GridLayout;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import javax.swing.JButton;
+import javax.swing.JCheckBox;
+import javax.swing.JColorChooser;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.SwingConstants;
+import javax.swing.colorchooser.AbstractColorChooserPanel;
+
+/**
+ * DOCUMENT ME!
+ * 
+ * @author $author$
+ * @version $Revision$
+ */
+public class GUserDefinedColours extends JPanel
+{
+  protected JColorChooser colorChooser = new JColorChooser();
+
+  protected JPanel buttonPanel = new JPanel();
+
+  protected GridLayout gridLayout = new GridLayout();
+
+  JPanel lowerPanel = new JPanel();
+
+  protected JButton okButton = new JButton();
+
+  protected JButton applyButton = new JButton();
+
+  protected JButton loadbutton = new JButton();
+
+  protected JButton savebutton = new JButton();
+
+  protected JButton cancelButton = new JButton();
+
+  JPanel namePanel = new JPanel();
+
+  JLabel jLabel1 = new JLabel();
+
+  protected JTextField schemeName = new JTextField();
+
+  BorderLayout borderLayout1 = new BorderLayout();
+
+  JPanel panel1 = new JPanel();
+
+  JPanel okCancelPanel = new JPanel();
+
+  JPanel saveLoadPanel = new JPanel();
+
+  BorderLayout borderLayout3 = new BorderLayout();
+
+  GridBagLayout gridBagLayout1 = new GridBagLayout();
+
+  BorderLayout borderLayout2 = new BorderLayout();
+
+  FlowLayout flowLayout1 = new FlowLayout();
+
+  BorderLayout borderLayout4 = new BorderLayout();
+
+  JPanel jPanel4 = new JPanel();
+
+  BorderLayout borderLayout5 = new BorderLayout();
+
+  JLabel label = new JLabel();
+
+  protected JPanel casePanel = new JPanel();
+
+  protected JCheckBox caseSensitive = new JCheckBox();
+
+  protected JButton lcaseColour = new JButton();
+
+  /**
+   * Creates a new GUserDefinedColours object.
+   */
+  public GUserDefinedColours()
+  {
+    try
+    {
+      jbInit();
+    } catch (Exception e)
+    {
+      e.printStackTrace();
+    }
+
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @throws Exception
+   *           DOCUMENT ME!
+   */
+  private void jbInit() throws Exception
+  {
+    this.setLayout(borderLayout4);
+    buttonPanel.setLayout(gridLayout);
+    gridLayout.setColumns(4);
+    gridLayout.setRows(5);
+    okButton.setFont(new java.awt.Font("Verdana", 0, 11));
+    okButton.setText(MessageManager.getString("action.ok"));
+    okButton.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        okButton_actionPerformed(e);
+      }
+    });
+    applyButton.setFont(new java.awt.Font("Verdana", 0, 11));
+    applyButton.setText(MessageManager.getString("action.apply"));
+    applyButton.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        applyButton_actionPerformed(e);
+      }
+    });
+    loadbutton.setFont(new java.awt.Font("Verdana", 0, 11));
+    loadbutton.setText(MessageManager.getString("action.load_scheme"));
+    loadbutton.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        loadbutton_actionPerformed(e);
+      }
+    });
+    savebutton.setFont(new java.awt.Font("Verdana", 0, 11));
+    savebutton.setText(MessageManager.getString("action.save_scheme"));
+    savebutton.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        savebutton_actionPerformed(e);
+      }
+    });
+    cancelButton.setFont(JvSwingUtils.getLabelFont());
+    cancelButton.setText(MessageManager.getString("action.cancel"));
+    cancelButton.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        cancelButton_actionPerformed(e);
+      }
+    });
+    this.setBackground(new Color(212, 208, 223));
+    lowerPanel.setOpaque(false);
+    lowerPanel.setLayout(borderLayout3);
+    colorChooser.setOpaque(false);
+    jLabel1.setFont(JvSwingUtils.getLabelFont());
+    jLabel1.setText(MessageManager.getString("label.name"));
+    namePanel.setMinimumSize(new Dimension(300, 31));
+    namePanel.setOpaque(false);
+    namePanel.setPreferredSize(new Dimension(240, 25));
+    namePanel.setLayout(borderLayout1);
+    schemeName.setFont(JvSwingUtils.getLabelFont());
+    schemeName.setPreferredSize(new Dimension(105, 21));
+    schemeName.setText("");
+    schemeName.setHorizontalAlignment(SwingConstants.CENTER);
+    panel1.setLayout(flowLayout1);
+    panel1.setOpaque(false);
+    okCancelPanel.setOpaque(false);
+    saveLoadPanel.setOpaque(false);
+    jPanel4.setLayout(borderLayout5);
+    label.setFont(new java.awt.Font("Verdana", Font.ITALIC, 10));
+    label.setOpaque(false);
+    label.setPreferredSize(new Dimension(260, 34));
+    label.setText(MessageManager
+            .formatMessage(
+                    "label.html_content",
+                    new String[] { MessageManager
+                            .getString("label.save_colour_scheme_with_unique_name_added_to_colour_menu") }));
+    caseSensitive.setText(MessageManager.getString("label.case_sensitive"));
+    caseSensitive.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        caseSensitive_actionPerformed(e);
+      }
+    });
+    lcaseColour
+            .setText(MessageManager.getString("label.lower_case_colour"));
+    lcaseColour.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        lcaseColour_actionPerformed(e);
+      }
+    });
+
+    saveLoadPanel.add(savebutton);
+    saveLoadPanel.add(loadbutton);
+    okCancelPanel.add(applyButton);
+    okCancelPanel.add(okButton);
+    okCancelPanel.add(cancelButton);
+    lowerPanel.add(saveLoadPanel, java.awt.BorderLayout.NORTH);
+    lowerPanel.add(okCancelPanel, java.awt.BorderLayout.SOUTH);
+
+    namePanel.add(schemeName, java.awt.BorderLayout.CENTER);
+    namePanel.add(jLabel1, java.awt.BorderLayout.WEST);
+    panel1.add(namePanel, null);
+    panel1.add(buttonPanel, null);
+    panel1.add(casePanel);
+    casePanel.add(caseSensitive);
+    casePanel.add(lcaseColour);
+    panel1.add(lowerPanel, null);
+    panel1.add(label);
+
+    jPanel4.add(panel1, java.awt.BorderLayout.CENTER);
+    this.add(jPanel4, java.awt.BorderLayout.CENTER);
+    this.add(colorChooser, java.awt.BorderLayout.EAST);
+
+    AbstractColorChooserPanel[] choosers = colorChooser.getChooserPanels();
+    // JAL-1360 larger JColorChooser in Java 7 overwrites AA panel; restrict to
+    // swatch picker only
+    if (choosers.length > 3)
+    {
+      // Java 7 default has 5 options rather than 3 for choosing colours; keep
+      // the first only
+      colorChooser
+              .setChooserPanels(new AbstractColorChooserPanel[] { choosers[0] });
+    }
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  protected void okButton_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  protected void applyButton_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  protected void loadbutton_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  protected void savebutton_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  protected void cancelButton_actionPerformed(ActionEvent e)
+  {
+  }
+
+  public void caseSensitive_actionPerformed(ActionEvent e)
+  {
+
+  }
+
+  public void lcaseColour_actionPerformed(ActionEvent e)
+  {
+
+  }
+}