source: josm/trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/DeleteCurrentRelationAction.java@ 9665

Last change on this file since 9665 was 9665, checked in by stoecker, 8 years ago

fix eol-style issues and similar formating stuff, see #12410

File size: 1.8 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.dialogs.relation.actions;
3
4import static org.openstreetmap.josm.tools.I18n.tr;
5
6import java.awt.event.ActionEvent;
7import java.beans.PropertyChangeEvent;
8import java.beans.PropertyChangeListener;
9
10import org.openstreetmap.josm.actions.mapmode.DeleteAction;
11import org.openstreetmap.josm.data.osm.Relation;
12import org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor;
13import org.openstreetmap.josm.gui.dialogs.relation.IRelationEditor;
14import org.openstreetmap.josm.gui.layer.OsmDataLayer;
15import org.openstreetmap.josm.tools.ImageProvider;
16
17/**
18 * Delete the currently edited relation.
19 * @since 9496
20 */
21public class DeleteCurrentRelationAction extends AbstractRelationEditorAction implements PropertyChangeListener {
22
23 /**
24 * Constructs a new {@code DeleteCurrentRelationAction}.
25 * @param layer OSM data layer
26 * @param editor relation editor
27 */
28 public DeleteCurrentRelationAction(OsmDataLayer layer, IRelationEditor editor) {
29 super(null, null, null, layer, editor);
30 putValue(SHORT_DESCRIPTION, tr("Delete the currently edited relation"));
31 putValue(SMALL_ICON, ImageProvider.get("dialogs", "delete"));
32 putValue(NAME, tr("Delete"));
33 updateEnabledState();
34 }
35
36 @Override
37 public void actionPerformed(ActionEvent e) {
38 Relation toDelete = editor.getRelation();
39 if (toDelete == null)
40 return;
41 DeleteAction.deleteRelation(layer, toDelete);
42 }
43
44 @Override
45 protected void updateEnabledState() {
46 setEnabled(editor.getRelationSnapshot() != null);
47 }
48
49 @Override
50 public void propertyChange(PropertyChangeEvent evt) {
51 if (GenericRelationEditor.RELATION_SNAPSHOT_PROP.equals(evt.getPropertyName())) {
52 updateEnabledState();
53 }
54 }
55}
Note: See TracBrowser for help on using the repository browser.