public void handleViewChanged(ProductSceneView oldView, ProductSceneView newView) {
if (debug) {
System.out.println("NavigationCanvas.handleViewChanged(): " + System.currentTimeMillis());
System.out.println(" oldView = " + (oldView == null ? "null" : oldView.getSceneName()));
System.out.println(" newView = " + (newView == null ? "null" : newView.getSceneName()));
}
if (oldView != null) {
Viewport observedViewport = oldView.getLayerCanvas().getViewport();
observedViewport.removeListener(observedViewportHandler);
}
if (newView != null) {
Viewport observedViewport = newView.getLayerCanvas().getViewport();
observedViewport.addListener(observedViewportHandler);
final Rectangle bounds;
if (getBounds().isEmpty()) {
bounds = new Rectangle(0, 0, 100, 100);
} else {
bounds = getBounds();
}
Viewport thumbnailViewport = new DefaultViewport(bounds, observedViewport.isModelYAxisDown());
thumbnailViewport.setOrientation(observedViewport.getOrientation());
LayerCanvasModel thumbnailCanvasModel = new DefaultLayerCanvasModel(newView.getRootLayer(),
thumbnailViewport);
thumbnailCanvas.setModel(thumbnailCanvasModel);
thumbnailCanvas.zoomAll();
} else {
thumbnailCanvas.setModel(NULL_MODEL);
}
updateMoveSliderRect();
}