update author list in license for (JAL-826)
[jalview.git] / src / jalview / jbgui / GPreferences.java
index 02756f1..c37d230 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(172, 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(172, 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(170, 236, 271, 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, 246));\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.LEADING);\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(startupFileTextfield);\r
-    visualTab.add(sortby);\r
-    visualTab.add(colour);\r
-    visualTab.add(gapSymbolCB);\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, "visualTab");\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.7)
+ * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle
+ * 
+ * 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/>.
+ */
+package jalview.jbgui;
+
+import jalview.gui.JvSwingUtils;
+
+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("Proxy Server");
+
+  TitledBorder titledBorder2 = new TitledBorder("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();
+
+  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("OK");
+    ok.addActionListener(new ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        ok_actionPerformed(e);
+      }
+    });
+    cancel.setText("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("Quality");
+    visualTab.setBorder(new TitledBorder("Open new alignment"));
+    visualTab.setLayout(null);
+    visual2Tab.setBorder(new TitledBorder("Open new alignment"));
+    visual2Tab.setLayout(new FlowLayout());
+    fullScreen.setFont(verdana11);
+    fullScreen.setHorizontalAlignment(SwingConstants.RIGHT);
+    fullScreen.setHorizontalTextPosition(SwingConstants.LEFT);
+    fullScreen.setText("Maximise Window");
+    conservation.setEnabled(false);
+    conservation.setFont(verdana11);
+    conservation.setHorizontalAlignment(SwingConstants.RIGHT);
+    conservation.setHorizontalTextPosition(SwingConstants.LEFT);
+    conservation.setSelected(true);
+    conservation.setText("Conservation");
+    identity.setEnabled(false);
+    identity.setFont(verdana11);
+    identity.setHorizontalAlignment(SwingConstants.RIGHT);
+    identity.setHorizontalTextPosition(SwingConstants.LEFT);
+    identity.setSelected(true);
+    identity.setText("Consensus");
+    showGroupbits.setFont(verdana11);
+    showGroupbits.setHorizontalAlignment(SwingConstants.RIGHT);
+    showGroupbits.setHorizontalTextPosition(SwingConstants.LEFT);
+    showGroupbits.setText("Show group:");
+    showConsensbits.setFont(verdana11);
+    showConsensbits.setHorizontalAlignment(SwingConstants.RIGHT);
+    showConsensbits.setHorizontalTextPosition(SwingConstants.LEFT);
+    showConsensbits.setText("Consensus:");
+    showConsensHistogram.setEnabled(false);
+    showConsensHistogram.setFont(verdana11);
+    showConsensHistogram.setHorizontalAlignment(SwingConstants.RIGHT);
+    showConsensHistogram.setHorizontalTextPosition(SwingConstants.LEFT);
+    showConsensHistogram.setSelected(true);
+    showConsensHistogram.setText("Histogram");
+    showConsensLogo.setEnabled(false);
+    showConsensLogo.setFont(verdana11);
+    showConsensLogo.setHorizontalAlignment(SwingConstants.RIGHT);
+    showConsensLogo.setHorizontalTextPosition(SwingConstants.LEFT);
+    showConsensLogo.setSelected(true);
+    showConsensLogo.setText("Logo");
+    showGroupConsensus.setEnabled(false);
+    showGroupConsensus.setFont(verdana11);
+    showGroupConsensus.setHorizontalAlignment(SwingConstants.RIGHT);
+    showGroupConsensus.setHorizontalTextPosition(SwingConstants.LEFT);
+    showGroupConsensus.setSelected(true);
+    showGroupConsensus.setText("Consensus");
+    showGroupConservation.setEnabled(false);
+    showGroupConservation.setFont(verdana11);
+    showGroupConservation.setHorizontalAlignment(SwingConstants.RIGHT);
+    showGroupConservation.setHorizontalTextPosition(SwingConstants.LEFT);
+    showGroupConservation.setSelected(true);
+    showGroupConservation.setText("Conservation");
+    showNpTooltip.setEnabled(true);
+    showNpTooltip.setFont(verdana11);
+    showNpTooltip.setHorizontalAlignment(SwingConstants.RIGHT);
+    showNpTooltip.setHorizontalTextPosition(SwingConstants.LEFT);
+    showNpTooltip.setSelected(true);
+    showNpTooltip.setText("Non-positional Features");
+    showDbRefTooltip.setEnabled(true);
+    showDbRefTooltip.setFont(verdana11);
+    showDbRefTooltip.setHorizontalAlignment(SwingConstants.RIGHT);
+    showDbRefTooltip.setHorizontalTextPosition(SwingConstants.LEFT);
+    showDbRefTooltip.setSelected(true);
+    showDbRefTooltip.setText("Database References");
+    annotations.setFont(verdana11);
+    annotations.setHorizontalAlignment(SwingConstants.RIGHT);
+    annotations.setHorizontalTextPosition(SwingConstants.LEADING);
+    annotations.setSelected(true);
+    annotations.setText("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("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("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("Scroll to highlighted regions");
+
+    gapLabel.setFont(verdana11);
+    gapLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    gapLabel.setText("Gap Symbol ");
+    colour.setFont(verdana11);
+    colour.setBounds(new Rectangle(172, 225, 155, 21));
+    colourLabel.setFont(verdana11);
+    colourLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    colourLabel.setText("Alignment Colour ");
+    fontLabel.setFont(verdana11);
+    fontLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    fontLabel.setText("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("Minimum 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("Maximum 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("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("Address");
+    serverLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    serverLabel.setFont(verdana11);
+    proxyServerTB.setFont(verdana11);
+    proxyPortTB.setFont(verdana11);
+    portLabel.setFont(verdana11);
+    portLabel.setHorizontalAlignment(SwingConstants.RIGHT);
+    portLabel.setText("Port");
+    browserLabel.setFont(new java.awt.Font("SansSerif", 0, 11));
+    browserLabel.setHorizontalAlignment(SwingConstants.TRAILING);
+    browserLabel.setText("Default Browser (Unix)");
+    defaultBrowser.setFont(verdana11);
+    defaultBrowser.setText("");
+    usagestats.setText("Send usage statistics");
+    usagestats.setFont(verdana11);
+    usagestats.setHorizontalAlignment(SwingConstants.RIGHT);
+    usagestats.setHorizontalTextPosition(SwingConstants.LEADING);
+    questionnaire.setText("Check for questionnaires");
+    questionnaire.setFont(verdana11);
+    questionnaire.setHorizontalAlignment(SwingConstants.RIGHT);
+    questionnaire.setHorizontalTextPosition(SwingConstants.LEADING);
+    versioncheck.setText("Check for latest version");
+    versioncheck.setFont(verdana11);
+    versioncheck.setHorizontalAlignment(SwingConstants.RIGHT);
+    versioncheck.setHorizontalTextPosition(SwingConstants.LEADING);
+    newLink.setText("New");
+    newLink.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        newLink_actionPerformed(e);
+      }
+    });
+    editLink.setText("Edit");
+    editLink.addActionListener(new java.awt.event.ActionListener()
+    {
+      public void actionPerformed(ActionEvent e)
+      {
+        editLink_actionPerformed(e);
+      }
+    });
+    deleteLink.setText("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("URL link from 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("Use a 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("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("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("Append /start-end (/15-380)");
+    jLabel1.setFont(verdana11);
+    fastajv.setFont(verdana11);
+    fastajv.setHorizontalAlignment(SwingConstants.LEFT);
+    clustaljv.setText("Clustal     ");
+    blcjv.setText("BLC     ");
+    fastajv.setText("Fasta     ");
+    msfjv.setText("MSF     ");
+    pfamjv.setText("PFAM     ");
+    pileupjv.setText("Pileup     ");
+    msfjv.setFont(verdana11);
+    msfjv.setHorizontalAlignment(SwingConstants.LEFT);
+    pirjv.setText("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("Full Sequence Id");
+    gridLayout3.setRows(8);
+    smoothFont.setFont(verdana11);
+    smoothFont.setHorizontalAlignment(SwingConstants.RIGHT);
+    smoothFont.setHorizontalTextPosition(SwingConstants.LEADING);
+    smoothFont.setText("Smooth Font");
+    calcTab.setLayout(null);
+    autoCalculateConsCheck.setFont(JvSwingUtils.getLabelFont());
+    autoCalculateConsCheck.setText("AutoCalculate Consensus");
+    autoCalculateConsCheck.setBounds(new Rectangle(21, 52, 209, 23));
+    padGaps.setFont(JvSwingUtils.getLabelFont());
+    padGaps.setText("Pad Gaps When Editing");
+    padGaps.setBounds(new Rectangle(22, 94, 168, 23));
+    sortByTree.setFont(JvSwingUtils.getLabelFont());
+    sortByTree.setText("Sort With New Tree");
+    sortByTree.setToolTipText("When selected, any trees calculated or loaded onto the alignment will automatically sort the alignment.");
+    sortByTree.setBounds(new Rectangle(22, 136, 168, 23));
+    modellerOutput.setFont(JvSwingUtils.getLabelFont());
+    modellerOutput.setText("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("Wrap Alignment");
+    rightAlign.setFont(JvSwingUtils.getLabelFont());
+    rightAlign.setForeground(Color.black);
+    rightAlign.setHorizontalAlignment(SwingConstants.RIGHT);
+    rightAlign.setHorizontalTextPosition(SwingConstants.LEFT);
+    rightAlign.setText("Right Align Ids");
+    idItalics.setFont(JvSwingUtils.getLabelFont());
+    idItalics.setHorizontalAlignment(SwingConstants.RIGHT);
+    idItalics.setHorizontalTextPosition(SwingConstants.LEADING);
+    idItalics.setText("Sequence Name Italics");
+    openoverv.setFont(JvSwingUtils.getLabelFont());
+    openoverv.setActionCommand("Open Overview");
+    openoverv.setHorizontalAlignment(SwingConstants.RIGHT);
+    openoverv.setHorizontalTextPosition(SwingConstants.LEFT);
+    openoverv.setText("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("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, "Default Colourscheme for alignment", colourLabel, colour);
+    JPanel annotationShding=new JPanel();
+    annotationShding.setBorder(new TitledBorder("Annotation Shading Default"));
+    annotationShding.setLayout(new GridLayout(1,2));
+    JvSwingUtils.addtoLayout(annotationShding, "Default Minimum Colour for annotation shading", mincolourLabel,minColour);
+    JvSwingUtils.addtoLayout(annotationShding,"Default Maximum Colour for 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, "Visual");
+    tabbedPane.add(visual2Tab,"Colours");
+    tabbedPane.add(connectTab, "Connections");
+    tabbedPane.add(exportTab, "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(modellerOutput);
+    tabbedPane.add(calcTab, "Editing");
+    calcTab.add(autoCalculateConsCheck);
+    calcTab.add(padGaps);
+    calcTab.add(sortByTree);
+    
+    tabbedPane.add(dasPanel, "DAS Settings");
+    tabbedPane.add(wsPanel, "Web Services");
+
+    exportTab.add(epsLabel);
+    exportTab.add(epsRendering);
+    exportTab.add(jPanel11);
+  }
+
+  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());
+  }
+
+}