View Javadoc

1   /*
2    *  XNap - A P2P framework and client.
3    *
4    *  See the file AUTHORS for copyright information.
5    *
6    *  This program is free software; you can redistribute it and/or modify
7    *  it under the terms of the GNU General Public License as published by
8    *  the Free Software Foundation.
9    *
10   *  This program is distributed in the hope that it will be useful,
11   *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13   *  GNU General Public License for more details.
14   *
15   *  You should have received a copy of the GNU General Public License
16   *  along with this program; if not, write to the Free Software
17   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18   */
19  
20  package org.xnap.plugin.gift.gui;
21  
22  import javax.swing.SwingUtilities;
23  
24  import org.xnap.XNap;
25  import org.xnap.gui.StatusPanel;
26  import org.xnap.plugin.gift.*;
27  import org.xnap.plugin.gift.net.GiFTDaemon;
28  import org.xnap.plugin.gift.net.GiFTDaemonListener;
29  
30  /***
31   *
32   */
33  public class GiFTStatusPanel extends StatusPanel
34  	implements GiFTDaemonListener
35  {
36  
37      // --- Data Field(s) ---
38  
39      // --- Constructor(s) ---
40  
41  	public GiFTStatusPanel(GiFTDaemon daemon) 
42      {
43  		setName(GiFTPlugin.getInstance().getInfo().getName());
44  
45  		statusChanged(daemon);
46      }
47  	
48      // --- Method(s) ---
49  
50      public void statusChanged(final GiFTDaemon daemon)
51      {
52  		Runnable runner = new Runnable()
53  			{
54  				public void run() 
55  				{
56  					boolean connected = daemon.isConnected();
57  					setIcon((connected) ? ICON_OK : ICON_ERROR);
58  					setText((connected)
59  							? XNap.tr("{0} connected", "giFT")
60  							: XNap.tr("{0} not connected", "giFT"));
61  					setToolTipText(daemon.getStatus());
62  				}
63  			};
64  		SwingUtilities.invokeLater(runner);
65      }
66  
67  }