Пример #1
0
    // set the icons in "painting" mode
    void painting(boolean isScissors) {

      addpolyg.setImage(
          isScissors
              ? ZK.fixUrl("/aries/images/icons/edit.png")
              : ZK.fixUrl("/aries/images/icons/edit_active.png"));
      subpolyg.setImage(
          isScissors
              ? ZK.fixUrl("/aries/images/icons/cut_active.png")
              : ZK.fixUrl("/aries/images/icons/cut_disabled.png"));

      resetdraw.setImage(ZK.fixUrl("/aries/images/icons/cancel_disabled.png"));
    }
Пример #2
0
  public void resetCaseStudy() throws ThinklabException {

    storylineViews.clear();
    currentStoryline = null;

    /*
     * reset ROI and all modules
     */
    userModel.clearAnalysis();

    /*
     * ask the user model to give us all the modules we have access to.
     */
    userModel.initializeModules();

    moduleViews.clear();
    sidebar.resetModules();
    createModuleViews();

    /*
     * restore interface
     */
    selectionBar.setVisible(true);
    selectionBar.idle(false);
    gazetteer.setValue("");
    getBanner().setStoryline(null);

    ZK.resetComponent(this.storyline);

    this.storyline.setVisible(false);
    this.mapwindow.setVisible(true);

    browserState = 0;
    sidebar.redisplay();
  }
Пример #3
0
  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);
  }
Пример #4
0
  public AriesBanner getBanner() {

    if (banner == null) {
      banner = (AriesBanner) ZK.getComponentById(this.getParent(), "top");
    }
    return banner;
  }
Пример #5
0
  /**
   * Called by other components to show, and if necessary create, a view for the storyline
   * corresponding to a given concept.
   *
   * @param storyline
   */
  public void showStoryline(Storyline storyline, StorylineControlPanel badge) {

    if (currentStoryline != null && storyline.equals(currentStoryline)) {
      return;
    }

    if (currentStoryline != null) storylineViews.get(currentStoryline).setVisible(false);

    if (!storylineViews.containsKey(storyline)) {
      createStorylineView(storyline, badge);
    }

    storylineViews.get(storyline).setVisible(true);
    currentStoryline = storyline;
    ZK.resetComponent(this.storyline);
    this.storyline.appendChild(storylineViews.get(storyline));
  }
Пример #6
0
    void idle(boolean hasSelection) {

      addpolyg.setImage(ZK.fixUrl("/aries/images/icons/edit.png"));
      subpolyg.setImage(
          hasSelection
              ? ZK.fixUrl("/aries/images/icons/cut.png")
              : ZK.fixUrl("/aries/images/icons/cut_disabled.png"));
      resetdraw.setImage(
          hasSelection
              ? ZK.fixUrl("/aries/images/icons/delete.png")
              : ZK.fixUrl("/aries/images/icons/delete_disabled.png"));

      run.setImage(
          (hasSelection)
              ? ZK.fixUrl("/aries/images/icons/play.png")
              : ZK.fixUrl("/aries/images/icons/play_disabled.png"));

      subpolyg.setDisabled(!hasSelection);
      resetdraw.setDisabled(!hasSelection);
      run.setDisabled(!hasSelection);
    }
Пример #7
0
  @Override
  public void initialize() {

    this.selectionBar = new SelectionBar();

    selectionBar.afterCompose();

    /*
     * build basic UI, same for all usages.
     */
    this.setContent(
        ZK.div(
            ZK.hbox(
                    ZK.sidebar(270, 700)
                        .headersclass(STYLE.MODULE_HEADER)
                        .labelsclass(STYLE.MODULE_TITLE, STYLE.MODULE_TITLE_DISABLED)
                        .headersize(24)
                        .id("sidebar"),
                    ZK.separator(false).width(10).height(700).sclass(STYLE.SEPARATOR),
                    ZK.vbox(
                            ZK.c(selectionBar),
                            OLMAPS
                                .map(
                                    OLMAPS.googlelayer().maptype("physical").id("google"),
                                    OLMAPS.vectorlayer().drawcontrols(true).id("vector"))
                                .zoom(2)
                                .center(1073500.73, 4482706.85)
                                .height(700)
                                .width(MAPWIDTH)
                                .id("map"),
                            ZK.window()
                                .width(MAPWIDTH)
                                .height(700)
                                .bgcolor("#cccccc")
                                .color("#000000")
                                .scroll()
                                .id("tableview")
                                .hide(),
                            ZK.c(new ARIESStatusBar(STATUS.get(), this))
                                .id("statusbar")
                                .height(28)
                                .width("100%"),
                            ZK.imagebutton("/aries/images/world48.png")
                                .id("view")
                                .tooltip("Toggle world views")
                                .sclass("mapbutton"))
                        .spacing(0)
                        .id("mapwindow"),

                    /*
                     * container for storylines, to be shown when we have made our selection
                     */
                    ZK.window().width(MAPWIDTH).height(760).id("storyline").hide())
                .id("browser")
                .spacing(0),

            /*
             * container for scenario editor - FIXME this should be just in the storyline window
             */
            ZK.c(new ScenarioEditor(this, 1270, 760)).id("sceditor").hide()));
  }
Пример #8
0
    @Override
    public void initialize() {

      this.setContent(
          ZK.hbox(
                  ZK.div(
                          ZK.hbox(
                              ZK.combobox()
                                  .listmodel(new GazModel(userModel.getDefaultLocations()))
                                  .listener(
                                      new EventListener() {
                                        @Override
                                        public void onEvent(Event arg0) throws Exception {
                                          if (((Combobox) arg0.getTarget()).getSelectedItem()
                                              != null) {
                                            ARIESUserModel.Location chosen =
                                                (Location)
                                                    ((Combobox) arg0.getTarget())
                                                        .getSelectedItem()
                                                        .getValue();
                                            setRegionFromGazetteer(chosen.id.toString());
                                          } else {
                                            /*
                                             * see if we put in a value and were too fast to have it searched
                                             */
                                            String s =
                                                ((Combobox) arg0.getTarget()).getValue().trim();
                                            if (s != null && !s.isEmpty()) {
                                              setRegionFromGazetteer(s);
                                            }
                                          }
                                        }
                                      })
                                  .id("gazetteer")
                                  .width(280)
                              /*,
                               *
                               * TODO
                               * these should be re-enabled when they work.
                               *
                              ZK.imagebutton("/aries/images/icons/folder_open.png")
                              	.tooltip("load a previously saved configuration"),
                              ZK.imagebutton("/aries/images/icons/save.png")
                              	.tooltip("save the current selection for future reference") */
                              ))
                      .align("left"),
                  ZK.div(
                          ZK.hbox(
                              ZK.image("/aries/images/icons/separator.png"),
                              ZK.imagebutton("/aries/images/icons/edit.png")
                                  .id("addpolyg")
                                  .tooltip("Draw a shape and add it to the selection"),
                              ZK.imagebutton("/aries/images/icons/cut_disabled.png")
                                  .enable(false)
                                  .id("subpolyg")
                                  .tooltip("Draw a shape and subtract it from the selection"),
                              ZK.imagebutton("/aries/images/icons/delete_disabled.png")
                                  .enable(false)
                                  .id("resetdraw")
                                  .tooltip("Clear all selections made so far"),
                              ZK.image("/aries/images/icons/separator.png"),
                              ZK.imagebutton("/aries/images/icons/play_disabled.png")
                                  .enable(false)
                                  .id("run")
                                  .tooltip("Accept selection and continue to assessment")))
                      .align("right")
                      .width("100%"))
              .width(MAPWIDTH)
              .height(24)
              .sclass(STYLE.MAP_TOOLBAR));
    }