X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGPreferences.java;h=c37d2302ef47f8d3594f70fca163adbb156e56f0;hb=797df64fa2a0a30773d0f48f5494d4155e5a8be3;hp=4192b48dd59a79f73c89f9f6792c683bd1e1a643;hpb=a928b501e71cef2627004a73e2d5c460b44b2d7b;p=jalview.git diff --git a/src/jalview/jbgui/GPreferences.java b/src/jalview/jbgui/GPreferences.java index 4192b48..c37d230 100755 --- a/src/jalview/jbgui/GPreferences.java +++ b/src/jalview/jbgui/GPreferences.java @@ -1,23 +1,24 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Development Version 2.4.1) - * Copyright (C) 2009 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * 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 program 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 2 - * of the License, or (at your option) any later version. + * This file is part of Jalview. * - * This program 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. + * 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. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + * 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 . */ package jalview.jbgui; +import jalview.gui.JvSwingUtils; + import java.awt.*; import java.awt.event.*; @@ -47,6 +48,7 @@ public class GPreferences extends JPanel protected JCheckBox quality = new JCheckBox(); JPanel visualTab = new JPanel(); + JPanel visual2Tab = new JPanel(); protected JCheckBox fullScreen = new JCheckBox(); @@ -56,6 +58,12 @@ public class GPreferences extends JPanel 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(); @@ -133,13 +141,18 @@ public class GPreferences extends JPanel 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(); @@ -168,7 +181,7 @@ public class GPreferences extends JPanel JPanel jPanel11 = new JPanel(); - Font verdana11 = new java.awt.Font("Verdana", Font.PLAIN, 11); + Font verdana11 = JvSwingUtils.getLabelFont(); protected JCheckBox seqLimit = new JCheckBox(); @@ -188,29 +201,47 @@ public class GPreferences extends 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 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. @@ -230,7 +261,7 @@ public class GPreferences extends JPanel * DOCUMENT ME! * * @throws Exception - * DOCUMENT ME! + * DOCUMENT ME! */ private void jbInit() throws Exception { @@ -259,6 +290,8 @@ public class GPreferences extends JPanel 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); @@ -324,7 +357,7 @@ public class GPreferences extends JPanel annotations.setHorizontalTextPosition(SwingConstants.LEADING); annotations.setSelected(true); annotations.setText("Show Annotations"); - annotations.setBounds(new Rectangle(169, 16, 200, 23)); + annotations.setBounds(new Rectangle(169, 12, 200, 23)); annotations.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) @@ -333,19 +366,19 @@ public class GPreferences extends JPanel } }); identity.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) { - public void actionPerformed(ActionEvent e) - { - annotations_actionPerformed(e); - } - }); + annotations_actionPerformed(e); + } + }); showGroupConsensus.addActionListener(new ActionListener() + { + public void actionPerformed(ActionEvent e) { - public void actionPerformed(ActionEvent e) - { - annotations_actionPerformed(e); - } - }); + annotations_actionPerformed(e); + } + }); showUnconserved.setFont(verdana11); showUnconserved.setHorizontalAlignment(SwingConstants.RIGHT); showUnconserved.setHorizontalTextPosition(SwingConstants.LEFT); @@ -358,7 +391,7 @@ public class GPreferences extends JPanel showunconserved_actionPerformed(e); } }); - /// TODO: fit these in to preferences panel!!!!! + // / TODO: fit these in to preferences panel!!!!! shareSelections.setFont(verdana11); shareSelections.setHorizontalAlignment(SwingConstants.RIGHT); shareSelections.setHorizontalTextPosition(SwingConstants.LEFT); @@ -367,10 +400,10 @@ public class GPreferences extends JPanel followHighlight.setFont(verdana11); followHighlight.setHorizontalAlignment(SwingConstants.RIGHT); followHighlight.setHorizontalTextPosition(SwingConstants.LEFT); - //showUnconserved.setBounds(new Rectangle(169, 40, 200, 23)); + // 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 "); @@ -378,18 +411,45 @@ public class GPreferences extends JPanel colour.setBounds(new Rectangle(172, 225, 155, 21)); colourLabel.setFont(verdana11); colourLabel.setHorizontalAlignment(SwingConstants.RIGHT); - colourLabel.setText("Colour "); + colourLabel.setText("Alignment Colour "); fontLabel.setFont(verdana11); fontLabel.setHorizontalAlignment(SwingConstants.RIGHT); fontLabel.setText("Font "); fontSizeCB.setFont(verdana11); - fontSizeCB.setBounds(new Rectangle(319, 101, 49, 21)); + fontSizeCB.setBounds(new Rectangle(319, 104, 49, 23)); fontStyleCB.setFont(verdana11); - fontStyleCB.setBounds(new Rectangle(367, 101, 70, 21)); + fontStyleCB.setBounds(new Rectangle(367, 104, 70, 23)); fontNameCB.setFont(verdana11); - fontNameCB.setBounds(new Rectangle(172, 101, 147, 21)); + fontNameCB.setBounds(new Rectangle(172, 104, 147, 23)); gapSymbolCB.setFont(verdana11); - gapSymbolCB.setBounds(new Rectangle(172, 204, 69, 21)); + 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); @@ -518,7 +578,7 @@ public class GPreferences extends JPanel sortLabel.setText("Sort by "); jPanel2.setBounds(new Rectangle(7, 17, 158, 278)); jPanel2.setLayout(gridLayout2); - gridLayout2.setRows(13); + gridLayout2.setRows(12); exportTab.setLayout(null); epsLabel.setFont(verdana11); epsLabel.setHorizontalAlignment(SwingConstants.RIGHT); @@ -565,31 +625,35 @@ public class GPreferences extends JPanel smoothFont.setHorizontalTextPosition(SwingConstants.LEADING); smoothFont.setText("Smooth Font"); calcTab.setLayout(null); - autoCalculateConsCheck.setFont(new java.awt.Font("Verdana", Font.PLAIN, - 11)); + autoCalculateConsCheck.setFont(JvSwingUtils.getLabelFont()); autoCalculateConsCheck.setText("AutoCalculate Consensus"); autoCalculateConsCheck.setBounds(new Rectangle(21, 52, 209, 23)); - padGaps.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); - padGaps.setText("Pad gaps when editing"); + padGaps.setFont(JvSwingUtils.getLabelFont()); + padGaps.setText("Pad Gaps When Editing"); padGaps.setBounds(new Rectangle(22, 94, 168, 23)); - modellerOutput.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); + 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); - wrap.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); + wsPanel.setLayout(borderLayout5); + wrap.setFont(JvSwingUtils.getLabelFont()); wrap.setHorizontalAlignment(SwingConstants.TRAILING); wrap.setHorizontalTextPosition(SwingConstants.LEADING); wrap.setText("Wrap Alignment"); - rightAlign.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); + rightAlign.setFont(JvSwingUtils.getLabelFont()); rightAlign.setForeground(Color.black); rightAlign.setHorizontalAlignment(SwingConstants.RIGHT); rightAlign.setHorizontalTextPosition(SwingConstants.LEFT); rightAlign.setText("Right Align Ids"); - idItalics.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); + idItalics.setFont(JvSwingUtils.getLabelFont()); idItalics.setHorizontalAlignment(SwingConstants.RIGHT); idItalics.setHorizontalTextPosition(SwingConstants.LEADING); idItalics.setText("Sequence Name Italics"); - openoverv.setFont(new java.awt.Font("Verdana", Font.PLAIN, 11)); + openoverv.setFont(JvSwingUtils.getLabelFont()); openoverv.setActionCommand("Open Overview"); openoverv.setHorizontalAlignment(SwingConstants.RIGHT); openoverv.setHorizontalTextPosition(SwingConstants.LEFT); @@ -602,29 +666,27 @@ public class GPreferences extends JPanel jPanel2.add(showUnconserved); jPanel2.add(idItalics); jPanel2.add(smoothFont); - jPanel2.add(wrap); jPanel2.add(gapLabel); - jPanel2.add(colourLabel); + jPanel2.add(wrap); jPanel2.add(sortLabel); jPanel2.add(startupCheckbox); visualTab.add(annotations); visualTab.add(startupFileTextfield); visualTab.add(sortby); - visualTab.add(colour); visualTab.add(gapSymbolCB); visualTab.add(fontNameCB); visualTab.add(fontSizeCB); visualTab.add(fontStyleCB); - annsettingsPanel.setBounds(new Rectangle(173,37,300,62)); - annsettingsPanel.setLayout(new FlowLayout(FlowLayout.LEFT,0,0)); + 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)); + 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); + Border jb = new EmptyBorder(1, 1, 4, 5); quality.setBorder(jb); conservation.setBorder(jb); identity.setBorder(jb); @@ -634,11 +696,11 @@ public class GPreferences extends JPanel showGroupConservation.setBorder(jb); showConsensHistogram.setBorder(jb); showConsensLogo.setBorder(jb); - + autoAnnotSettings2.add(conservation); autoAnnotSettings1.add(quality); autoAnnotSettings3.add(identity); -autoAnnotSettings1.add(showGroupbits); + autoAnnotSettings1.add(showGroupbits); autoAnnotSettings3.add(showGroupConsensus); autoAnnotSettings2.add(showGroupConservation); autoAnnotSettings1.add(showConsensbits); @@ -647,12 +709,23 @@ autoAnnotSettings1.add(showGroupbits); JPanel tooltipSettings = new JPanel(); tooltipSettings.setBorder(new TitledBorder("Sequence ID Tooltip")); - tooltipSettings.setBounds(173, 130, 200,62); - tooltipSettings.setLayout(new GridLayout(2,1)); + 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); @@ -691,16 +764,16 @@ autoAnnotSettings1.add(showGroupbits); 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(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)); + 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)); - + 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)); @@ -709,6 +782,7 @@ autoAnnotSettings1.add(showGroupbits); gapSymbolCB.setRenderer(dlcr); tabbedPane.add(visualTab, "Visual"); + tabbedPane.add(visual2Tab,"Colours"); tabbedPane.add(connectTab, "Connections"); tabbedPane.add(exportTab, "Output"); jPanel11.add(jLabel1); @@ -723,24 +797,39 @@ autoAnnotSettings1.add(showGroupbits); 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 showunconserved_actionPerformed(ActionEvent e) + 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! + * DOCUMENT ME! */ public void ok_actionPerformed(ActionEvent e) { @@ -750,7 +839,7 @@ autoAnnotSettings1.add(showGroupbits); * DOCUMENT ME! * * @param e - * DOCUMENT ME! + * DOCUMENT ME! */ public void cancel_actionPerformed(ActionEvent e) { @@ -760,7 +849,7 @@ autoAnnotSettings1.add(showGroupbits); * DOCUMENT ME! * * @param e - * DOCUMENT ME! + * DOCUMENT ME! */ public void annotations_actionPerformed(ActionEvent e) {