MapMode oldMapMode = this.mapMode;
if (newMapMode == oldMapMode)
return true;
if (oldMapMode != null) {
oldMapMode.exitMode();
}
this.mapMode = newMapMode;
newMapMode.enterMode();
lastMapMode.put(newLayer, newMapMode);
fireMapModeChanged(oldMapMode, newMapMode);