source: josm/trunk/src/org/openstreetmap/josm/actions/DeleteLayerAction.java@ 10747

Last change on this file since 10747 was 10436, checked in by Don-vip, 8 years ago

see #13001 - replace calls to Main.main.[add|remove]Layer by Main.getLayerManager().[add|remove]Layer

File size: 1.5 KB
RevLine 
[9443]1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.actions;
3
[10318]4import static org.openstreetmap.josm.gui.help.HelpUtil.ht;
[9443]5import static org.openstreetmap.josm.tools.I18n.tr;
6
7import java.awt.event.ActionEvent;
8import java.awt.event.KeyEvent;
9import java.util.Collections;
10
11import org.openstreetmap.josm.Main;
[10318]12import org.openstreetmap.josm.gui.layer.Layer;
[9443]13import org.openstreetmap.josm.tools.Shortcut;
14
15/**
16 * Deletes the active layer.
17 */
18public final class DeleteLayerAction extends JosmAction {
19
20 /**
21 * Constructs a {@link DeleteLayerAction} which will delete the active layer.
22 */
23 public DeleteLayerAction() {
24 super(tr("Delete Layer"), "dialogs/delete", tr("Delete the active layer. Does not delete the associated file."),
[9448]25 Shortcut.registerShortcut("system:deletelayer", tr("File: {0}", tr("Delete Layer")), KeyEvent.VK_F4, Shortcut.CTRL),
26 true, "delete-layer", true);
[9443]27 putValue("help", ht("/Action/DeleteLayer"));
28 }
29
30 @Override
31 public void actionPerformed(ActionEvent e) {
[10413]32 Layer activeLayer = Main.getLayerManager().getActiveLayer();
[9443]33 if (activeLayer == null) {
34 return;
35 }
36 if (!Main.saveUnsavedModifications(Collections.singletonList(activeLayer), false)) {
37 return;
38 }
[10436]39 Main.getLayerManager().removeLayer(activeLayer);
[9443]40 }
41
42 @Override
43 protected void updateEnabledState() {
[10318]44 setEnabled(Main.getLayerManager().getActiveLayer() != null);
[9443]45 }
46}
Note: See TracBrowser for help on using the repository browser.