source: josm/trunk/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java@ 9798

Last change on this file since 9798 was 9689, checked in by bastiK, 8 years ago

applied #12454 - set default values of preferences on construct (patch by kolesar)

  • Property svn:eol-style set to native
File size: 1.2 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.data.preferences;
3
4import org.openstreetmap.josm.Main;
5
6/**
7 * A property containing an {@code Integer} value.
8 * @since 3246
9 */
10public class IntegerProperty extends AbstractProperty<Integer> {
11
12 /**
13 * Constructs a new {@code IntegerProperty}.
14 * @param key The property key
15 * @param defaultValue The default value
16 */
17 public IntegerProperty(String key, int defaultValue) {
18 super(key, defaultValue);
19 if (Main.pref != null) {
20 get();
21 }
22 }
23
24 @Override
25 public Integer get() {
26 return Main.pref.getInteger(getKey(), getDefaultValue());
27 }
28
29 @Override
30 public boolean put(Integer value) {
31 return Main.pref.putInteger(getKey(), value);
32 }
33
34 /**
35 * parses and saves an integer value
36 * @param value the value to be parsed
37 * @return true - preference value has changed
38 * false - parsing failed or preference value has not changed
39 */
40 public boolean parseAndPut(String value) {
41 try {
42 return put(Integer.valueOf(value));
43 } catch (NumberFormatException ex) {
44 return false;
45 }
46 }
47}
Note: See TracBrowser for help on using the repository browser.