JAL-1432 updated copyright notices
[jalview.git] / src / jalview / jbgui / GPreferences.java
index 2b71c03..1230373 100755 (executable)
@@ -1,19 +1,20 @@
 /*
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * 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.
  * 
  * 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/>.
  * 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;
 
  */
 package jalview.jbgui;
 
@@ -48,6 +49,7 @@ public class GPreferences extends JPanel
   protected JCheckBox quality = new JCheckBox();
 
   JPanel visualTab = new JPanel();
   protected JCheckBox quality = new JCheckBox();
 
   JPanel visualTab = new JPanel();
+
   JPanel visual2Tab = new JPanel();
 
   protected JCheckBox fullScreen = new JCheckBox();
   JPanel visual2Tab = new JPanel();
 
   protected JCheckBox fullScreen = new JCheckBox();
@@ -59,9 +61,11 @@ public class GPreferences extends JPanel
   protected JCheckBox annotations = new JCheckBox();
 
   protected JPanel minColour = new JPanel();
   protected JCheckBox annotations = new JCheckBox();
 
   protected JPanel minColour = new JPanel();
+
   JLabel mincolourLabel = new JLabel();
 
   protected JPanel maxColour = new JPanel();
   JLabel mincolourLabel = new JLabel();
 
   protected JPanel maxColour = new JPanel();
+
   JLabel maxcolourLabel = new JLabel();
 
   JLabel gapLabel = new JLabel();
   JLabel maxcolourLabel = new JLabel();
 
   JLabel gapLabel = new JLabel();
@@ -141,6 +145,7 @@ public class GPreferences extends JPanel
   JLabel sortLabel = new JLabel();
 
   JPanel jPanel2 = new JPanel();
   JLabel sortLabel = new JLabel();
 
   JPanel jPanel2 = new JPanel();
+
   JPanel visual2panel = new JPanel();
 
   GridLayout gridLayout2 = new GridLayout();
   JPanel visual2panel = new JPanel();
 
   GridLayout gridLayout2 = new GridLayout();
@@ -161,6 +166,12 @@ public class GPreferences extends JPanel
 
   protected JComboBox epsRendering = new JComboBox();
 
 
   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();
   JLabel jLabel1 = new JLabel();
 
   protected JCheckBox blcjv = new JCheckBox();
@@ -241,7 +252,7 @@ public class GPreferences extends JPanel
 
   protected JCheckBox followHighlight = new JCheckBox();
 
 
   protected JCheckBox followHighlight = new JCheckBox();
 
-  protected JCheckBox sortByTree= new JCheckBox();
+  protected JCheckBox sortByTree = new JCheckBox();
 
   /**
    * Creates a new GPreferences object.
 
   /**
    * Creates a new GPreferences object.
@@ -433,7 +444,7 @@ public class GPreferences extends JPanel
     {
       public void mousePressed(MouseEvent e)
       {
     {
       public void mousePressed(MouseEvent e)
       {
-          minColour_actionPerformed();
+        minColour_actionPerformed();
       }
     });
     maxcolourLabel.setFont(verdana11);
       }
     });
     maxcolourLabel.setFont(verdana11);
@@ -446,10 +457,10 @@ public class GPreferences extends JPanel
     {
       public void mousePressed(MouseEvent e)
       {
     {
       public void mousePressed(MouseEvent e)
       {
-          maxColour_actionPerformed();
+        maxColour_actionPerformed();
       }
     });
       }
     });
-    
+
     startupCheckbox.setText("Open file");
     startupCheckbox.setFont(verdana11);
     startupCheckbox.setHorizontalAlignment(SwingConstants.RIGHT);
     startupCheckbox.setText("Open file");
     startupCheckbox.setFont(verdana11);
     startupCheckbox.setHorizontalAlignment(SwingConstants.RIGHT);
@@ -632,12 +643,57 @@ public class GPreferences extends JPanel
     padGaps.setText("Pad Gaps When Editing");
     padGaps.setBounds(new Rectangle(22, 94, 168, 23));
     sortByTree.setFont(JvSwingUtils.getLabelFont());
     padGaps.setText("Pad Gaps When Editing");
     padGaps.setBounds(new Rectangle(22, 94, 168, 23));
     sortByTree.setFont(JvSwingUtils.getLabelFont());
-    sortByTree.setText("Sort Alignment With New Tree");
-    sortByTree.setToolTipText("When selected, any trees calculated or laoded onto the alignment will automatically sort the alignment.");
+    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));
     sortByTree.setBounds(new Rectangle(22, 136, 168, 23));
+
+    autoIdWidth.setFont(JvSwingUtils.getLabelFont());
+    autoIdWidth.setText("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("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("Use Modeller Output");
     modellerOutput.setBounds(new Rectangle(228, 226, 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());
     dasPanel.setLayout(borderLayout4);
     wsPanel.setLayout(borderLayout5);
     wrap.setFont(JvSwingUtils.getLabelFont());
@@ -715,17 +771,23 @@ public class GPreferences extends JPanel
     tooltipSettings.add(showNpTooltip);
     visualTab.add(tooltipSettings);
     visualTab.add(jPanel2);
     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);
+    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);
 
     visual2Tab.add(annotationShding); // , FlowLayout.LEFT);
 
-//    visual2panel.add(minColour);
-//    visual2panel.add(maxColour);
-//    visual2Tab.add(visual2panel);
+    // visual2panel.add(minColour);
+    // visual2panel.add(maxColour);
+    // visual2Tab.add(visual2panel);
 
     linkPanel.add(editLinkButtons, BorderLayout.EAST);
     editLinkButtons.add(newLink, null);
 
     linkPanel.add(editLinkButtons, BorderLayout.EAST);
     editLinkButtons.add(newLink, null);
@@ -782,7 +844,7 @@ public class GPreferences extends JPanel
     gapSymbolCB.setRenderer(dlcr);
 
     tabbedPane.add(visualTab, "Visual");
     gapSymbolCB.setRenderer(dlcr);
 
     tabbedPane.add(visualTab, "Visual");
-    tabbedPane.add(visual2Tab,"Colours");
+    tabbedPane.add(visual2Tab, "Colours");
     tabbedPane.add(connectTab, "Connections");
     tabbedPane.add(exportTab, "Output");
     jPanel11.add(jLabel1);
     tabbedPane.add(connectTab, "Connections");
     tabbedPane.add(exportTab, "Output");
     jPanel11.add(jLabel1);
@@ -793,12 +855,15 @@ public class GPreferences extends JPanel
     jPanel11.add(pfamjv);
     jPanel11.add(pileupjv);
     jPanel11.add(pirjv);
     jPanel11.add(pfamjv);
     jPanel11.add(pileupjv);
     jPanel11.add(pirjv);
+    exportTab.add(autoIdWidth);
+    exportTab.add(userIdWidth);
+    exportTab.add(userIdWidthlabel);
     exportTab.add(modellerOutput);
     tabbedPane.add(calcTab, "Editing");
     calcTab.add(autoCalculateConsCheck);
     calcTab.add(padGaps);
     calcTab.add(sortByTree);
     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");
 
     tabbedPane.add(dasPanel, "DAS Settings");
     tabbedPane.add(wsPanel, "Web Services");
 
@@ -807,16 +872,28 @@ public class GPreferences extends JPanel
     exportTab.add(jPanel11);
   }
 
     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 maxColour_actionPerformed()
   {
     // TODO Auto-generated method stub
-    
+
   }
 
   protected void minColour_actionPerformed()
   {
     // TODO Auto-generated method stub
   }
 
   protected void minColour_actionPerformed()
   {
     // TODO Auto-generated method stub
-    
+
   }
 
   protected void showunconserved_actionPerformed(ActionEvent e)
   }
 
   protected void showunconserved_actionPerformed(ActionEvent e)