public void onClick$run(Event e) { getVectorLayer().clearFeatures(); shapeShown = false; selectionBar.setVisible(false); /* * 1. prepare info page for case study with area picture, list of possible storylines with explanations, * instructions for use, and pointers to web site where it counts. Also: form to save area for later, * disabled if not logged in. * * 2. Fill in enabled modules with storylines. Only show enabled ones with option to show those that are * not enabled. * * 3. Each storyline badge should bring up main page for storyline when clicked. That should have a main area * for the ES and one for the storyline-specific info. Model should look for the components and get * the descriptions from the concepts. Links to web site wherever necessary. Page has "start" etc on * it. Instead of list of pages, have "Computation is ongoing" or "Computation is waiting" or * "Computation is not active (activate)". When computed. the area becomes the index for the result * pages. * * 4. All possible downloads should be clearly marked on storyline page. */ try { userModel.startAnalysis(); } catch (ThinklabException e1) { throw new ThinklabRuntimeException(e1); } browserState = 1; /* * create view for all storylines and collect in storylineViews map * * show all module storylines in their modules, activate those with > 0 storylines, * and show each model storyline in each module. */ getBanner().setStoryline(userModel.getStoryline()); for (SidebarModule view : moduleViews) { view.display(); } /* * create view for user storyline and display it. The map window becomes invisible until * session reset. */ ZK.resetComponent(this.storyline); storylineViews.clear(); currentStoryline = null; addStorylineView( userModel.getStoryline(), new UserStorylineView(userModel.getStoryline(), this)); this.mapwindow.setVisible(false); this.storyline.setVisible(true); showStoryline(userModel.getStoryline(), null); }
public void exportKML() throws ThinklabException { Pair<String, String> uncu = application.getNewResourceUrl(".kmz", session); userModel.getStoryline().export(uncu.getFirst()); try { Filedownload.save(uncu.getSecond(), "application/vnd.google-earth.kmz"); } catch (FileNotFoundException e) { throw new ThinklabIOException(e); } }
/* * Called through reflection to refresh all components that have to do with the * associated storyline. */ public void refreshStoryline(String c) { Storyline ss = userModel.getStoryline().findStoryline(c); sidebar.redisplay(); if (currentStoryline != null && ss.equals(currentStoryline)) { currentStoryline = null; showStoryline(ss, null); } }