Crossfire JXClient, Trunk  R20561
HideCommand.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.gui.commands;
23 
27 import java.awt.Component;
28 import org.jetbrains.annotations.NotNull;
29 
34 public class HideCommand implements GUICommand {
35 
39  @NotNull
40  private final Component target;
41 
46  @NotNull
47  private final Runnable executeRunnable = new Runnable() {
48 
49  @Override
50  public void run() {
51  target.setVisible(false);
52  }
53 
54  };
55 
60  public HideCommand(@NotNull final Component target) {
61  this.target = target;
62  }
63 
67  @Override
68  public boolean canExecute() {
69  return true;
70  }
71 
75  @Override
76  public void execute() {
77  SwingUtilities2.invokeAndWait(executeRunnable);
78  }
79 
80 }
final Component target
The gui element to hide.
Interface defining an abstract GUI element.
Definition: GUIElement.java:32
void execute()
Executes the command.Does nothing if called while canExecute() returnsfalse .
Utility class for Swing related functions.
A GUICommand which hides a target GUIElement.
boolean canExecute()
Returns whether this command may be executed.whether this command may be executed ...
final Runnable executeRunnable
The Runnable that implements the functionality of execute().
HideCommand(@NotNull final Component target)
Creates a new instance.
static void invokeAndWait(@NotNull final Runnable runnable)
Calls SwingUtilities#invokeAndWait(Runnable) if not on the EDT or calls the Runnable directly if on t...