X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FOptsAndParamsPage.java;h=eb55994f3d1e9afd1ed8c7483e51135930500bf2;hb=6fb502e4a8749d1d98f5442c3b8156ab47996b77;hp=05c8e1df98baea26435c2981595a2e56af679ac8;hpb=8b8b5a6d0aa747b57c812aa1ae20dcf6b7adf20f;p=jalview.git diff --git a/src/jalview/gui/OptsAndParamsPage.java b/src/jalview/gui/OptsAndParamsPage.java index 05c8e1d..eb55994 100644 --- a/src/jalview/gui/OptsAndParamsPage.java +++ b/src/jalview/gui/OptsAndParamsPage.java @@ -1,20 +1,20 @@ -/******************************************************************************* - * 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 - * +/* + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8) + * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, 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 . - *******************************************************************************/ + */ package jalview.gui; import jalview.ws.params.ArgumentI; @@ -109,7 +109,7 @@ public class OptsAndParamsPage enabled.setToolTipText("" + JvSwingUtils - .wrapTooltip(((desc == null) ? "see further details by right-clicking" + .wrapTooltip(((desc == null || desc.trim().length()==0) ? "see further details by right-clicking" : desc) + "
") + ""); @@ -117,7 +117,7 @@ public class OptsAndParamsPage } else { - if (desc != null) + if (desc != null && desc.trim().length()>0) { enabled.setToolTipText("" + JvSwingUtils.wrapTooltip(opt.getDescription()) @@ -169,7 +169,8 @@ public class OptsAndParamsPage } else { - notmod &= (initVal!=null) ? initVal.equals(val.getSelectedItem()) : val.getSelectedItem()!=initVal; + notmod &= (initVal != null) ? initVal.equals(val.getSelectedItem()) + : val.getSelectedItem() != initVal; } poparent.argSetModified(this, !notmod); } @@ -181,16 +182,20 @@ public class OptsAndParamsPage return null; } OptionI opt = option.copy(); - if (opt.getPossibleValues()!=null && opt.getPossibleValues().size()==1) + if (opt.getPossibleValues() != null + && opt.getPossibleValues().size() == 1) { - // Hack to make sure the default value for an enabled option with only one value is actually returned + // Hack to make sure the default value for an enabled option with only + // one value is actually returned opt.setValue(opt.getPossibleValues().get(0)); } if (val.getSelectedItem() != null) { opt.setValue((String) val.getSelectedItem()); - } else { - if (option.getValue()!=null) + } + else + { + if (option.getValue() != null) { opt.setValue(option.getValue()); } @@ -230,10 +235,11 @@ public class OptsAndParamsPage } - public void resetToDefault() + + public void resetToDefault(boolean setDefaultParams) { enabled.setSelected(false); - if (option.isRequired()) + if (option.isRequired() || (setDefaultParams && option.getValue()!=null)) { // Apply default value selectOption(option, option.getValue()); @@ -250,10 +256,10 @@ public class OptsAndParamsPage } else { - initVal = (initEnabled) ? (String)val.getSelectedItem() : null; + initVal = (initEnabled) ? (String) val.getSelectedItem() : null; } } - + } public class ParamBox extends JPanel implements ChangeListener, @@ -310,7 +316,7 @@ public class OptsAndParamsPage choice = true; } } - + if (!compact) { makeExpanderParam(parm); @@ -324,9 +330,9 @@ public class OptsAndParamsPage private void makeCompactParam(ParameterI parm) { - setLayout(new MigLayout("","[][grow]")); + setLayout(new MigLayout("", "[][grow]")); - String ttipText=null; + String ttipText = null; controlPanel.setLayout(new BorderLayout()); @@ -335,14 +341,16 @@ public class OptsAndParamsPage { // Only create description boxes if there actually is a description. ttipText = ("" - + JvSwingUtils - .wrapTooltip(parm.getDescription()+(finfo!=null ?"
Right click for further information.":"")) - + ""); + + JvSwingUtils + .wrapTooltip(parm.getDescription() + + (finfo != null ? "
Right click for further information." + : "")) + ""); } - - JvSwingUtils.mgAddtoLayout(this, ttipText, new JLabel(parm.getName()),controlPanel, ""); + + JvSwingUtils.mgAddtoLayout(this, ttipText, + new JLabel(parm.getName()), controlPanel, ""); updateControls(parm); validate(); } @@ -575,21 +583,21 @@ public class OptsAndParamsPage valueField.addActionListener(this); valueField.addKeyListener(new KeyListener() { - + @Override public void keyTyped(KeyEvent e) { } - + @Override public void keyReleased(KeyEvent e) { - if (valueField.getText().trim().length()>0) - { + if (valueField.getText().trim().length() > 0) + { actionPerformed(null); - } + } } - + @Override public void keyPressed(KeyEvent e) { @@ -660,6 +668,8 @@ public class OptsAndParamsPage { } ; + // update value field to reflect any bound checking we performed. + valueField.setText("" + iVal); if (validator.getMin() != null && validator.getMax() != null) { slider.getModel().setRangeProperties(iVal, 1, @@ -678,6 +688,7 @@ public class OptsAndParamsPage fVal = 0f; try { + valueField.setText(valueField.getText().trim()); fVal = Float.valueOf(valueField.getText()); if (validator.getMin() != null && validator.getMin().floatValue() > fVal) @@ -685,6 +696,8 @@ public class OptsAndParamsPage fVal = validator.getMin().floatValue(); // TODO: provide visual indication that hard limit was reached for // this parameter + // update value field to reflect any bound checking we performed. + valueField.setText("" + fVal); } if (validator.getMax() != null && validator.getMax().floatValue() < fVal) @@ -692,6 +705,8 @@ public class OptsAndParamsPage fVal = validator.getMax().floatValue(); // TODO: provide visual indication that hard limit was reached for // this parameter + // update value field to reflect any bound checking we performed. + valueField.setText("" + fVal); } } catch (Exception e) { @@ -737,12 +752,14 @@ public class OptsAndParamsPage public OptsAndParamsPage(OptsParametersContainerI paramContainer) { - this(paramContainer,false); + this(paramContainer, false); } - public OptsAndParamsPage(OptsParametersContainerI paramContainer, boolean compact) + + public OptsAndParamsPage(OptsParametersContainerI paramContainer, + boolean compact) { poparent = paramContainer; - this.compact=compact; + this.compact = compact; } public static void showUrlPopUp(JComponent invoker, final String finfo, @@ -767,9 +784,9 @@ public class OptsAndParamsPage URL linkImageURL = getClass().getResource("/images/link.gif"); - Map optSet = new Hashtable(); + Map optSet = new java.util.LinkedHashMap(); - Map paramSet = new Hashtable(); + Map paramSet = new java.util.LinkedHashMap(); public Map getOptSet() {