001// License: GPL. For details, see LICENSE file. 002package org.openstreetmap.josm.data.preferences; 003 004import org.openstreetmap.josm.Main; 005 006/** 007 * A property containing a {@code Boolean} value. 008 */ 009public 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 if (Main.pref != null) { 019 get(); 020 } 021 } 022 023 @Override 024 public Boolean get() { 025 return Main.pref.getBoolean(getKey(), defaultValue); 026 } 027 028 @Override 029 public boolean put(Boolean value) { 030 return Main.pref.put(getKey(), value); 031 } 032}