X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Fui%2FConfigItemInteger.java;fp=src%2Fbe%2Fnikiroo%2Futils%2Fui%2FConfigItemInteger.java;h=9b838a55125888a473d5700d8ad31dba28c6ae72;hb=5584adbbbf5444c0039fed2b35dc7d5bb57b71b1;hp=0000000000000000000000000000000000000000;hpb=ad207feb2815e429ae32484bc6930990099f8ea4;p=nikiroo-utils.git diff --git a/src/be/nikiroo/utils/ui/ConfigItemInteger.java b/src/be/nikiroo/utils/ui/ConfigItemInteger.java new file mode 100644 index 0000000..9b838a5 --- /dev/null +++ b/src/be/nikiroo/utils/ui/ConfigItemInteger.java @@ -0,0 +1,53 @@ +package be.nikiroo.utils.ui; + +import javax.swing.JComponent; +import javax.swing.JSpinner; + +import be.nikiroo.utils.resources.MetaInfo; + +class ConfigItemInteger> extends ConfigItem { + private static final long serialVersionUID = 1L; + + /** + * Create a new {@link ConfigItemInteger} for the given {@link MetaInfo}. + * + * @param info + * the {@link MetaInfo} + */ + public ConfigItemInteger(MetaInfo info) { + super(info, true); + } + + @Override + protected Object getFromField(int item) { + JSpinner field = (JSpinner) getField(item); + if (field != null) { + return field.getValue(); + } + + return null; + } + + @Override + protected Object getFromInfo(int item) { + return info.getInteger(item, true); + } + + @Override + protected void setToField(Object value, int item) { + JSpinner field = (JSpinner) getField(item); + if (field != null) { + field.setValue(value == null ? 0 : (Integer) value); + } + } + + @Override + protected void setToInfo(Object value, int item) { + info.setInteger((Integer) value, item); + } + + @Override + protected JComponent createEmptyField(int item) { + return new JSpinner(); + } +}