currentNodeHolder = lastNodeHolder;
go(back);
return;
}
boolean changeModule = false;
MapView newModule = null;
if (lastNodeHolder.getHoldMapView() != currentNodeHolder.getHoldMapView()) {
changeModule = true;
newModule = currentNodeHolder.getMapView();
if (newModule == null) {
nodeIterator.remove();
go(back);
return;
}
}
final boolean fChangeModule = changeModule;
final MapView newView;
if (fChangeModule) {
newView = newModule;
final Controller controller = newView.getModeController().getController();
final IMapViewManager mapViewManager = controller.getMapViewManager();
final boolean res = mapViewManager.changeToMapView(newView);
if (!res) {
LogUtils.warn("Can't change to map mapView " + newView);
return;
}
}
else {
newView = currentNodeHolder.getHoldMapView();
}
if (!toBeSelected.isRoot()) {
newView.getModeController().getMapController().setFolded(toBeSelected.getParentNode(), false);
}
newView.getModeController().getMapController().select(toBeSelected);
}