示例#1
0
  /** Creates an new and unloaded listitem. */
  protected final Listitem newUnloadedItem(ListitemRenderer renderer, int index) {
    final ListModel model = _listbox.getModel();
    Listitem item = null;
    if (model instanceof GroupsListModel) {
      final GroupsListModel gmodel = (GroupsListModel) model;
      final GroupDataInfo info = gmodel.getDataInfo(index);
      switch (info.type) {
        case GroupDataInfo.GROUP:
          item = newListgroup(renderer);
          ((Listgroup) item).setOpen(!info.close);
          break;
        case GroupDataInfo.GROUPFOOT:
          item = newListgroupfoot(renderer);
          break;
        default:
          item = newListitem(renderer);
      }
    } else {
      item = newListitem(renderer);
    }
    ((LoadStatus) item.getExtraCtrl()).setLoaded(false);
    ((LoadStatus) item.getExtraCtrl()).setIndex(index);

    newUnloadedCell(renderer, item);
    return item;
  }
  @Listen("onClick = #btn_confirmar")
  public void alterarOperador() {
    Map<String, Object> arguments = (Map) rw_dadosOperador.getValue();
    Operador op = (Operador) arguments.get("funAlterar");
    lb_operador = (Listbox) arguments.get("lb_operador");
    String pass = tb_insira_password.getText();
    List<Operador> list =
        operadorDao.obtemPorUsername(tb_username.getText(), tb_password.getText());
    if (!list.isEmpty() && op.getId() != list.get(0).getId()) {
      Clients.showNotification(
          "Um operador ja foi cadrastado com esse username", "error", null, null, 2000);
    } else {
      if (!tb_password.getText().equals(pass)) {
        Clients.showNotification("o password deve ser igual", "error", null, null, 2000);

      } else {
        ListModelList<Operador> lista = (ListModelList) lb_operador.getModel();
        lista.remove(op);
        setValues(op);
        operadorDao.update(op);
        lista.add(0, op);
        operadorWin.detach();
        ;
        Clients.showNotification("Dados do operador " + op.getNome() + " foram alterados");
      }
    }
  }
 public void onSelect$searchResultLb(Event event) {
   Physician _att = (Physician) searchResultLb.getSelectedItem().getValue();
   List<Physician> physicianList = (List<Physician>) selectedPhysiciansLb.getModel();
   if (physicianList.contains(_att) == false) {
     physicianList.add(_att);
   }
   save();
 }
 public void onClick$deleteBtn(Event event) {
   Window canvasBoardWindow =
       (Window) zkpaintWindow.getFellow("canvasInc").getFellow("canvasBoardWindow");
   Canvas cvs1 = (Canvas) canvasBoardWindow.getFellow("cvs1");
   int size = shapeListBox.getItemCount();
   System.out.println(size);
   for (int i = size - 1; i > -1; i--) {
     if (!shapeListBox.getItemAtIndex(i).isSelected()) continue;
     System.out.println(i);
     cvs1.remove(i);
     ((ListModelList) shapeListBox.getModel()).remove(i);
   }
 }
示例#5
0
  public void doListDataChange(ListDataEvent event) {
    // when this is called _model is never null
    final ListModel _model = _listbox.getModel();
    final int newsz = _model.getSize(), oldsz = _listbox.getItemCount();
    int min = event.getIndex0(), max = event.getIndex1(), cnt;

    switch (event.getType()) {
      case ListDataEvent.INTERVAL_ADDED:
        cnt = newsz - oldsz;
        if (cnt <= 0) throw new UiException("Adding causes a smaller list?");
        if ((oldsz <= 0 || cnt > INVALIDATE_THRESHOLD) && !inPagingMold()) _listbox.invalidate();
        // Bug 3147518: avoid memory leak
        // Also better performance (outer better than remove a lot)
        if (min < 0)
          if (max < 0) min = 0;
          else min = max - cnt + 1;
        if (min > oldsz) min = oldsz;

        ListitemRenderer renderer = null;
        final Component next = min < oldsz ? _listbox.getItemAtIndex(min) : null;
        while (--cnt >= 0) {
          if (renderer == null) renderer = (ListitemRenderer) getRealRenderer();
          _listbox.insertBefore(newUnloadedItem(renderer, min++), next);
        }
        break;

      case ListDataEvent.INTERVAL_REMOVED:
        cnt = oldsz - newsz;
        if (cnt <= 0) throw new UiException("Removal causes a larger list?");
        if (min >= 0) max = min + cnt - 1;
        else if (max < 0) max = cnt - 1; // 0 ~ cnt - 1		
        if (max > oldsz - 1) max = oldsz - 1;

        if ((newsz <= 0 || cnt > INVALIDATE_THRESHOLD) && !inPagingMold()) _listbox.invalidate();
        // Bug 3147518: avoid memory leak
        // Also better performance (outer better than remove a lot)

        // detach from end (due to groopfoot issue)
        Component comp = _listbox.getItemAtIndex(max);
        while (--cnt >= 0) {
          Component p = comp.getPreviousSibling();
          comp.detach();
          comp = p;
        }
        break;

      default: // CONTENTS_CHANGED
        syncModel(min, max);
    }
  }
  @Listen("onClick = #btn_confirmarLeitor")
  public void alterarleitor() {

    Map<String, Object> arguments = (Map) rw_dadosLeitor.getValue();
    Leitor leitor = (Leitor) arguments.get("funAlterar");
    lb_leitor = (Listbox) arguments.get("lb_leitor");
    ListModelList<Leitor> lista = (ListModelList) lb_leitor.getModel();
    lista.remove(leitor);
    setValuesLeitor(leitor);
    leitorDao.update(leitor);
    lista.add(0, leitor);
    winAlterarLeitor.detach();
    ;
    Clients.showNotification("Dados do leitor" + leitor.getNome() + " foram alterados");
  }
  public void lastNameSearch() {
    if (searchLastNameTb.getValue().length() < 3) {
      errLbl.setValue("Please enter at least 3 characters when searching");

      searchResult.setVisible(false);
    } else {
      errLbl.setValue("");
      this.physicians = PhysicanManager.searchByLastName(searchLastNameTb.getValue());
      if (physicians != null && physicians.size() > 0) {
        List<Physician> physicianList = (List<Physician>) searchResultLb.getModel();
        physicianList.clear();
        physicianList.addAll(physicians);
        searchResult.setVisible(true);
      } else {
        errLbl.setValue("No treatment provider found for: " + searchLastNameTb.getValue());
        searchResult.setVisible(false);
      }
    }
  }
 public void save() {
   sessionInfo.setAlternateTreatmentProviders((List<Physician>) selectedPhysiciansLb.getModel());
   sessionManager.save(sessionInfo);
   successLbl.setValue("Other treatment provider has been saved.");
 }
示例#9
0
  public void render(final Listitem item, final Object data, final int index) throws Exception {
    final Listbox listbox = (Listbox) item.getParent();
    final int size = listbox.getModel().getSize();
    // B70-ZK-2555: in order to handle dynamic template name
    final String subtype =
        item instanceof Listgroup ? "group" : item instanceof Listgroupfoot ? "groupfoot" : null;
    final Template tm = resolveTemplate(listbox, item, data, index, size, "model", subtype);
    if (tm == null) {
      item.setLabel(Objects.toString(data));
      item.setValue(data);
    } else {
      final ForEachStatus iterStatus =
          new AbstractForEachStatus() { // provide iteration status in this context
            private static final long serialVersionUID = 1L;

            public int getIndex() {
              return index;
            }

            public Object getCurrent() {
              return data;
            }

            public Integer getEnd() {
              return size;
            }
          };

      final String var = (String) tm.getParameters().get(EACH_ATTR);
      final String varnm = var == null ? EACH_VAR : var; // var is not specified, default to "each"
      final String itervar = (String) tm.getParameters().get(STATUS_ATTR);
      final String itervarnm =
          itervar == null
              ? (var == null ? EACH_STATUS_VAR : varnm + STATUS_POST_VAR)
              : itervar; // provide default value if not specified

      // bug 1188, EL when nested var and itervar
      Object oldVar = listbox.getAttribute(varnm);
      Object oldIter = listbox.getAttribute(itervarnm);
      listbox.setAttribute(varnm, data);
      listbox.setAttribute(itervarnm, iterStatus);

      final Component[] items = filterOutShadows(listbox, tm.create(listbox, item, null, null));

      // Bug ZK-2789: do not use setAttribute when actually trying to removeAttribute
      if (oldVar != null) {
        listbox.setAttribute(varnm, oldVar);
      } else {
        listbox.removeAttribute(varnm);
      }
      if (oldIter != null) {
        listbox.setAttribute(itervarnm, oldIter);
      } else {
        listbox.removeAttribute(itervarnm);
      }

      if (items.length != 1)
        throw new UiException("The model template must have exactly one item, not " + items.length);

      final Listitem nli = (Listitem) items[0];
      nli.setAttribute(BinderCtrl.VAR, varnm); // for the converter to get the value

      // ZK-2552
      recordRenderedIndex(listbox, items.length);
      nli.setAttribute(AbstractRenderer.IS_TEMPLATE_MODEL_ENABLED_ATTR, true);

      nli.setAttribute(
          AbstractRenderer.CURRENT_INDEX_RESOLVER_ATTR,
          new IndirectBinding() {
            public Binder getBinder() {
              return BinderUtil.getBinder(nli, true);
            }

            @SuppressWarnings("unchecked")
            public void setValue(BindELContext ctx, Object value) {
              int idx = BindListitemRenderer.this.getRenderedIndex(listbox, nli.getIndex());
              ListModel<?> listmodel = listbox.getListModel();
              if (idx >= 0 && idx < listmodel.getSize()) {
                if (listmodel instanceof ListModelArray) {
                  ((ListModelArray<Object>) listmodel).set(idx, value);
                } else if (listmodel instanceof ListModelList<?>) {
                  ((ListModelList<Object>) listmodel).set(idx, value);
                }
              } else {
                // out of range, should ignore to compatible with old version(when we didn't
                // implement save) or throw exception?
              }
            }

            public Component getComponent() {
              return nli;
            }

            public Object getValue(BindELContext ctx) {
              return listbox
                  .getModel()
                  .getElementAt(
                      BindListitemRenderer.this.getRenderedIndex(listbox, nli.getIndex()));
            }
          });
      addItemReference(
          listbox, nli, index, varnm); // kept the reference to the data, before ON_BIND_INIT

      nli.setAttribute(itervarnm, iterStatus);

      // sync open state
      if (nli instanceof Listgroup && item instanceof Listgroup) {
        ((Listgroup) nli).setOpen(((Listgroup) item).isOpen());
      }

      // ZK-1787 When the viewModel tell binder to reload a list, the other component that bind a
      // bean in the list will reload again
      // move TEMPLATE_OBJECT (was set in resoloveTemplate) to current for check in
      // addTemplateTracking
      Object obj = item.removeAttribute(TemplateResolver.TEMPLATE_OBJECT);
      // Bug ZK-2789: do not use setAttribute when actually trying to removeAttribute
      if (obj != null) {
        nli.setAttribute(TemplateResolver.TEMPLATE_OBJECT, obj);
      } else {
        nli.removeAttribute(TemplateResolver.TEMPLATE_OBJECT);
      }

      // add template dependency
      addTemplateTracking(listbox, nli, data, index, size);

      if (nli.getValue() == null) // template might set it
      nli.setValue(data);
      item.setAttribute(Attributes.MODEL_RENDERAS, nli);
      // indicate a new item is created to replace the existent one
      item.detach();
    }
  }
示例#10
0
 public int getTotalSize() {
   final ListModel model = _listbox.getModel();
   return model != null ? model.getSize() : _listbox.getVisibleItemCount();
 }
示例#11
0
  private void syncModel0(int offset, int limit) {
    int min = offset;
    int max = offset + limit - 1;

    final ListModel _model = _listbox.getModel();
    final int newsz = _model.getSize();
    final int oldsz = _listbox.getItemCount();
    final Paginal _pgi = _listbox.getPaginal();
    final boolean inPaging = inPagingMold();
    final boolean shallInvalidated = // Bug 3147518: avoid memory leak
        (min < 0 || min == 0) && (max < 0 || max >= newsz || max >= oldsz);

    int newcnt = newsz - oldsz;
    int atg = _pgi != null ? _listbox.getActivePage() : 0;
    ListitemRenderer renderer = null;
    Component next = null;
    if (oldsz > 0) {
      if (min < 0) min = 0;
      else if (min > oldsz - 1) min = oldsz - 1;
      if (max < 0) max = oldsz - 1;
      else if (max > oldsz - 1) max = oldsz - 1;
      if (min > max) {
        int t = min;
        min = max;
        max = t;
      }

      int cnt = max - min + 1; // # of affected
      if (_model instanceof GroupsListModel) {
        // detach all from end to front since groupfoot
        // must be detached before group
        newcnt += cnt; // add affected later
        if ((shallInvalidated || newcnt > INVALIDATE_THRESHOLD) && !inPaging) _listbox.invalidate();
        // Bug 3147518: avoid memory leak
        // Also better performance (outer better than remove a lot)

        Component comp = _listbox.getItemAtIndex(max);
        next = comp.getNextSibling();
        while (--cnt >= 0) {
          Component p = comp.getPreviousSibling();
          comp.detach();
          comp = p;
        }
      } else { // ListModel
        int addcnt = 0;
        Component item = _listbox.getItemAtIndex(min);
        while (--cnt >= 0) {
          next = item.getNextSibling();

          if (cnt < -newcnt) { // if shrink, -newcnt > 0
            item.detach(); // remove extra
          } else if (((Listitem) item).isLoaded()) {
            if (renderer == null) renderer = (ListitemRenderer) getRealRenderer();
            item.detach(); // always detach
            _listbox.insertBefore(newUnloadedItem(renderer, min), next);
            ++addcnt;
          }
          ++min;
          item = next; // B2100338.,next item could be Paging, don't use Listitem directly
        }

        if ((shallInvalidated
                || addcnt > INVALIDATE_THRESHOLD
                || addcnt + newcnt > INVALIDATE_THRESHOLD)
            && !inPagingMold()) _listbox.invalidate();
        // Bug 3147518: avoid memory leak
        // Also better performance (outer better than remove a lot)
      }
    } else {
      min = 0;
    }

    for (; --newcnt >= 0; ++min) {
      if (renderer == null) renderer = (ListitemRenderer) getRealRenderer();
      _listbox.insertBefore(newUnloadedItem(renderer, min), next);
    }
    if (_pgi != null) {
      if (atg >= _pgi.getPageCount()) atg = _pgi.getPageCount() - 1;
      _pgi.setActivePage(atg);
    }
  }
示例#12
0
  public void onSelect$ListagemDisciplina() {

    di =
        (RegistroDeDisciplina)
            ListagemDisciplina.getModel().getElementAt(ListagemDisciplina.getSelectedIndex());

    disciplina.setValue(di.getDisciplina().getNome());
    professor.setValue(di.getProfessor().getNome());
    id.setValue(String.valueOf(di.getDisciplina().getId()));
    cargaHoraria.setValue(String.valueOf(di.getDisciplina().getCargaHoraria()));

    JanelaFiltroParaListarDisciplina.setVisible(false);
    janelaDisciplinaAluno.setVisible(true);
    janelaDisciplina.setVisible(false);

    nomeTurma.setValue(turmav.getNome());
    turno.setValue(turmav.getTurno());
    modalidade.setValue(turmav.getModalidade());
    qtdAluno.setValue(String.valueOf(turmav.getQtdAluno()));
    anoLetivo.setValue(String.valueOf(turmav.getAnoLetivo().getAno()));
    sala.setValue(turmav.getSala().getDescricao());
    serie.setValue(turmav.getSerie().getDescricao());
    nivelEscolar.setValue(turmav.getSerie().getNivelEscolar().getNivel());

    Row rows = new Row();
    rows.setAlign("center");
    new Label(di.getDisciplina().getNome() + " | " + di.getProfessor().getNome()).setParent(rows);
    new Label("Carga Horária - " + di.getDisciplina().getCargaHoraria()).setParent(rows);
    rows.setParent(rowFrequencias);

    rowss.add(rows);

    for (Aluno a : Facade.getInstance().listarAlunoTurma(turmav.getId())) {

      Listitem li = new Listitem();

      for (Matricula m1 : a.getMatricula()) {
        if (turmav.getId() == m1.getTurma().getId()) {

          new Listcell(m1.getNumero()).setParent(li);

          Row row = new Row();

          new Label(m1.getNumero() + " | " + a.getNome()).setParent(row);

          Intbox t = new Intbox();

          t.setConstraint(c);

          t.setId(String.valueOf(a.getId()));

          intbox.add(t);

          t.setParent(row);
          t.setConstraint("no empty, no zero, no negative");

          row.setParent(rowFrequencias);
          rowss.add(row);
        }
      }

      new Listcell(a.getNome()).setParent(li);
      li.setParent(ListagemAluno);
    }

    binder.loadComponent(indexFrequencia);
    binder.loadComponent(rowFrequencias);
  }