X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Fui%2FConfigItemPassword.java;fp=src%2Fbe%2Fnikiroo%2Futils%2Fui%2FConfigItemPassword.java;h=381334eed113ccc7f58fa4194e40629b9742a80f;hb=d5026c096121da14c20d69893520594a36d088bb;hp=0000000000000000000000000000000000000000;hpb=59654e2ab1f6d3314eff438bf9e30ed6f32e5e74;p=fanfix.git diff --git a/src/be/nikiroo/utils/ui/ConfigItemPassword.java b/src/be/nikiroo/utils/ui/ConfigItemPassword.java new file mode 100644 index 0000000..381334e --- /dev/null +++ b/src/be/nikiroo/utils/ui/ConfigItemPassword.java @@ -0,0 +1,53 @@ +package be.nikiroo.utils.ui; + +import javax.swing.JComponent; +import javax.swing.JPasswordField; + +import be.nikiroo.utils.resources.MetaInfo; + +public class ConfigItemPassword> extends ConfigItem { + private static final long serialVersionUID = 1L; + + /** + * Create a new {@link ConfigItemPassword} for the given {@link MetaInfo}. + * + * @param info + * the {@link MetaInfo} + */ + public ConfigItemPassword(MetaInfo info) { + super(info, true); + } + + @Override + protected Object getFromField(int item) { + JPasswordField field = (JPasswordField) getField(item); + if (field != null) { + return new String(field.getPassword()); + } + + return null; + } + + @Override + protected Object getFromInfo(int item) { + return info.getString(item, false); + } + + @Override + protected void setToField(Object value, int item) { + JPasswordField field = (JPasswordField) getField(item); + if (field != null) { + field.setText(value == null ? "" : value.toString()); + } + } + + @Override + protected void setToInfo(Object value, int item) { + info.setString((String) value, item); + } + + @Override + protected JComponent createField(int item) { + return new JPasswordField(); + } +}