001    // License: GPL. For details, see LICENSE file.
002    package org.openstreetmap.josm.data.preferences;
003    
004    import org.openstreetmap.josm.Main;
005    
006    /**
007     * A property containing a {@code Boolean} value.
008     */
009    public class BooleanProperty extends AbstractProperty<Boolean> {
010    
011        /**
012         * Constructs a new {@code BooleanProperty}.
013         * @param key The property key
014         * @param defaultValue The default value
015         */
016        public BooleanProperty(String key, boolean defaultValue) {
017            super(key, defaultValue);
018        }
019    
020        @Override
021        public Boolean get() {
022            return Main.pref.getBoolean(getKey(), defaultValue);
023        }
024    
025        @Override
026        public boolean put(Boolean value) {
027            return Main.pref.put(getKey(), value);
028        }
029    }