/** * Load the data needed by the presenter and update it. * * @param state * @param width * @param height */ public void display(final int width, final int height, PanelState state) { this.state = state; data.setManifestCollection(null); data.setManifest(null); data.setSequence(null); data.setCanvas(null); presenter.hideContent(width, height); AsyncCallback<PanelData> cb = new AsyncCallback<PanelData>() { @Override public void onSuccess(PanelData data) { presenter.display(width, height, data); } @Override public void onFailure(Throwable err) { Window.alert(Messages.INSTANCE.errorOnView() + err.getMessage()); } }; switch (state.getView()) { case CANVAS: PanelData.loadManifestSequenceCanvasAndAnnotationLists( state.getManifestUri(), state.getObjectUri(), data, state.getCanvasIndex(), cb); break; case HOME: cb.onSuccess(null); break; case MANIFEST: PanelData.loadManifest(state.getObjectUri(), data, cb); break; case MANIFEST_COLLECTION: PanelData.loadManifestCollection(state.getObjectUri(), data, cb); break; case SEQUENCE: PanelData.loadManifestSequenceAndAnnotationLists( state.getManifestUri(), state.getObjectUri(), data, cb); break; default: throw new RuntimeException(Messages.INSTANCE.unhandledView() + state.getView()); } }
public void setViewportPosition(int[] position) { data.setPosition(position); }
public void setCanvasZoomLevel(int zoom_level) { data.setZoomLevel(zoom_level); }