source: josm/trunk/src/org/openstreetmap/josm/actions/ParameterizedActionDecorator.java@ 5299

Last change on this file since 5299 was 5170, checked in by Don-vip, 12 years ago

cleanup svn:mime-type properties preventing Java sources from being viewed as such on Trac

  • Property svn:eol-style set to native
File size: 1.4 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.actions;
3
4import java.awt.event.ActionEvent;
5import java.beans.PropertyChangeListener;
6import java.util.HashMap;
7import java.util.Map;
8
9import javax.swing.Action;
10
11public class ParameterizedActionDecorator implements Action {
12
13 private final ParameterizedAction action;
14 private final Map<String, Object> parameters;
15
16 public ParameterizedActionDecorator(ParameterizedAction action, Map<String, Object> parameters) {
17 this.action = action;
18 this.parameters = new HashMap<String, Object>(parameters);
19 }
20
21 public void addPropertyChangeListener(PropertyChangeListener listener) {
22 action.addPropertyChangeListener(listener);
23 }
24 public Object getValue(String key) {
25 return action.getValue(key);
26 }
27 public boolean isEnabled() {
28 return action.isEnabled();
29 }
30 public void putValue(String key, Object value) {
31 action.putValue(key, value);
32 }
33 public void removePropertyChangeListener(PropertyChangeListener listener) {
34 action.removePropertyChangeListener(listener);
35 }
36 public void setEnabled(boolean b) {
37 action.setEnabled(b);
38 }
39 public void actionPerformed(ActionEvent e) {
40 action.actionPerformed(e, parameters);
41 }
42
43 public Map<String, Object> getParameters() {
44 return parameters;
45 }
46
47}
Note: See TracBrowser for help on using the repository browser.