00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 package com.realtime.crossfire.jxclient.settings.options;
00023
00024 import org.jetbrains.annotations.NotNull;
00025
00030 public class PickupOption extends CheckBoxOption {
00031
00035 @NotNull
00036 private final Pickup pickup;
00037
00041 private final long option;
00042
00049 public PickupOption(@NotNull final Pickup pickup, final long option, @NotNull final String tooltipText) {
00050 super(tooltipText);
00051 this.pickup = pickup;
00052 this.option = option;
00053 }
00054
00058 @Override
00059 protected void execute(final boolean checked) {
00060 pickup.setPickupMode(option, checked);
00061 }
00062
00066 @Override
00067 public boolean isDefaultChecked() {
00068 return (Pickup.DEFAULT_PICKUP_MODE&option) == option;
00069 }
00070
00074 @Override
00075 public boolean inhibitSave() {
00076 return true;
00077 }
00078
00083 public void setPickupMode(final long pickupMode) {
00084 setChecked((pickupMode&option) == option);
00085 }
00086
00087 }