import jalview.ws.params.simple.LogarithmicParameter;
import jalview.ws.params.simple.RadioChoiceParameter;
import jalview.ws.params.simple.StringParameter;
-
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Component;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
+import java.awt.event.FocusAdapter;
+import java.awt.event.FocusEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
OptionI option;
- JComboBox<String> val;
+ JComboBox<Object> val;
/**
* Constructs and adds labels and controls to the panel for one Option
*
* @param opt
*/
+
public OptionBox(OptionI opt)
{
option = opt;
setLayout(new FlowLayout(FlowLayout.LEFT));
- enabled = new JCheckBox(opt.getName());
+ enabled = new JCheckBox(opt.getLabel());
enabled.setSelected(opt.isRequired());
/*
if (opt.isRequired() && !(opt instanceof JabaOption))
{
finfo = null;
- add(new JLabel(opt.getName()));
+ add(new JLabel(opt.getLabel()));
}
else
{
if (finfo != null)
{
hasLink = true;
+
String description = desc;
if (desc == null || desc.trim().isEmpty())
{
@Override
public void mouseEntered(MouseEvent e)
{
+
}
@Override
public void mouseExited(MouseEvent e)
{
+
}
@Override
{
return option == null ? super.toString() : option.toString();
}
-
}
/**
/*
* drop-down list of choice options (if applicable)
*/
- JComboBox<String> choicebox;
+ JComboBox<Object> choicebox;
/*
* radio buttons as an alternative to combo box
finfo = parm.getFurtherDetails();
validator = parm.getValidValue();
parameter = parm;
-
isLogarithmicParameter = parm instanceof LogarithmicParameter;
-
if (validator != null)
{
ValueType type = validator.getType();
else
{
addExpandableParam(parm);
+
}
}
private void addCompactParameter(ParameterI parm)
{
setLayout(new MigLayout("", "[][grow]"));
+
String ttipText = null;
controlsPanel.setLayout(new BorderLayout());
firstrow.setBounds(new Rectangle(10, 20, PARAM_WIDTH - 30,
PARAM_CLOSEDHEIGHT - 30));
+
if (parm.getDescription() != null
&& parm.getDescription().trim().length() > 0)
{
showDescBtn.setBounds(new Rectangle(10, 10, 16, 16));
container.add(showDescBtn);
}
-
@Override
public void actionPerformed(ActionEvent e)
{
pmdialogbox.argSetModified(this, modified);
}
+
@Override
public int getBaseline(int width, int height)
{
value = valueField.getText();
}
prm.setValue(value);
-
return prm;
}
@Override
public void mouseEntered(MouseEvent e)
{
+
}
@Override
public void mouseExited(MouseEvent e)
{
+
}
@Override
@Override
public void mouseReleased(MouseEvent e)
{
+
}
@Override
valueField.addActionListener(this);
valueField.addKeyListener(new KeyAdapter()
{
+
+
@Override
public void keyReleased(KeyEvent e)
{
}
}
}
+
+ });
+ valueField.addFocusListener(new FocusAdapter() {
+
+ @Override
+ public void focusLost(FocusEvent e)
+ {
+ actionPerformed(null);
+ }
+
});
valueField.setPreferredSize(new Dimension(65, 25));
if (parm instanceof FileParameter)
return valueField.getText().trim();
}
+ if (validator.getMin() == null || validator.getMax() == null)
+ {
+ slider.setVisible(false);
+ }
+
valueField.setText(valueField.getText().trim());
/*
valueField.setBackground(Color.yellow);
return Float.NaN;
}
-
if (isIntegerParameter)
{
int iVal = 0;
{
slider.setVisible(false);
}
- return new Integer(iVal);
+ return Integer.valueOf(iVal);
}
-
if (isLogarithmicParameter)
{
double dVal = 0d;
try
{
double eValue = Double.valueOf(valueField.getText());
- dVal = Math.log(eValue) * sliderScaleFactor;
+ dVal = Math.log(eValue);
} catch (Exception e)
{
// shouldn't be possible here
* sliderScaleFactor;
double scaleMax = Math.log(validator.getMax().doubleValue())
* sliderScaleFactor;
- slider.getModel().setRangeProperties((int) (dVal), 1,
+ slider.getModel().setRangeProperties(
+ (int) (sliderScaleFactor * dVal), 1,
(int) scaleMin, 1 + (int) scaleMax, true);
}
else
{
slider.setVisible(false);
}
- return new Double(dVal);
+ return Double.valueOf(dVal);
}
-
float fVal = 0f;
try
{
{
slider.setVisible(false);
}
- return new Float(fVal);
+ return Float.valueOf(fVal);
}
}
*
* @param paramContainer
*/
+
public OptsAndParamsPage(OptsParametersContainerI paramContainer,
boolean compact)
{
mnu.show(invoker, x, y);
}
+
public Map<String, OptionBox> getOptSet()
{
return optSet;
this.paramSet = paramSet;
}
+
OptionBox addOption(OptionI opt)
{
OptionBox cb = optSet.get(opt.getName());
}
else
{
- throw new Error(String.format("Invalid value '%s' for option '%s'",
- string, option.getName()));
+ throw new Error(MessageManager.formatMessage(
+ "error.invalid_value_for_option", new String[]
+ { string, option.getName() }));
}
+
}
if (option.isRequired() && !cb.enabled.isSelected())
{
* @param opt
* @return
*/
- protected static JComboBox<String> buildComboBox(OptionI opt)
+ protected static JComboBox<Object> buildComboBox(OptionI opt)
{
- JComboBox<String> cb = null;
+ JComboBox<Object> cb = null;
List<String> displayNames = opt.getDisplayNames();
if (displayNames != null)
{
- cb = JvSwingUtils.buildComboWithTooltips(displayNames,
+ List<Object> displayNamesObjects = new ArrayList<>();
+ displayNamesObjects.addAll(displayNames);
+ cb = JvSwingUtils.buildComboWithTooltips(displayNamesObjects,
opt.getPossibleValues());
}
else