KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > util > explorer > interpreter > lib > swt > GenericAction


1 /*====================================================================
2
3 Objectweb Explorer 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, Philippe Merle.
23 Contributor(s): ______________________________________.
24
25 ====================================================================*/

26 package org.objectweb.util.explorer.interpreter.lib.swt;
27
28 import org.eclipse.swt.SWT;
29 import org.eclipse.swt.widgets.Event;
30 import org.eclipse.swt.widgets.Listener;
31 import org.eclipse.swt.widgets.MessageBox;
32 import org.objectweb.util.explorer.api.MenuItem;
33 import org.objectweb.util.explorer.api.MenuItemTreeView;
34 import org.objectweb.util.explorer.core.menu.api.MenuItemTreeViewConfiguration;
35 import org.objectweb.util.explorer.swt.lib.DynamicTree;
36 import org.objectweb.util.trace.TraceSystem;
37
38 /**
39  *
40  *
41  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jérôme Moroy</a>,
42  * <a HREF="mailto:Philippe.Merle@lifl.fr">Philippe Merle</a>.
43  *
44  * @version 0.1
45  */

46 public class GenericAction
47   implements Listener
48 {
49
50     //==================================================================
51
//
52
// Internal States.
53
//
54
// ==================================================================
55

56     protected MenuItem delegate_;
57     protected MenuItemTreeView treeView_;
58     
59     // ==================================================================
60
//
61
// Constructors.
62
//
63
// ==================================================================
64

65     public GenericAction(MenuItem action, MenuItemTreeView treeView){
66         delegate_ = action;
67         treeView_ = treeView;
68     }
69     
70     // ==================================================================
71
//
72
// Internal methods.
73
//
74
// ==================================================================
75

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

82     /* (non-Javadoc)
83      * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
84      */

85     public void handleEvent(Event event) {
86         try{
87             ((MenuItemTreeViewConfiguration)treeView_).setEvent(event);
88             delegate_.actionPerformed(treeView_);
89         } catch (Exception JavaDoc e) {
90             TraceSystem.get("explorer").warn(getClass().getName() + ", " + e.getClass().getName() + ": "+ e.getMessage());
91             MessageBox mb = new MessageBox(DynamicTree.shell_, SWT.ICON_ERROR | SWT.OK);
92             mb.setMessage(e.getClass().getName() + ":\n" + e.getMessage());
93             mb.setText("Exception (" + event.widget + ")");
94             mb.open();
95         }
96         treeView_.getTree().refreshAll();
97     }
98
99 }
100
Popular Tags