001    // License: GPL. For details, see LICENSE file.
002    package org.openstreetmap.josm.actions;
003    
004    import static org.openstreetmap.josm.tools.I18n.tr;
005    
006    import org.openstreetmap.josm.Main;
007    import org.openstreetmap.josm.actions.mapmode.MapMode;
008    
009    public class LassoModeAction extends MapMode {
010    
011        public LassoModeAction() {
012            super(tr("Lasso Mode"),
013                    "rope",
014                    tr("Lasso selection mode: select objects within a hand-drawn region"),
015                    null,
016                    null);
017        }
018    
019        @Override
020        public void enterMode() {
021            if (Main.isDisplayingMapView()) {
022                Main.map.mapModeSelect.setLassoMode(true);
023                Main.map.mapModeSelect.enterMode();
024            }
025            super.enterMode();
026        }
027    
028        @Override
029        public void exitMode() {
030            if (Main.isDisplayingMapView()) {
031                Main.map.mapModeSelect.setLassoMode(false);
032                Main.map.mapModeSelect.exitMode();
033            }
034            super.exitMode();
035        }
036    }