/** * Copyright (C) 2012 The FreeCol-Android Team * * This file is part of FreeCol-Android. * * FreeCol-Android is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * FreeCol is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with FreeCol-Android. If not, see <http://www.gnu.org/licenses/>. */ package org.freecolandroid.repackaged.javax.swing; import java.beans.PropertyChangeListener; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.freecolandroid.repackaged.java.awt.event.ActionEvent; import org.freecolandroid.repackaged.java.awt.event.ActionListener; public abstract class AbstractAction implements Action, ActionListener { protected boolean enabled; private String name; private Map<String, Object> values = new HashMap<String, Object>(); private List<PropertyChangeListener> listeners = new ArrayList<PropertyChangeListener>(); public AbstractAction(String name) { this.name = name; } public AbstractAction() { } @Override public Object getValue(String key) { return values.get(key); } @Override public void putValue(String key, Object value) { values.put(key, value); } @Override public void setEnabled(boolean b) { enabled = b; } @Override public boolean isEnabled() { return enabled; } @Override public void addPropertyChangeListener(PropertyChangeListener listener) { listeners.add(listener); } @Override public void removePropertyChangeListener(PropertyChangeListener listener) { listeners.remove(listener); } public void actionPerformed(ActionEvent e) { System.out.println("ERROR!");new Exception().printStackTrace();throw new UnsupportedOperationException("Broken!"); } }