Crossfire JXClient, Trunk  R20561
CheckBoxOption.java
Go to the documentation of this file.
1 /*
2  * This file is part of JXClient, the Fullscreen Java Crossfire Client.
3  *
4  * JXClient is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * JXClient is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with JXClient; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17  *
18  * Copyright (C) 2005-2008 Yann Chachkoff.
19  * Copyright (C) 2006-2011 Andreas Kirschbaum.
20  */
21 
22 package com.realtime.crossfire.jxclient.settings.options;
23 
24 import org.jetbrains.annotations.NotNull;
25 
31 public abstract class CheckBoxOption extends Option {
32 
36  @NotNull
37  private final String tooltipText;
38 
42  private boolean checked;
43 
48  protected CheckBoxOption(@NotNull final String tooltipText) {
49  this.tooltipText = tooltipText;
50  }
51 
56  public boolean isChecked() {
57  return checked;
58  }
59 
64  public void setChecked(final boolean checked) {
65  if (this.checked == checked) {
66  return;
67  }
68 
69  this.checked = checked;
71  }
72 
76  public void toggleChecked() {
77  setChecked(!checked);
78  }
79 
85  protected abstract void execute(final boolean checked);
86 
90  @Override
91  protected void fireStateChangedEvent() {
92  execute(checked);
93  super.fireStateChangedEvent();
94  }
95 
100  public abstract boolean isDefaultChecked();
101 
106  @NotNull
107  public String getTooltipText() {
108  return tooltipText;
109  }
110 
111 }
void setChecked(final boolean checked)
Sets the current state.
String getTooltipText()
Returns the tooltip text to explain this option.
final String tooltipText
The tooltip text to explain this option.
abstract boolean isDefaultChecked()
Returns the default value of isChecked().
abstract void execute(final boolean checked)
Executes the action associated with this check box option.
CheckBoxOption(@NotNull final String tooltipText)
Creates a new instance.