KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > ccm > chat > explorer > ChangeNameAttribute


1 /*===========================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
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): Jérôme Moroy.
23 Contributor(s): ______________________________________.
24
25 ===========================================================================*/

26
27 package org.objectweb.ccm.chat.explorer;
28
29 /** The administration console's API imports */
30 import org.objectweb.util.explorer.api.MenuItem;
31 import org.objectweb.util.explorer.api.MenuItemTreeView;
32 import org.objectweb.util.explorer.api.TreeView;
33 import org.objectweb.util.explorer.swing.gui.api.DialogAction;
34 import org.objectweb.util.explorer.swing.gui.api.DialogBox;
35 import org.objectweb.util.explorer.swing.gui.lib.DefaultDialogBox;
36 import org.objectweb.util.explorer.swing.gui.lib.LabelBox;
37 import org.objectweb.util.explorer.api.Tree;
38
39 import org.objectweb.ccm.chat.Client;
40
41 /**
42  * This action allows us to rename a client.
43  *
44  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
45  *
46  * @version 0.1
47  */

48 public class ChangeNameAttribute
49   implements MenuItem, DialogAction
50 {
51
52     //==================================================================
53
//
54
// Internal states.
55
//
56
//==================================================================
57

58     /** The associated Client */
59     protected Client client_ = null;
60
61     /** The name of the client */
62     protected LabelBox nameLabel_ = null;
63
64     //==================================================================
65
//
66
// No constructor.
67
//
68
//==================================================================
69

70     //==================================================================
71
//
72
// No internal method.
73
//
74
//==================================================================
75

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

82     /**
83      * Always enabled.
84      */

85     public int getStatus(TreeView treeView) {
86         return MenuItem.ENABLED_STATUS;
87     }
88
89     /**
90      * Provides a dialog box in order to inform about the name.
91      */

92     public void actionPerformed(MenuItemTreeView e) {
93         client_ = (Client) e.getParentObject();
94         DialogBox dialog = new DefaultDialogBox("Change the name attribute");
95         nameLabel_ = new LabelBox("name",client_.name());
96         dialog.addElementBox(nameLabel_);
97         dialog.setValidateAction(this);
98         dialog.show();
99     }
100
101     //==================================================================
102
//
103
// Public methods for DialogAction interface.
104
//
105
//==================================================================
106

107     /**
108      * Fixes the name.
109      */

110     public void executeAction() throws Exception JavaDoc {
111         client_.name(nameLabel_.getLabel());
112     }
113
114 }
115
Popular Tags