KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > util > browser > plugin > java > reflect > ClassVisibilityConfigAction


1 /*====================================================================
2
3 Objectweb Browser Framework
4 Copyright (C) 2000-2003 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): Philippe Merle, Jerome Moroy.
23 Contributor(s): ______________________________________.
24
25 ====================================================================*/

26
27 package org.objectweb.util.browser.plugin.java.reflect;
28
29 import org.objectweb.util.browser.api.MenuItem;
30 import org.objectweb.util.browser.api.MenuItemTreeView;
31 import org.objectweb.util.browser.api.TreeView;
32 import org.objectweb.util.browser.gui.api.DialogAction;
33 import org.objectweb.util.browser.gui.api.DialogBox;
34 import org.objectweb.util.browser.gui.lib.DefaultDialogBox;
35
36 /**
37  * This action allows you to configure the visibility on a class.
38  *
39  * @author <a HREF="mailto:Philippe.Merle@lifl.fr">Philippe Merle</a>,
40  * <a HREF="mailto:Jerome.Moroy@lifl.fr">Jérôme Moroy</a>
41  *
42  * @version 0.1
43  */

44 public class ClassVisibilityConfigAction
45     implements MenuItem, DialogAction {
46
47     //==================================================================
48
//
49
// Internal states.
50
//
51
//==================================================================
52

53     protected Class JavaDoc class_;
54
55     protected ClassVisibilityBox classVisibilityConfig_;
56
57     //==================================================================
58
//
59
// Constructor.
60
//
61
//==================================================================
62

63     //==================================================================
64
//
65
// Internal methods.
66
//
67
//==================================================================
68

69     //==================================================================
70
//
71
// Public methods for MenuItem interface
72
//
73
//==================================================================
74

75     public int getStatus(TreeView treeView) {
76         return MenuItem.ENABLED_STATUS;
77     }
78
79     public void actionPerformed(MenuItemTreeView treeView)
80         throws Exception JavaDoc {
81     
82         class_ = (Class JavaDoc)treeView.getSelectedObject();
83         
84         ClassVisibilityConfig config = (ClassVisibilityConfig)ClassVisibility.config_.get(class_.getName());
85         if(config == null)
86             config = ClassVisibility.createNewDefaultConfig();
87
88         classVisibilityConfig_ = new ClassVisibilityBox(config);
89             
90         DialogBox dialog = new DefaultDialogBox("Class visibility");
91         dialog.addElementBox(classVisibilityConfig_);
92         dialog.setValidateAction(this);
93         dialog.show();
94
95     }
96
97     //==================================================================
98
//
99
// Public method for DialogAction interface.
100
//
101
//==================================================================
102

103     public void executeAction() throws Exception JavaDoc {
104         ClassVisibility.config_.put(class_.getName(), classVisibilityConfig_.getConfig());
105     }
106
107 }
Popular Tags