-/*\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-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.
+ *
+ * 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.bin.Jalview;
+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 java.util.ArrayList;
+import java.util.List;
+
+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();
+
+ public 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();
+
+ public JCheckBox caseSensitive = new JCheckBox();
+
+ public JCheckBox lcaseColour = new JCheckBox();
+
+ protected List<JButton> selectedButtons;
+
+ /**
+ * 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 ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ okButton_actionPerformed();
+ }
+ });
+ applyButton.setFont(new java.awt.Font("Verdana", 0, 11));
+ applyButton.setText(MessageManager.getString("action.apply"));
+ applyButton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ applyButton_actionPerformed();
+ }
+ });
+ loadbutton.setFont(new java.awt.Font("Verdana", 0, 11));
+ loadbutton.setText(MessageManager.getString("action.load_scheme"));
+ loadbutton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ loadbutton_actionPerformed();
+ }
+ });
+ savebutton.setFont(new java.awt.Font("Verdana", 0, 11));
+ savebutton.setText(MessageManager.getString("action.save_scheme"));
+ savebutton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ savebutton_actionPerformed();
+ }
+ });
+ cancelButton.setFont(JvSwingUtils.getLabelFont());
+ cancelButton.setText(MessageManager.getString("action.cancel"));
+ cancelButton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ cancelButton_actionPerformed();
+ }
+ });
+ 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()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ caseSensitive_actionPerformed();
+ }
+ });
+ lcaseColour
+ .setText(MessageManager.getString("label.lower_case_colour"));
+ lcaseColour.setToolTipText(
+ MessageManager.getString("label.lower_case_tip"));
+
+ 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] });
+ }
+
+ selectedButtons = new ArrayList<JButton>();
+ }
+
+ /**
+ * DOCUMENT ME!
+ */
+ protected void okButton_actionPerformed()
+ {
+ }
+
+ /**
+ * DOCUMENT ME!
+ */
+ protected void applyButton_actionPerformed()
+ {
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @param e
+ * DOCUMENT ME!
+ */
+ protected void loadbutton_actionPerformed()
+ {
+ }
+
+ protected void savebutton_actionPerformed()
+ {
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @param e
+ * DOCUMENT ME!
+ */
+ protected void cancelButton_actionPerformed()
+ {
+ }
+
+ public void caseSensitive_actionPerformed()
+ {
+
+ }
+
+ public void lcaseColour_actionPerformed()
+ {
+
+ }
+}