JAL-1503 update version in GPL header
[jalview.git] / src / jalview / jbgui / GPreferences.java
index 8b10c5f..d1df38d 100755 (executable)
-/*\r
-* Jalview - A Sequence Alignment Editor and Viewer\r
-* Copyright (C) 2005 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
-\r
-import javax.swing.*;\r
-import javax.swing.border.TitledBorder;\r
-import java.awt.event.*;\r
-import javax.swing.event.*;\r
-\r
-\r
-/**\r
- * DOCUMENT ME!\r
- *\r
- * @author $author$\r
- * @version $Revision$\r
- */\r
-public class GPreferences extends JPanel\r
-{\r
-    JTabbedPane tabbedPane = new JTabbedPane();\r
-\r
-    JButton ok = new JButton();\r
-    JButton cancel = new JButton();\r
-    JPanel okCancelPanel = new JPanel();\r
-    BorderLayout borderLayout1 = new BorderLayout();\r
-    protected JCheckBox quality = new JCheckBox();\r
-    JPanel visualTab = new JPanel();\r
-  protected JCheckBox fullScreen = new JCheckBox();\r
-    protected JCheckBox conservation = new JCheckBox();\r
-    protected JCheckBox identity = new JCheckBox();\r
-    protected JCheckBox annotations = new JCheckBox();\r
-    JLabel gapLabel = new JLabel();\r
-    protected JComboBox colour = new JComboBox();\r
-    JLabel colourLabel = new JLabel();\r
-    JLabel fontLabel = new JLabel();\r
-    protected JComboBox fontSizeCB = new JComboBox();\r
-    protected JComboBox fontStyleCB = new JComboBox();\r
-    protected JComboBox fontNameCB = new JComboBox();\r
-    protected JComboBox gapSymbolCB = new JComboBox();\r
-    protected JCheckBox startupCheckbox = new JCheckBox();\r
-    protected JTextField startupFileTextfield = new JTextField();\r
-  JPanel connectTab = new JPanel();\r
-  JLabel serverLabel = new JLabel();\r
-  protected JList linkURLList = new JList();\r
-  protected JTextField proxyServerTB = new JTextField();\r
-  protected JTextField proxyPortTB = new JTextField();\r
-  JLabel portLabel = new JLabel();\r
-  JLabel browserLabel = new JLabel();\r
-  protected JTextField defaultBrowser = new JTextField();\r
-  JButton newLink = new JButton();\r
-  JButton editLink = new JButton();\r
-  JButton deleteLink = new JButton();\r
-  JScrollPane linkScrollPane = new JScrollPane();\r
-  JPanel linkPanel = new JPanel();\r
-  BorderLayout borderLayout2 = new BorderLayout();\r
-  JPanel editLinkButtons = new JPanel();\r
-  GridLayout gridLayout1 = new GridLayout();\r
-  protected JList linkNameList = new JList();\r
-  JPanel linkPanel2 = new JPanel();\r
-  BorderLayout borderLayout3 = new BorderLayout();\r
-  protected JCheckBox useProxy = new JCheckBox();\r
-  JPanel jPanel1 = new JPanel();\r
-  TitledBorder titledBorder1 = new TitledBorder("Proxy Server");\r
-  TitledBorder titledBorder2 = new TitledBorder("File Output");\r
-  GridBagLayout gridBagLayout2 = new GridBagLayout();\r
-  GridBagLayout gridBagLayout1 = new GridBagLayout();\r
-  GridBagLayout gridBagLayout3 = new GridBagLayout();\r
-  protected JComboBox sortby = new JComboBox();\r
-  JLabel sortLabel = new JLabel();\r
-  JPanel jPanel2 = new JPanel();\r
-  GridLayout gridLayout2 = new GridLayout();\r
-  JPanel jPanel3 = new JPanel();\r
-  JPanel exportTab = new JPanel();\r
-  JLabel epsLabel = new JLabel();\r
-  protected JComboBox epsRendering = new JComboBox();\r
-  JLabel jLabel1 = new JLabel();\r
-  protected  JCheckBox blcjv = new JCheckBox();\r
-  protected  JCheckBox pileupjv = new JCheckBox();\r
-  protected  JCheckBox clustaljv = new JCheckBox();\r
-  protected  JCheckBox msfjv = new JCheckBox();\r
-  protected  JCheckBox fastajv = new JCheckBox();\r
-  protected  JCheckBox pfamjv = new JCheckBox();\r
-  FlowLayout flowLayout1 = new FlowLayout();\r
-  protected  JCheckBox pirjv = new JCheckBox();\r
-  JPanel jPanel11 = new JPanel();\r
-  Font verdana11 = new java.awt.Font("Verdana", Font.PLAIN, 11);\r
-  protected JCheckBox seqLimit = new JCheckBox();\r
-  GridLayout gridLayout3 = new GridLayout();\r
-  protected JCheckBox smoothFont = new JCheckBox();\r
-  /**\r
-     * Creates a new GPreferences object.\r
-     */\r
-    public GPreferences()\r
-    {\r
-        try\r
-        {\r
-            jbInit();\r
-        }\r
-        catch (Exception ex)\r
-        {\r
-            ex.printStackTrace();\r
-        }\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @throws Exception DOCUMENT ME!\r
-     */\r
-    private void jbInit() throws Exception\r
-    {\r
-        this.setLayout(borderLayout1);\r
-        ok.setText("OK");\r
-        ok.addActionListener(new ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    ok_actionPerformed(e);\r
-                }\r
-            });\r
-        cancel.setText("Cancel");\r
-        cancel.addActionListener(new ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    cancel_actionPerformed(e);\r
-                }\r
-            });\r
-        quality.setEnabled(false);\r
-        quality.setFont(verdana11);\r
-        quality.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        quality.setHorizontalTextPosition(SwingConstants.LEFT);\r
-        quality.setSelected(true);\r
-        quality.setText("Quality");\r
-    visualTab.setBorder(new TitledBorder("Open new alignment"));\r
-    visualTab.setLayout(null);\r
-    fullScreen.setFont(verdana11);\r
-        fullScreen.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        fullScreen.setHorizontalTextPosition(SwingConstants.LEFT);\r
-    fullScreen.setMargin(new Insets(2, 2, 2, 0));\r
-    fullScreen.setText("Maximise Window");\r
-    conservation.setEnabled(false);\r
-        conservation.setFont(verdana11);\r
-        conservation.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        conservation.setHorizontalTextPosition(SwingConstants.LEFT);\r
-        conservation.setSelected(true);\r
-        conservation.setText("Conservation");\r
-    identity.setEnabled(false);\r
-        identity.setFont(verdana11);\r
-        identity.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        identity.setHorizontalTextPosition(SwingConstants.LEFT);\r
-        identity.setSelected(true);\r
-        identity.setText("Consensus");\r
-    annotations.setFont(verdana11);\r
-        annotations.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        annotations.setHorizontalTextPosition(SwingConstants.LEFT);\r
-    annotations.setMargin(new Insets(2, 4, 2, 0));\r
-    annotations.setSelected(true);\r
-        annotations.setText("Show Annotations");\r
-    annotations.addActionListener(new ActionListener()\r
-            {\r
-                public void actionPerformed(ActionEvent e)\r
-                {\r
-                    annotations_actionPerformed(e);\r
-                }\r
-            });\r
-        gapLabel.setFont(verdana11);\r
-        gapLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        gapLabel.setText("Gap Symbol ");\r
-    colour.setFont(verdana11);\r
-        colour.setBounds(new Rectangle(171, 180, 155, 21));\r
-        colourLabel.setFont(verdana11);\r
-        colourLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        colourLabel.setText("Colour ");\r
-    fontLabel.setFont(verdana11);\r
-        fontLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        fontLabel.setText("Font ");\r
-    fontSizeCB.setFont(verdana11);\r
-        fontSizeCB.setBounds(new Rectangle(318, 100, 49, 21));\r
-        fontStyleCB.setFont(verdana11);\r
-        fontStyleCB.setBounds(new Rectangle(366, 100, 70, 21));\r
-        fontNameCB.setFont(verdana11);\r
-        fontNameCB.setBounds(new Rectangle(171, 100, 147, 21));\r
-        gapSymbolCB.setFont(verdana11);\r
-        gapSymbolCB.setBounds(new Rectangle(171, 153, 69, 21));\r
-        startupCheckbox.setText("Open file");\r
-    startupCheckbox.setFont(verdana11);\r
-        startupCheckbox.setHorizontalAlignment(SwingConstants.RIGHT);\r
-        startupCheckbox.setHorizontalTextPosition(SwingConstants.LEFT);\r
-        startupCheckbox.setSelected(true);\r
-        startupFileTextfield.setFont(verdana11);\r
-        startupFileTextfield.setBounds(new Rectangle(171, 236, 270, 20));\r
-        startupFileTextfield.addMouseListener(new MouseAdapter()\r
-            {\r
-                public void mouseClicked(MouseEvent e)\r
-                {\r
-                    if (e.getClickCount() > 1)\r
-                    {\r
-                        startupFileTextfield_mouseClicked();\r
-                    }\r
-                }\r
-            });\r
-\r
-     connectTab.setLayout(gridBagLayout3);\r
-    serverLabel.setText("Address");\r
-    serverLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    serverLabel.setFont(verdana11);\r
-    proxyServerTB.setFont(verdana11);\r
-    proxyPortTB.setFont(verdana11);\r
-    portLabel.setFont(verdana11);\r
-    portLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    portLabel.setText("Port");\r
-    browserLabel.setFont(new java.awt.Font("SansSerif", 0, 11));\r
-    browserLabel.setHorizontalAlignment(SwingConstants.TRAILING);\r
-    browserLabel.setText("Default Browser (Unix)");\r
-    defaultBrowser.setFont(verdana11);\r
-    defaultBrowser.setText("");\r
-    newLink.setText("New");\r
-    newLink.addActionListener(new java.awt.event.ActionListener() {\r
-      public void actionPerformed(ActionEvent e) {\r
-        newLink_actionPerformed(e);\r
-      }\r
-    });\r
-    editLink.setText("Edit");\r
-    editLink.addActionListener(new java.awt.event.ActionListener() {\r
-      public void actionPerformed(ActionEvent e) {\r
-        editLink_actionPerformed(e);\r
-      }\r
-    });\r
-    deleteLink.setText("Delete");\r
-    deleteLink.addActionListener(new java.awt.event.ActionListener() {\r
-      public void actionPerformed(ActionEvent e) {\r
-        deleteLink_actionPerformed(e);\r
-      }\r
-    });\r
-\r
-    linkURLList.addListSelectionListener(new ListSelectionListener()\r
-         {\r
-            public void valueChanged(ListSelectionEvent e)\r
-            {\r
-               int index = linkURLList.getSelectedIndex();\r
-               linkNameList.setSelectedIndex(index);\r
-            }\r
-         });\r
-\r
-    linkNameList.addListSelectionListener(new ListSelectionListener()\r
-        {\r
-          public void valueChanged(ListSelectionEvent e)\r
-          {\r
-              int index = linkNameList.getSelectedIndex();\r
-              linkURLList.setSelectedIndex(index);\r
-          }\r
-        });\r
-\r
-    linkScrollPane.setBorder(null);\r
-    linkPanel.setBorder(new TitledBorder("URL link from Sequence ID"));\r
-    linkPanel.setLayout(borderLayout2);\r
-    editLinkButtons.setLayout(gridLayout1);\r
-    gridLayout1.setRows(3);\r
-    linkNameList.setFont(verdana11);\r
-    linkNameList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
-    linkPanel2.setLayout(borderLayout3);\r
-    linkURLList.setFont(verdana11);\r
-    linkURLList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
-\r
-    defaultBrowser.addMouseListener(new MouseAdapter()\r
-    {\r
-      public void mouseClicked(MouseEvent e)\r
-      {\r
-        if (e.getClickCount() > 1)\r
-            {\r
-              defaultBrowser_mouseClicked(e);\r
-            }\r
-      }\r
-    });\r
-    useProxy.setFont(verdana11);\r
-    useProxy.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    useProxy.setHorizontalTextPosition(SwingConstants.LEADING);\r
-    useProxy.setText("Use a proxy server");\r
-    useProxy.addActionListener(new ActionListener()\r
-    {\r
-      public void actionPerformed(ActionEvent e)\r
-      {\r
-        useProxy_actionPerformed();\r
-      }\r
-    });\r
-    jPanel1.setBorder(titledBorder1);\r
-    jPanel1.setLayout(gridBagLayout1);\r
-    sortby.setFont(verdana11);\r
-    sortby.setBounds(new Rectangle(171, 208, 155, 21));\r
-    sortLabel.setFont(verdana11);\r
-    sortLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    sortLabel.setText("Sort by ");\r
-    jPanel2.setBounds(new Rectangle(7, 17, 158, 245));\r
-    jPanel2.setLayout(gridLayout2);\r
-    gridLayout2.setRows(9);\r
-    jPanel3.setBounds(new Rectangle(167, 41, 274, 26));\r
-    exportTab.setLayout(null);\r
-    epsLabel.setFont(verdana11);\r
-    epsLabel.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    epsLabel.setText("EPS Rendering Style");\r
-    epsLabel.setBounds(new Rectangle(9, 31, 140, 24));\r
-    epsRendering.setFont(verdana11);\r
-    epsRendering.setBounds(new Rectangle(154, 34, 187, 21));\r
-    jLabel1.setFont(verdana11);\r
-    jLabel1.setHorizontalAlignment(SwingConstants.CENTER);\r
-    jLabel1.setText("Append /start-end (/15-380)");\r
-    jLabel1.setFont(verdana11);\r
-    fastajv.setFont(verdana11);\r
-    fastajv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    clustaljv.setText("Clustal     ");\r
-    blcjv.setText("BLC     ");\r
-    fastajv.setText("Fasta     ");\r
-    msfjv.setText("MSF     ");\r
-    pfamjv.setText("PFAM     ");\r
-    pileupjv.setText("Pileup     ");\r
-    msfjv.setFont(verdana11);\r
-    msfjv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    pirjv.setText("PIR     ");\r
-    jPanel11.setFont(verdana11);\r
-    jPanel11.setBorder(titledBorder2);\r
-    jPanel11.setBounds(new Rectangle(30, 72, 196, 182));\r
-    jPanel11.setLayout(gridLayout3);\r
-    blcjv.setFont(verdana11);\r
-    blcjv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    clustaljv.setFont(verdana11);\r
-    clustaljv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    pfamjv.setFont(verdana11);\r
-    pfamjv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    pileupjv.setFont(verdana11);\r
-    pileupjv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    pirjv.setFont(verdana11);\r
-    pirjv.setHorizontalAlignment(SwingConstants.LEFT);\r
-    seqLimit.setFont(verdana11);\r
-    seqLimit.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    seqLimit.setHorizontalTextPosition(SwingConstants.LEFT);\r
-    seqLimit.setText("Full Sequence Id");\r
-    gridLayout3.setRows(8);\r
-    smoothFont.setFont(verdana11);\r
-    smoothFont.setHorizontalAlignment(SwingConstants.RIGHT);\r
-    smoothFont.setHorizontalTextPosition(SwingConstants.LEADING);\r
-    smoothFont.setText("Smooth Font");\r
-    jPanel2.add(fullScreen);\r
-\r
-    jPanel2.add(annotations);\r
-    jPanel2.add(seqLimit);\r
-    jPanel2.add(fontLabel);\r
-    jPanel2.add(smoothFont);\r
-    jPanel2.add(gapLabel);\r
-    jPanel2.add(colourLabel);\r
-    jPanel2.add(sortLabel);\r
-    jPanel2.add(startupCheckbox);\r
-    visualTab.add(colour);\r
-    visualTab.add(gapSymbolCB);\r
-    visualTab.add(startupFileTextfield);\r
-    visualTab.add(sortby);\r
-    visualTab.add(fontNameCB);\r
-    visualTab.add(fontSizeCB);\r
-    visualTab.add(fontStyleCB);\r
-    visualTab.add(jPanel3);\r
-    jPanel3.add(conservation);\r
-    jPanel3.add(identity);\r
-    jPanel3.add(quality);\r
-    visualTab.add(jPanel2);\r
-    linkPanel.add(editLinkButtons, BorderLayout.EAST);\r
-    editLinkButtons.add(newLink, null);\r
-    editLinkButtons.add(editLink, null);\r
-    editLinkButtons.add(deleteLink, null);\r
-    linkPanel.add(linkScrollPane, BorderLayout.CENTER);\r
-    linkScrollPane.getViewport().add(linkPanel2, null);\r
-    linkPanel2.add(linkURLList, BorderLayout.CENTER);\r
-    linkPanel2.add(linkNameList, BorderLayout.WEST);\r
-        okCancelPanel.add(ok);\r
-        okCancelPanel.add(cancel);\r
-    this.add(tabbedPane, java.awt.BorderLayout.CENTER);\r
-\r
-        this.add(okCancelPanel, java.awt.BorderLayout.SOUTH);\r
-    jPanel1.add(serverLabel, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0\r
-        , GridBagConstraints.WEST, GridBagConstraints.NONE,\r
-        new Insets(0, 2, 4, 0), 5, 0));\r
-    jPanel1.add(portLabel, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0\r
-                                                  , GridBagConstraints.WEST,\r
-                                                  GridBagConstraints.NONE,\r
-                                                  new Insets(0, 0, 4, 0), 11, 6));\r
-    connectTab.add(linkPanel, new GridBagConstraints(0, 0, 2, 1, 1.0, 1.0\r
-        , GridBagConstraints.CENTER, GridBagConstraints.BOTH,\r
-        new Insets(16, 0, 0, 12), 359, -17));\r
-    connectTab.add(jPanel1, new GridBagConstraints(0, 2, 2, 1, 1.0, 1.0\r
-        , GridBagConstraints.CENTER, GridBagConstraints.BOTH,\r
-        new Insets(21, 0, 35, 12), 4, 6));\r
-    connectTab.add(browserLabel, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0\r
-        , GridBagConstraints.WEST, GridBagConstraints.NONE,\r
-        new Insets(16, 0, 0, 0), 5, 1));\r
-    jPanel1.add(proxyPortTB, new GridBagConstraints(3, 1, 1, 1, 1.0, 0.0\r
-        , GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,\r
-        new Insets(0, 2, 4, 2), 54, 1));\r
-    jPanel1.add(proxyServerTB, new GridBagConstraints(1, 1, 1, 1, 1.0, 0.0\r
-        , GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,\r
-        new Insets(0, 2, 4, 0), 263, 1));\r
-    connectTab.add(defaultBrowser, new GridBagConstraints(1, 1, 1, 1, 1.0, 0.0\r
-        , GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,\r
-        new Insets(15, 0, 0, 15), 307, 1));\r
-\r
-\r
-    jPanel1.add(useProxy, new GridBagConstraints(0, 0, 2, 1, 0.0, 0.0\r
-                                                 , GridBagConstraints.WEST,\r
-                                                 GridBagConstraints.NONE,\r
-                                                 new Insets(0, 2, 5, 185), 2,\r
-                                                 -4));\r
-    DefaultListCellRenderer dlcr = new DefaultListCellRenderer();\r
-        dlcr.setHorizontalAlignment(DefaultListCellRenderer.CENTER);\r
-        gapSymbolCB.setRenderer(dlcr);\r
-\r
-    tabbedPane.add(visualTab, "Visual");\r
-    tabbedPane.add(connectTab,"Connections");\r
-    tabbedPane.add(exportTab, "Output");\r
-    jPanel11.add(jLabel1);\r
-    jPanel11.add(blcjv);\r
-    jPanel11.add(clustaljv);\r
-    jPanel11.add(fastajv);\r
-    jPanel11.add(msfjv);\r
-    jPanel11.add(pfamjv);\r
-    jPanel11.add(pileupjv);\r
-    jPanel11.add(pirjv);\r
-\r
-    exportTab.add(epsLabel);\r
-    exportTab.add(epsRendering);\r
-    exportTab.add(jPanel11);\r
-  }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    public void ok_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    public void cancel_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     *\r
-     * @param e DOCUMENT ME!\r
-     */\r
-    public void annotations_actionPerformed(ActionEvent e)\r
-    {\r
-    }\r
-\r
-\r
-    /**\r
-     * DOCUMENT ME!\r
-     */\r
-    public void startupFileTextfield_mouseClicked()\r
-    {\r
-    }\r
-\r
-\r
-  public void newLink_actionPerformed(ActionEvent e) {\r
-\r
-  }\r
-\r
-  public void editLink_actionPerformed(ActionEvent e) {\r
-\r
-  }\r
-\r
-  public void deleteLink_actionPerformed(ActionEvent e) {\r
-\r
-  }\r
-\r
-  public void defaultBrowser_mouseClicked(MouseEvent e)\r
-  {\r
-\r
-  }\r
-\r
-  public void linkURLList_keyTyped(KeyEvent e)\r
-  {\r
-\r
-  }\r
-\r
-  public void useProxy_actionPerformed()\r
-  {\r
-      proxyServerTB.setEnabled(useProxy.isSelected());\r
-      proxyPortTB.setEnabled(useProxy.isSelected());\r
-  }\r
-}\r
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Copyright (C) 2014 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.*;
+import java.awt.event.*;
+
+import javax.swing.*;
+import javax.swing.border.*;
+import javax.swing.event.*;
+import java.awt.Rectangle;
+
+/**
+ * DOCUMENT ME!
+ * 
+ * @author $author$
+ * @version $Revision$
+ */
+public class GPreferences extends JPanel
+{
+  JTabbedPane tabbedPane = new JTabbedPane();
+
+  JButton ok = new JButton();
+
+  JButton cancel = new JButton();
+
+  JPanel okCancelPanel = new JPanel();
+
+  BorderLayout borderLayout1 = new BorderLayout();
+
+  protected JCheckBox quality = new JCheckBox();
+
+  JPanel visualTab = new JPanel();
+
+  JPanel visual2Tab = new JPanel();
+
+  protected JCheckBox fullScreen = new JCheckBox();
+
+  protected JCheckBox conservation = new JCheckBox();
+
+  protected JCheckBox identity = new JCheckBox();
+
+  protected JCheckBox annotations = new JCheckBox();
+
+  protected JPanel minColour = new JPanel();
+
+  JLabel mincolourLabel = new JLabel();
+
+  protected JPanel maxColour = new JPanel();
+
+  JLabel maxcolourLabel = new JLabel();
+
+  JLabel gapLabel = new JLabel();
+
+  protected JComboBox colour = new JComboBox();
+
+  JLabel colourLabel = new JLabel();
+
+  JLabel fontLabel = new JLabel();
+
+  protected JComboBox fontSizeCB = new JComboBox();
+
+  protected JComboBox fontStyleCB = new JComboBox();
+
+  protected JComboBox fontNameCB = new JComboBox();
+
+  protected JComboBox gapSymbolCB = new JComboBox();
+
+  protected JCheckBox startupCheckbox = new JCheckBox();
+
+  protected JTextField startupFileTextfield = new JTextField();
+
+  JPanel connectTab = new JPanel();
+
+  JLabel serverLabel = new JLabel();
+
+  protected JList linkURLList = new JList();
+
+  protected JTextField proxyServerTB = new JTextField();
+
+  protected JTextField proxyPortTB = new JTextField();
+
+  JLabel portLabel = new JLabel();
+
+  JLabel browserLabel = new JLabel();
+
+  protected JTextField defaultBrowser = new JTextField();
+
+  JButton newLink = new JButton();
+
+  JButton editLink = new JButton();
+
+  JButton deleteLink = new JButton();
+
+  JScrollPane linkScrollPane = new JScrollPane();
+
+  JPanel linkPanel = new JPanel();
+
+  BorderLayout borderLayout2 = new BorderLayout();
+
+  JPanel editLinkButtons = new JPanel();
+
+  GridLayout gridLayout1 = new GridLayout();
+
+  protected JList linkNameList = new JList();
+
+  JPanel linkPanel2 = new JPanel();
+
+  BorderLayout borderLayout3 = new BorderLayout();
+
+  protected JCheckBox useProxy = new JCheckBox();
+
+  JPanel jPanel1 = new JPanel();
+
+  TitledBorder titledBorder1 = new TitledBorder(MessageManager.getString("label.proxy_server"));
+
+  TitledBorder titledBorder2 = new TitledBorder(MessageManager.getString("label.file_output"));
+
+  GridBagLayout gridBagLayout2 = new GridBagLayout();
+
+  GridBagLayout gridBagLayout1 = new GridBagLayout();
+
+  GridBagLayout gridBagLayout3 = new GridBagLayout();
+
+  protected JComboBox sortby = new JComboBox();
+
+  JLabel sortLabel = new JLabel();
+
+  JPanel jPanel2 = new JPanel();
+
+  JPanel visual2panel = new JPanel();
+
+  GridLayout gridLayout2 = new GridLayout();
+
+  GridLayout gridLayout4 = new GridLayout();
+
+  JPanel annsettingsPanel = new JPanel();
+
+  JPanel autoAnnotSettings1 = new JPanel();
+
+  JPanel autoAnnotSettings2 = new JPanel();
+
+  JPanel autoAnnotSettings3 = new JPanel();
+
+  JPanel exportTab = new JPanel();
+
+  JLabel epsLabel = new JLabel();
+
+  protected JComboBox epsRendering = new JComboBox();
+
+  protected JLabel userIdWidthlabel = new JLabel();
+
+  protected JCheckBox autoIdWidth = new JCheckBox();
+
+  protected JTextField userIdWidth = new JTextField();
+
+  JLabel jLabel1 = new JLabel();
+
+  protected JCheckBox blcjv = new JCheckBox();
+
+  protected JCheckBox pileupjv = new JCheckBox();
+
+  protected JCheckBox clustaljv = new JCheckBox();
+
+  protected JCheckBox msfjv = new JCheckBox();
+
+  protected JCheckBox fastajv = new JCheckBox();
+
+  protected JCheckBox pfamjv = new JCheckBox();
+
+  FlowLayout flowLayout1 = new FlowLayout();
+
+  protected JCheckBox pirjv = new JCheckBox();
+
+  JPanel jPanel11 = new JPanel();
+
+  Font verdana11 = JvSwingUtils.getLabelFont();
+
+  protected JCheckBox seqLimit = new JCheckBox();
+
+  GridLayout gridLayout3 = new GridLayout();
+
+  protected JCheckBox smoothFont = new JCheckBox();
+
+  JPanel calcTab = new JPanel();
+
+  protected JCheckBox autoCalculateConsCheck = new JCheckBox();
+
+  protected JCheckBox padGaps = new JCheckBox();
+
+  protected JCheckBox modellerOutput = new JCheckBox();
+
+  protected JPanel dasPanel = new JPanel();
+
+  BorderLayout borderLayout4 = new BorderLayout();
+
+  protected JPanel wsPanel = new JPanel();
+
+  BorderLayout borderLayout5 = new BorderLayout();
+
+  protected JCheckBox wrap = new JCheckBox();
+
+  protected JCheckBox rightAlign = new JCheckBox();
+
+  protected JCheckBox showUnconserved = new JCheckBox();
+
+  protected JCheckBox showDbRefTooltip = new JCheckBox();
+
+  protected JCheckBox showNpTooltip = new JCheckBox();
+
+  protected JCheckBox idItalics = new JCheckBox();
+
+  protected JCheckBox openoverv = new JCheckBox();
+
+  protected JCheckBox usagestats = new JCheckBox();
+
+  protected JCheckBox questionnaire = new JCheckBox();
+
+  protected JCheckBox versioncheck = new JCheckBox();
+
+  protected JLabel showGroupbits = new JLabel();
+
+  protected JLabel showConsensbits = new JLabel();
+
+  protected JCheckBox showConsensLogo = new JCheckBox();
+
+  protected JCheckBox showConsensHistogram = new JCheckBox();
+
+  protected JCheckBox showGroupConsensus = new JCheckBox();
+
+  protected JCheckBox showGroupConservation = new JCheckBox();
+
+  protected JCheckBox shareSelections = new JCheckBox();
+
+  protected JCheckBox followHighlight = new JCheckBox();
+
+  protected JCheckBox sortByTree = new JCheckBox();
+
+  /**
+   * Creates a new GPreferences object.
+   */
+  public GPreferences()
+  {
+    try
+    {
+      jbInit();
+    } catch (Exception ex)
+    {
+      ex.printStackTrace();
+    }
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @throws Exception
+   *           DOCUMENT ME!
+   */
+  private void jbInit() throws Exception
+  {
+    this.setLayout(borderLayout1);
+    ok.setText(MessageManager.getString("action.ok"));
+    ok.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        ok_actionPerformed(e);
+      }
+    });
+    cancel.setText(MessageManager.getString("action.cancel"));
+    cancel.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        cancel_actionPerformed(e);
+      }
+    });
+    quality.setEnabled(false);
+    quality.setFont(verdana11);
+    quality.setHorizontalAlignment(SwingConstants.RIGHT);
+    quality.setHorizontalTextPosition(SwingConstants.LEFT);
+    quality.setSelected(true);
+    quality.setText(MessageManager.getString("label.quality"));
+    visualTab.setBorder(new TitledBorder(MessageManager.getString("action.open_new_aligmnent")));
+    visualTab.setLayout(null);
+    visual2Tab.setBorder(new TitledBorder(MessageManager.getString("action.open_new_aligmnent")));
+    visual2Tab.setLayout(new FlowLayout());
+    fullScreen.setFont(verdana11);
+    fullScreen.setHorizontalAlignment(SwingConstants.RIGHT);
+    fullScreen.setHorizontalTextPosition(SwingConstants.LEFT);
+    fullScreen.setText(MessageManager.getString("label.maximize_window"));
+    conservation.setEnabled(false);
+    conservation.setFont(verdana11);
+    conservation.setHorizontalAlignment(SwingConstants.RIGHT);
+    conservation.setHorizontalTextPosition(SwingConstants.LEFT);
+    conservation.setSelected(true);
+    conservation.setText(MessageManager.getString("label.conservation"));
+    identity.setEnabled(false);
+    identity.setFont(verdana11);
+    identity.setHorizontalAlignment(SwingConstants.RIGHT);
+    identity.setHorizontalTextPosition(SwingConstants.LEFT);
+    identity.setSelected(true);
+    identity.setText(MessageManager.getString("label.consensus"));
+    showGroupbits.setFont(verdana11);
+    showGroupbits.setHorizontalAlignment(SwingConstants.RIGHT);
+    showGroupbits.setHorizontalTextPosition(SwingConstants.LEFT);
+    showGroupbits.setText(MessageManager.getString("action.show_group") + ":");
+    showConsensbits.setFont(verdana11);
+    showConsensbits.setHorizontalAlignment(SwingConstants.RIGHT);
+    showConsensbits.setHorizontalTextPosition(SwingConstants.LEFT);
+    showConsensbits.setText(MessageManager.getString("label.consensus") + ":");
+    showConsensHistogram.setEnabled(false);
+    showConsensHistogram.setFont(verdana11);
+    showConsensHistogram.setHorizontalAlignment(SwingConstants.RIGHT);
+    showConsensHistogram.setHorizontalTextPosition(SwingConstants.LEFT);
+    showConsensHistogram.setSelected(true);
+    showConsensHistogram.setText(MessageManager.getString("label.histogram"));
+    showConsensLogo.setEnabled(false);
+    showConsensLogo.setFont(verdana11);
+    showConsensLogo.setHorizontalAlignment(SwingConstants.RIGHT);
+    showConsensLogo.setHorizontalTextPosition(SwingConstants.LEFT);
+    showConsensLogo.setSelected(true);
+    showConsensLogo.setText(MessageManager.getString("label.logo"));
+    showGroupConsensus.setEnabled(false);
+    showGroupConsensus.setFont(verdana11);
+    showGroupConsensus.setHorizontalAlignment(SwingConstants.RIGHT);
+    showGroupConsensus.setHorizontalTextPosition(SwingConstants.LEFT);
+    showGroupConsensus.setSelected(true);
+    showGroupConsensus.setText(MessageManager.getString("label.consensus"));
+    showGroupConservation.setEnabled(false);
+    showGroupConservation.setFont(verdana11);
+    showGroupConservation.setHorizontalAlignment(SwingConstants.RIGHT);
+    showGroupConservation.setHorizontalTextPosition(SwingConstants.LEFT);
+    showGroupConservation.setSelected(true);
+    showGroupConservation.setText(MessageManager.getString("label.conservation"));
+    showNpTooltip.setEnabled(true);
+    showNpTooltip.setFont(verdana11);
+    showNpTooltip.setHorizontalAlignment(SwingConstants.RIGHT);
+    showNpTooltip.setHorizontalTextPosition(SwingConstants.LEFT);
+    showNpTooltip.setSelected(true);
+    showNpTooltip.setText(MessageManager.getString("label.non_positional_features"));
+    showDbRefTooltip.setEnabled(true);
+    showDbRefTooltip.setFont(verdana11);
+    showDbRefTooltip.setHorizontalAlignment(SwingConstants.RIGHT);
+    showDbRefTooltip.setHorizontalTextPosition(SwingConstants.LEFT);
+    showDbRefTooltip.setSelected(true);
+    showDbRefTooltip.setText(MessageManager.getString("label.database_references"));
+    annotations.setFont(verdana11);
+    annotations.setHorizontalAlignment(SwingConstants.RIGHT);
+    annotations.setHorizontalTextPosition(SwingConstants.LEADING);
+    annotations.setSelected(true);
+    annotations.setText(MessageManager.getString("label.show_annotations"));
+    annotations.setBounds(new Rectangle(169, 12, 200, 23));
+    annotations.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        annotations_actionPerformed(e);
+      }
+    });
+    identity.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        annotations_actionPerformed(e);
+      }
+    });
+    showGroupConsensus.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        annotations_actionPerformed(e);
+      }
+    });
+    showUnconserved.setFont(verdana11);
+    showUnconserved.setHorizontalAlignment(SwingConstants.RIGHT);
+    showUnconserved.setHorizontalTextPosition(SwingConstants.LEFT);
+    showUnconserved.setSelected(true);
+    showUnconserved.setText(MessageManager.getString("action.show_unconserved"));
+    showUnconserved.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        showunconserved_actionPerformed(e);
+      }
+    });
+    // / TODO: fit these in to preferences panel!!!!!
+    shareSelections.setFont(verdana11);
+    shareSelections.setHorizontalAlignment(SwingConstants.RIGHT);
+    shareSelections.setHorizontalTextPosition(SwingConstants.LEFT);
+    shareSelections.setSelected(true);
+    shareSelections.setText(MessageManager.getString("label.share_selection_across_views"));
+    followHighlight.setFont(verdana11);
+    followHighlight.setHorizontalAlignment(SwingConstants.RIGHT);
+    followHighlight.setHorizontalTextPosition(SwingConstants.LEFT);
+    // showUnconserved.setBounds(new Rectangle(169, 40, 200, 23));
+    followHighlight.setSelected(true);
+    followHighlight.setText(MessageManager.getString("label.scroll_highlighted_regions"));
+
+    gapLabel.setFont(verdana11);
+    gapLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    gapLabel.setText(MessageManager.getString("label.gap_symbol") + " ");
+    colour.setFont(verdana11);
+    colour.setBounds(new Rectangle(172, 225, 155, 21));
+    colourLabel.setFont(verdana11);
+    colourLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    colourLabel.setText(MessageManager.getString("label.alignment_colour") + " ");
+    fontLabel.setFont(verdana11);
+    fontLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    fontLabel.setText(MessageManager.getString("label.font"));
+    fontSizeCB.setFont(verdana11);
+    fontSizeCB.setBounds(new Rectangle(319, 104, 49, 23));
+    fontStyleCB.setFont(verdana11);
+    fontStyleCB.setBounds(new Rectangle(367, 104, 70, 23));
+    fontNameCB.setFont(verdana11);
+    fontNameCB.setBounds(new Rectangle(172, 104, 147, 23));
+    gapSymbolCB.setFont(verdana11);
+    gapSymbolCB.setBounds(new Rectangle(172, 204, 69, 23));
+    mincolourLabel.setFont(verdana11);
+    mincolourLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    mincolourLabel.setText(MessageManager.getString("label.min_colour"));
+    minColour.setFont(verdana11);
+    minColour.setBorder(BorderFactory.createEtchedBorder());
+    minColour.setPreferredSize(new Dimension(40, 20));
+    minColour.addMouseListener(new MouseAdapter()
+    {
+      public void mousePressed(MouseEvent e)
+      {
+        minColour_actionPerformed();
+      }
+    });
+    maxcolourLabel.setFont(verdana11);
+    maxcolourLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    maxcolourLabel.setText(MessageManager.getString("label.max_colour"));
+    maxColour.setFont(verdana11);
+    maxColour.setBorder(BorderFactory.createEtchedBorder());
+    maxColour.setPreferredSize(new Dimension(40, 20));
+    maxColour.addMouseListener(new MouseAdapter()
+    {
+      public void mousePressed(MouseEvent e)
+      {
+        maxColour_actionPerformed();
+      }
+    });
+
+    startupCheckbox.setText(MessageManager.getString("action.open_file"));
+    startupCheckbox.setFont(verdana11);
+    startupCheckbox.setHorizontalAlignment(SwingConstants.RIGHT);
+    startupCheckbox.setHorizontalTextPosition(SwingConstants.LEFT);
+    startupCheckbox.setSelected(true);
+    startupFileTextfield.setFont(verdana11);
+    startupFileTextfield.setBounds(new Rectangle(172, 273, 270, 20));
+    startupFileTextfield.addMouseListener(new MouseAdapter()
+    {
+      public void mouseClicked(MouseEvent e)
+      {
+        if (e.getClickCount() > 1)
+        {
+          startupFileTextfield_mouseClicked();
+        }
+      }
+    });
+
+    connectTab.setLayout(gridBagLayout3);
+    serverLabel.setText(MessageManager.getString("label.address"));
+    serverLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    serverLabel.setFont(verdana11);
+    proxyServerTB.setFont(verdana11);
+    proxyPortTB.setFont(verdana11);
+    portLabel.setFont(verdana11);
+    portLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    portLabel.setText(MessageManager.getString("label.port"));
+    browserLabel.setFont(new java.awt.Font("SansSerif", 0, 11));
+    browserLabel.setHorizontalAlignment(SwingConstants.TRAILING);
+    browserLabel.setText(MessageManager.getString("label.default_browser_unix"));
+    defaultBrowser.setFont(verdana11);
+    defaultBrowser.setText("");
+    usagestats.setText(MessageManager.getString("label.send_usage_statistics"));
+    usagestats.setFont(verdana11);
+    usagestats.setHorizontalAlignment(SwingConstants.RIGHT);
+    usagestats.setHorizontalTextPosition(SwingConstants.LEADING);
+    questionnaire.setText(MessageManager.getString("label.check_for_questionnaires"));
+    questionnaire.setFont(verdana11);
+    questionnaire.setHorizontalAlignment(SwingConstants.RIGHT);
+    questionnaire.setHorizontalTextPosition(SwingConstants.LEADING);
+    versioncheck.setText(MessageManager.getString("label.check_for_latest_version"));
+    versioncheck.setFont(verdana11);
+    versioncheck.setHorizontalAlignment(SwingConstants.RIGHT);
+    versioncheck.setHorizontalTextPosition(SwingConstants.LEADING);
+    newLink.setText(MessageManager.getString("action.new"));
+    newLink.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        newLink_actionPerformed(e);
+      }
+    });
+    editLink.setText(MessageManager.getString("action.edit"));
+    editLink.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        editLink_actionPerformed(e);
+      }
+    });
+    deleteLink.setText(MessageManager.getString("action.delete"));
+    deleteLink.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        deleteLink_actionPerformed(e);
+      }
+    });
+
+    linkURLList.addListSelectionListener(new ListSelectionListener()
+    {
+      public void valueChanged(ListSelectionEvent e)
+      {
+        int index = linkURLList.getSelectedIndex();
+        linkNameList.setSelectedIndex(index);
+      }
+    });
+
+    linkNameList.addListSelectionListener(new ListSelectionListener()
+    {
+      public void valueChanged(ListSelectionEvent e)
+      {
+        int index = linkNameList.getSelectedIndex();
+        linkURLList.setSelectedIndex(index);
+      }
+    });
+
+    linkScrollPane.setBorder(null);
+    linkPanel.setBorder(new TitledBorder(MessageManager.getString("label.url_linkfrom_sequence_id")));
+    linkPanel.setLayout(borderLayout2);
+    editLinkButtons.setLayout(gridLayout1);
+    gridLayout1.setRows(3);
+    linkNameList.setFont(verdana11);
+    linkNameList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
+    linkPanel2.setLayout(borderLayout3);
+    linkURLList.setFont(verdana11);
+    linkURLList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
+
+    defaultBrowser.addMouseListener(new MouseAdapter()
+    {
+      public void mouseClicked(MouseEvent e)
+      {
+        if (e.getClickCount() > 1)
+        {
+          defaultBrowser_mouseClicked(e);
+        }
+      }
+    });
+    useProxy.setFont(verdana11);
+    useProxy.setHorizontalAlignment(SwingConstants.RIGHT);
+    useProxy.setHorizontalTextPosition(SwingConstants.LEADING);
+    useProxy.setText(MessageManager.getString("label.use_proxy_server"));
+    useProxy.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        useProxy_actionPerformed();
+      }
+    });
+    jPanel1.setBorder(titledBorder1);
+    jPanel1.setLayout(gridBagLayout1);
+    sortby.setFont(verdana11);
+    sortby.setBounds(new Rectangle(172, 249, 155, 21));
+    sortLabel.setFont(verdana11);
+    sortLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    sortLabel.setText(MessageManager.getString("label.sort_by"));
+    jPanel2.setBounds(new Rectangle(7, 17, 158, 278));
+    jPanel2.setLayout(gridLayout2);
+    gridLayout2.setRows(12);
+    exportTab.setLayout(null);
+    epsLabel.setFont(verdana11);
+    epsLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    epsLabel.setText(MessageManager.getString("label.eps_rendering_style"));
+    epsLabel.setBounds(new Rectangle(9, 31, 140, 24));
+    epsRendering.setFont(verdana11);
+    epsRendering.setBounds(new Rectangle(154, 34, 187, 21));
+    jLabel1.setFont(verdana11);
+    jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
+    jLabel1.setText(MessageManager.getString("label.append_start_end"));
+    jLabel1.setFont(verdana11);
+    fastajv.setFont(verdana11);
+    fastajv.setHorizontalAlignment(SwingConstants.LEFT);
+    clustaljv.setText(MessageManager.getString("label.clustal") + "     ");
+    blcjv.setText(MessageManager.getString("label.blc") + "     ");
+    fastajv.setText(MessageManager.getString("label.fasta") + "     ");
+    msfjv.setText(MessageManager.getString("label.msf")+ "     ");
+    pfamjv.setText(MessageManager.getString("label.pfam") + "     ");
+    pileupjv.setText(MessageManager.getString("label.pileup") + "     ");
+    msfjv.setFont(verdana11);
+    msfjv.setHorizontalAlignment(SwingConstants.LEFT);
+    pirjv.setText(MessageManager.getString("label.pir") + "     ");
+    jPanel11.setFont(verdana11);
+    jPanel11.setBorder(titledBorder2);
+    jPanel11.setBounds(new Rectangle(30, 72, 196, 182));
+    jPanel11.setLayout(gridLayout3);
+    blcjv.setFont(verdana11);
+    blcjv.setHorizontalAlignment(SwingConstants.LEFT);
+    clustaljv.setFont(verdana11);
+    clustaljv.setHorizontalAlignment(SwingConstants.LEFT);
+    pfamjv.setFont(verdana11);
+    pfamjv.setHorizontalAlignment(SwingConstants.LEFT);
+    pileupjv.setFont(verdana11);
+    pileupjv.setHorizontalAlignment(SwingConstants.LEFT);
+    pirjv.setFont(verdana11);
+    pirjv.setHorizontalAlignment(SwingConstants.LEFT);
+    seqLimit.setFont(verdana11);
+    seqLimit.setHorizontalAlignment(SwingConstants.RIGHT);
+    seqLimit.setHorizontalTextPosition(SwingConstants.LEFT);
+    seqLimit.setText(MessageManager.getString("label.full_sequence_id"));
+    gridLayout3.setRows(8);
+    smoothFont.setFont(verdana11);
+    smoothFont.setHorizontalAlignment(SwingConstants.RIGHT);
+    smoothFont.setHorizontalTextPosition(SwingConstants.LEADING);
+    smoothFont.setText(MessageManager.getString("label.smooth_font"));
+    calcTab.setLayout(null);
+    autoCalculateConsCheck.setFont(JvSwingUtils.getLabelFont());
+    autoCalculateConsCheck.setText(MessageManager.getString("label.autocalculate_consensus"));
+    autoCalculateConsCheck.setBounds(new Rectangle(21, 52, 209, 23));
+    padGaps.setFont(JvSwingUtils.getLabelFont());
+    padGaps.setText(MessageManager.getString("label.pad_gaps_when_editing"));
+    padGaps.setBounds(new Rectangle(22, 94, 168, 23));
+    sortByTree.setFont(JvSwingUtils.getLabelFont());
+    sortByTree.setText(MessageManager.getString("label.sort_with_new_tree"));
+    sortByTree
+            .setToolTipText(MessageManager.getString("label.any_trees_calculated_or_loaded_alignment_automatically_sort"));
+    sortByTree.setBounds(new Rectangle(22, 136, 168, 23));
+
+    autoIdWidth.setFont(JvSwingUtils.getLabelFont());
+    autoIdWidth.setText(MessageManager.getString("label.automatically_set_id_width"));
+    autoIdWidth
+            .setToolTipText("<html>"
+                    + JvSwingUtils
+                            .wrapTooltip("Adjusts the width of the generated EPS or PNG file to ensure even the longest sequence ID or annotation label is displayed")
+                    + "</html>");
+    autoIdWidth.setBounds(new Rectangle(228, 96, 188, 23));
+    autoIdWidth.addActionListener(new ActionListener()
+    {
+
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        autoIdWidth_actionPerformed();
+      }
+    });
+    userIdWidthlabel.setFont(JvSwingUtils.getLabelFont());
+    userIdWidthlabel.setText(MessageManager.getString("label.figure_id_column_width"));
+    userIdWidth
+            .setToolTipText("<html>"
+                    + JvSwingUtils
+                            .wrapTooltip("Manually specify the width of the left hand column where sequence IDs and annotation labels will be rendered in exported alignment figures. This setting will be ignored if 'Automatically set ID width' is set")
+                    + "</html>");
+    userIdWidthlabel
+            .setToolTipText("<html>"
+                    + JvSwingUtils
+                            .wrapTooltip("Manually specify the width of the left hand column where sequence IDs and annotation labels will be rendered in exported alignment figures. This setting will be ignored if 'Automatically set ID width' is set")
+                    + "</html>");
+    userIdWidthlabel.setBounds(new Rectangle(236, 120, 168, 23));
+    userIdWidth.setFont(JvSwingUtils.getTextAreaFont());
+    userIdWidth.setText("");
+    userIdWidth.setBounds(new Rectangle(232, 144, 84, 23));
+    userIdWidth.addActionListener(new ActionListener()
+    {
+
+      @Override
+      public void actionPerformed(ActionEvent e)
+      {
+        userIdWidth_actionPerformed();
+      }
+    });
+    modellerOutput.setFont(JvSwingUtils.getLabelFont());
+    modellerOutput.setText(MessageManager.getString("label.use_modeller_output"));
+    modellerOutput.setBounds(new Rectangle(228, 226, 168, 23));
+
+    dasPanel.setLayout(borderLayout4);
+    wsPanel.setLayout(borderLayout5);
+    wrap.setFont(JvSwingUtils.getLabelFont());
+    wrap.setHorizontalAlignment(SwingConstants.TRAILING);
+    wrap.setHorizontalTextPosition(SwingConstants.LEADING);
+    wrap.setText(MessageManager.getString("label.wrap_alignment"));
+    rightAlign.setFont(JvSwingUtils.getLabelFont());
+    rightAlign.setForeground(Color.black);
+    rightAlign.setHorizontalAlignment(SwingConstants.RIGHT);
+    rightAlign.setHorizontalTextPosition(SwingConstants.LEFT);
+    rightAlign.setText(MessageManager.getString("label.right_align_ids"));
+    idItalics.setFont(JvSwingUtils.getLabelFont());
+    idItalics.setHorizontalAlignment(SwingConstants.RIGHT);
+    idItalics.setHorizontalTextPosition(SwingConstants.LEADING);
+    idItalics.setText(MessageManager.getString("label.sequence_name_italics"));
+    openoverv.setFont(JvSwingUtils.getLabelFont());
+    openoverv.setActionCommand(MessageManager.getString("label.open_overview"));
+    openoverv.setHorizontalAlignment(SwingConstants.RIGHT);
+    openoverv.setHorizontalTextPosition(SwingConstants.LEFT);
+    openoverv.setText(MessageManager.getString(("label.open_overview")));
+    jPanel2.add(fullScreen);
+    jPanel2.add(openoverv);
+    jPanel2.add(seqLimit);
+    jPanel2.add(rightAlign);
+    jPanel2.add(fontLabel);
+    jPanel2.add(showUnconserved);
+    jPanel2.add(idItalics);
+    jPanel2.add(smoothFont);
+    jPanel2.add(gapLabel);
+    jPanel2.add(wrap);
+    jPanel2.add(sortLabel);
+    jPanel2.add(startupCheckbox);
+    visualTab.add(annotations);
+    visualTab.add(startupFileTextfield);
+    visualTab.add(sortby);
+    visualTab.add(gapSymbolCB);
+    visualTab.add(fontNameCB);
+    visualTab.add(fontSizeCB);
+    visualTab.add(fontStyleCB);
+    annsettingsPanel.setBounds(new Rectangle(173, 34, 300, 61));
+    annsettingsPanel.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
+    annsettingsPanel.add(autoAnnotSettings1);
+    annsettingsPanel.add(autoAnnotSettings2);
+    annsettingsPanel.add(autoAnnotSettings3);
+    autoAnnotSettings1.setLayout(new GridLayout(3, 1, 0, 0));
+    autoAnnotSettings2.setLayout(new GridLayout(3, 1, 0, 0));
+    autoAnnotSettings3.setLayout(new GridLayout(3, 1, 0, 0));
+    visualTab.add(annsettingsPanel);
+    Border jb = new EmptyBorder(1, 1, 4, 5);
+    quality.setBorder(jb);
+    conservation.setBorder(jb);
+    identity.setBorder(jb);
+    showConsensbits.setBorder(jb);
+    showGroupbits.setBorder(jb);
+    showGroupConsensus.setBorder(jb);
+    showGroupConservation.setBorder(jb);
+    showConsensHistogram.setBorder(jb);
+    showConsensLogo.setBorder(jb);
+
+    autoAnnotSettings2.add(conservation);
+    autoAnnotSettings1.add(quality);
+    autoAnnotSettings3.add(identity);
+    autoAnnotSettings1.add(showGroupbits);
+    autoAnnotSettings3.add(showGroupConsensus);
+    autoAnnotSettings2.add(showGroupConservation);
+    autoAnnotSettings1.add(showConsensbits);
+    autoAnnotSettings2.add(showConsensHistogram);
+    autoAnnotSettings3.add(showConsensLogo);
+
+    JPanel tooltipSettings = new JPanel();
+    tooltipSettings.setBorder(new TitledBorder(MessageManager.getString("label.sequence_id_tooltip")));
+    tooltipSettings.setBounds(173, 130, 200, 62);
+    tooltipSettings.setLayout(new GridLayout(2, 1));
+    tooltipSettings.add(showDbRefTooltip);
+    tooltipSettings.add(showNpTooltip);
+    visualTab.add(tooltipSettings);
+    visualTab.add(jPanel2);
+    JvSwingUtils.addtoLayout(visual2Tab,
+           MessageManager.getString("label.default_colour_scheme_for_alignment"), colourLabel, colour);
+    JPanel annotationShding = new JPanel();
+    annotationShding.setBorder(new TitledBorder(
+            MessageManager.getString("label.annotation_shading_default")));
+    annotationShding.setLayout(new GridLayout(1, 2));
+    JvSwingUtils.addtoLayout(annotationShding,
+            MessageManager.getString("label.default_minimum_colour_annotation_shading"),
+            mincolourLabel, minColour);
+    JvSwingUtils.addtoLayout(annotationShding,
+            MessageManager.getString("label.default_maximum_colour_annotation_shading"),
+            maxcolourLabel, maxColour);
+    visual2Tab.add(annotationShding); // , FlowLayout.LEFT);
+
+    // visual2panel.add(minColour);
+    // visual2panel.add(maxColour);
+    // visual2Tab.add(visual2panel);
+
+    linkPanel.add(editLinkButtons, BorderLayout.EAST);
+    editLinkButtons.add(newLink, null);
+    editLinkButtons.add(editLink, null);
+    editLinkButtons.add(deleteLink, null);
+    linkPanel.add(linkScrollPane, BorderLayout.CENTER);
+    linkScrollPane.getViewport().add(linkPanel2, null);
+    linkPanel2.add(linkURLList, BorderLayout.CENTER);
+    linkPanel2.add(linkNameList, BorderLayout.WEST);
+    okCancelPanel.add(ok);
+    okCancelPanel.add(cancel);
+    this.add(tabbedPane, java.awt.BorderLayout.CENTER);
+
+    this.add(okCancelPanel, java.awt.BorderLayout.SOUTH);
+    jPanel1.add(serverLabel, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0,
+            GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,
+                    2, 4, 0), 5, 0));
+    jPanel1.add(portLabel, new GridBagConstraints(2, 1, 1, 1, 0.0, 0.0,
+            GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,
+                    0, 4, 0), 11, 6));
+    connectTab.add(linkPanel, new GridBagConstraints(0, 0, 2, 1, 1.0, 1.0,
+            GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(
+                    16, 0, 0, 12), 359, -17));
+    connectTab.add(jPanel1, new GridBagConstraints(0, 2, 2, 1, 1.0, 1.0,
+            GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(
+                    21, 0, 35, 12), 4, 6));
+    connectTab.add(browserLabel, new GridBagConstraints(0, 1, 1, 1, 0.0,
+            0.0, GridBagConstraints.WEST, GridBagConstraints.NONE,
+            new Insets(16, 0, 0, 0), 5, 1));
+    jPanel1.add(proxyPortTB, new GridBagConstraints(3, 1, 1, 1, 1.0, 0.0,
+            GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+            new Insets(0, 2, 4, 2), 54, 1));
+    jPanel1.add(proxyServerTB, new GridBagConstraints(1, 1, 1, 1, 1.0, 0.0,
+            GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+            new Insets(0, 2, 4, 0), 263, 1));
+    connectTab.add(defaultBrowser, new GridBagConstraints(1, 1, 1, 1, 1.0,
+            0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+            new Insets(15, 0, 0, 15), 307, 1));
+    connectTab.add(usagestats, new GridBagConstraints(0, 4, 1, 1, 1.0, 0.0,
+            GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+            new Insets(0, 2, 4, 2), 70, 1));
+    connectTab.add(questionnaire, new GridBagConstraints(1, 4, 1, 1, 1.0,
+            0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+            new Insets(0, 2, 4, 2), 70, 1));
+    connectTab.add(versioncheck, new GridBagConstraints(0, 5, 1, 1, 1.0,
+            0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL,
+            new Insets(0, 2, 4, 2), 70, 1));
+
+    jPanel1.add(useProxy, new GridBagConstraints(0, 0, 2, 1, 0.0, 0.0,
+            GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(0,
+                    2, 5, 185), 2, -4));
+    DefaultListCellRenderer dlcr = new DefaultListCellRenderer();
+    dlcr.setHorizontalAlignment(DefaultListCellRenderer.CENTER);
+    gapSymbolCB.setRenderer(dlcr);
+
+    tabbedPane.add(visualTab, MessageManager.getString("label.visual"));
+    tabbedPane.add(visual2Tab, MessageManager.getString("label.colours"));
+    tabbedPane.add(connectTab, MessageManager.getString("label.connections"));
+    tabbedPane.add(exportTab, MessageManager.getString("label.output"));
+    jPanel11.add(jLabel1);
+    jPanel11.add(blcjv);
+    jPanel11.add(clustaljv);
+    jPanel11.add(fastajv);
+    jPanel11.add(msfjv);
+    jPanel11.add(pfamjv);
+    jPanel11.add(pileupjv);
+    jPanel11.add(pirjv);
+    exportTab.add(autoIdWidth);
+    exportTab.add(userIdWidth);
+    exportTab.add(userIdWidthlabel);
+    exportTab.add(modellerOutput);
+    tabbedPane.add(calcTab, MessageManager.getString("label.editing"));
+    calcTab.add(autoCalculateConsCheck);
+    calcTab.add(padGaps);
+    calcTab.add(sortByTree);
+
+    tabbedPane.add(dasPanel, MessageManager.getString("label.das_settings"));
+    tabbedPane.add(wsPanel, MessageManager.getString("label.web_services"));
+
+    exportTab.add(epsLabel);
+    exportTab.add(epsRendering);
+    exportTab.add(jPanel11);
+  }
+
+  protected void autoIdWidth_actionPerformed()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  protected void userIdWidth_actionPerformed()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  protected void maxColour_actionPerformed()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  protected void minColour_actionPerformed()
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  protected void showunconserved_actionPerformed(ActionEvent e)
+  {
+    // TODO Auto-generated method stub
+
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  public void ok_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  public void cancel_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   * 
+   * @param e
+   *          DOCUMENT ME!
+   */
+  public void annotations_actionPerformed(ActionEvent e)
+  {
+  }
+
+  /**
+   * DOCUMENT ME!
+   */
+  public void startupFileTextfield_mouseClicked()
+  {
+  }
+
+  public void newLink_actionPerformed(ActionEvent e)
+  {
+
+  }
+
+  public void editLink_actionPerformed(ActionEvent e)
+  {
+
+  }
+
+  public void deleteLink_actionPerformed(ActionEvent e)
+  {
+
+  }
+
+  public void defaultBrowser_mouseClicked(MouseEvent e)
+  {
+
+  }
+
+  public void linkURLList_keyTyped(KeyEvent e)
+  {
+
+  }
+
+  public void useProxy_actionPerformed()
+  {
+    proxyServerTB.setEnabled(useProxy.isSelected());
+    proxyPortTB.setEnabled(useProxy.isSelected());
+  }
+
+}