KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > fractal > explorer > icon > LifeCycleControllerIconProvider


1 /*====================================================================
2  
3  Objectweb Browser Framework
4  Copyright (C) 2000-2004 INRIA & USTL - LIFL - GOAL
5  Contact: openccm@objectweb.org
6  
7  This library is free software; you can redistribute it and/or
8  modify it under the terms of the GNU Lesser General Public
9  License as published by the Free Software Foundation; either
10  version 2.1 of the License, or any later version.
11  
12  This library is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  Lesser General Public License for more details.
16  
17  You should have received a copy of the GNU Lesser General Public
18  License along with this library; if not, write to the Free Software
19  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20  USA
21  
22  Initial developer(s): Jerome Moroy.
23  Contributor(s): ______________________________________.
24  
25  ---------------------------------------------------------------------
26  $Id: LifeCycleControllerIconProvider.java,v 1.3 2004/11/15 16:44:24 moroy Exp $
27  ====================================================================*/

28
29 package org.objectweb.fractal.explorer.icon;
30
31 import javax.swing.Icon JavaDoc;
32 import javax.swing.ImageIcon JavaDoc;
33
34 import org.objectweb.fractal.api.control.LifeCycleController;
35 import org.objectweb.util.explorer.api.IconProvider;
36
37 /**
38  * Provides a specific icon depending on the status of the component.
39  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
40  * @version 0.1
41  */

42 public class LifeCycleControllerIconProvider
43   implements IconProvider
44 {
45     //==================================================================
46
//
47
// Internal states.
48
//
49
//==================================================================
50

51     /** The different icons. */
52     protected Icon JavaDoc startIcon, stopIcon;
53     
54     //==================================================================
55
//
56
// Constructors.
57
//
58
//==================================================================
59

60     /** Empty constructor */
61     public LifeCycleControllerIconProvider() {
62         try{
63             startIcon = new ImageIcon JavaDoc(Thread.currentThread().getContextClassLoader().getResource("icons/Started.png"));
64             stopIcon = new ImageIcon JavaDoc(Thread.currentThread().getContextClassLoader().getResource("icons/Stopped.png"));
65         } catch (Exception JavaDoc e) {
66             System.err.println("Resource not found: " + e);
67         }
68     }
69     
70     //==================================================================
71
//
72
// No internal method.
73
//
74
//==================================================================
75

76     //==================================================================
77
//
78
// Public methods for IconProvider interface.
79
//
80
//==================================================================
81

82     /**
83      * Provides the appropriate icon
84      */

85     public Object JavaDoc newIcon(Object JavaDoc object) {
86         LifeCycleController lcc = (LifeCycleController) object;
87         String JavaDoc status = lcc.getFcState();
88         if (status.equals(LifeCycleController.STARTED))
89             return startIcon;
90         else if (status.equals(LifeCycleController.STOPPED))
91             return stopIcon;
92         else
93             return null;
94     }
95 }
96
Popular Tags