Example usage for com.google.gwt.user.cellview.client Column setCellStyleNames

List of usage examples for com.google.gwt.user.cellview.client Column setCellStyleNames

Introduction

In this page you can find the example usage for com.google.gwt.user.cellview.client Column setCellStyleNames.

Prototype

public void setCellStyleNames(String styleNames) 

Source Link

Document

Set extra style names that should be applied to every cell.

Usage

From source file:br.org.olimpiabarbacena.client.Pesquisar.java

License:Apache License

public void listarAcervo() {
    // remove todas as colunas
    for (int i = cellTable.getColumnCount() - 1; i >= 0; i--) {
        cellTable.removeColumn(i);/*from www  .  ja  v a 2  s .com*/
    }

    // Adiciona coluna imagem para exibir o tipo.
    Column<Object, ImageResource> colunaTipo = new Column<Object, ImageResource>(new ImageResourceCell()) {

        @Override
        public ImageResource getValue(Object object) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Midia")) {
                if (((Midia) object).getTipo() == Tipo.LIVRO) {
                    return Icons.INSTANCE.livro();
                } else if (((Midia) object).getTipo() == Tipo.CD) {
                    return Icons.INSTANCE.cd();
                } else if (((Midia) object).getTipo() == Tipo.DVD) {
                    return Icons.INSTANCE.dvd();
                } else if (((Midia) object).getTipo() == Tipo.REVISTA) {
                    return Icons.INSTANCE.revista();
                } else if (((Midia) object).getTipo() == Tipo.JORNAL) {
                    return Icons.INSTANCE.jornal();
                } else {
                    return Icons.INSTANCE.desconhecido();
                }
            }

            return Icons.INSTANCE.desconhecido();
        }
    };
    cellTable.addColumn(colunaTipo, "Tipo");
    cellTable.setColumnWidth(colunaTipo, "16px");

    // Adiciona coluna texto para exibir o ttulo.
    TextColumn<Object> colunaNome = new TextColumn<Object>() {

        @Override
        public String getValue(Object object) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Midia")) {
                return ((Midia) object).getTitulo();
            }

            return new String();
        }
    };
    colunaNome.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    cellTable.addColumn(colunaNome, "Ttulo");

    // Adiciona coluna com o boto editar.
    ButtonCell buttonCellEditar = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.editar();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Editar\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaEditar = new Column<Object, String>(buttonCellEditar) {

        @Override
        public String getValue(Object object) {
            return "Editar";
        }
    };
    colunaEditar.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Midia")) {
                if (((Midia) object).getTipo() == Tipo.LIVRO) {
                    principal.getControle().setDialogo(new DialogBox(false));

                    principal.getControle().getDialogo().setWidth("464px");
                    principal.getControle().getDialogo().setHeight("417px");

                    principal.getControle().setLivro(new br.org.olimpiabarbacena.client.formulario.midia.Livro(
                            principal, principal.getControle().getDialogo()));

                    principal.getControle().getLivro().get(((Midia) object).getId());

                    principal.getControle().getDialogo().setWidget(principal.getControle().getLivro());
                    principal.getControle().getDialogo().center();
                } else if (((Midia) object).getTipo() == Tipo.CD) {
                    principal.getControle().setDialogo(new DialogBox(false));

                    principal.getControle().getDialogo().setWidth("462px");
                    principal.getControle().getDialogo().setHeight("261px");

                    principal.getControle().setCD(new br.org.olimpiabarbacena.client.formulario.midia.CD(
                            principal, principal.getControle().getDialogo(), Tipo.CD));

                    principal.getControle().getCD().get(((Midia) object).getId());

                    principal.getControle().getDialogo().setWidget(principal.getControle().getCD());
                    principal.getControle().getDialogo().center();
                } else if (((Midia) object).getTipo() == Tipo.DVD) {
                    principal.getControle().setDialogo(new DialogBox(false));

                    principal.getControle().getDialogo().setWidth("462px");
                    principal.getControle().getDialogo().setHeight("261px");

                    principal.getControle().setCD(new br.org.olimpiabarbacena.client.formulario.midia.CD(
                            principal, principal.getControle().getDialogo(), Tipo.DVD));

                    principal.getControle().getCD().get(((Midia) object).getId());

                    principal.getControle().getDialogo().setWidget(principal.getControle().getCD());
                    principal.getControle().getDialogo().center();
                } else if (((Midia) object).getTipo() == Tipo.JORNAL) {
                    principal.getControle().setDialogo(new DialogBox(false));

                    principal.getControle().getDialogo().setWidth("460px");
                    principal.getControle().getDialogo().setHeight("359px");

                    principal.getControle()
                            .setJornal(new br.org.olimpiabarbacena.client.formulario.midia.Jornal(principal,
                                    principal.getControle().getDialogo(), Tipo.JORNAL));

                    principal.getControle().getJornal().get(((Midia) object).getId());

                    principal.getControle().getDialogo().setWidget(principal.getControle().getJornal());
                    principal.getControle().getDialogo().center();
                } else if (((Midia) object).getTipo() == Tipo.REVISTA) {
                    principal.getControle().setDialogo(new DialogBox(false));

                    principal.getControle().getDialogo().setWidth("460px");
                    principal.getControle().getDialogo().setHeight("359px");

                    principal.getControle()
                            .setJornal(new br.org.olimpiabarbacena.client.formulario.midia.Jornal(principal,
                                    principal.getControle().getDialogo(), Tipo.REVISTA));

                    principal.getControle().getJornal().get(((Midia) object).getId());

                    principal.getControle().getDialogo().setWidget(principal.getControle().getJornal());
                    principal.getControle().getDialogo().center();
                }
            }
        }
    });
    colunaEditar.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaEditar, new String());
    cellTable.setColumnWidth(colunaEditar, "16px");

    // Adiciona coluna com o boto remover.
    ButtonCell buttonCellRemover = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.remover();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Remover\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaRemover = new Column<Object, String>(buttonCellRemover) {
        @Override
        public String getValue(Object object) {
            return "Remover";
        }
    };
    colunaRemover.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Midia")) {
                if (Window.confirm(
                        "Deseja remover \"" + ((Midia) object).getTitulo() + "\" e suas dependncias?")) {
                    midiaService.remover(((Midia) object).getId(), new AsyncCallback<Void>() {

                        @Override
                        public void onFailure(Throwable caught) {
                        };

                        @Override
                        public void onSuccess(Void result) {
                            limpar();
                            listarAcervo();
                        };
                    });
                }
            }
        }
    });
    colunaRemover.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaRemover, new String());
    cellTable.setColumnWidth(colunaRemover, "16px");

    dataProvider = new AsyncDataProvider<Object>() {

        @Override
        protected void onRangeChanged(HasData<Object> display) {
            final Range range = display.getVisibleRange();
            final int start = range.getStart();
            final int end = start + range.getLength();

            midiaService.listar(textboxPesquisar.getText(), new AsyncCallback<List<Midia>>() {
                @Override
                public void onFailure(Throwable caught) {
                    Window.alert(caught.getMessage());
                }

                @Override
                public void onSuccess(List<Midia> result) {
                    // convert old list type to new list type
                    List<Object> list = new ArrayList<Object>(result.size());
                    for (Midia midia : result) {
                        list.add(midia);
                    }
                    updateRowData(start, list.subList(start, (result.size() < end) ? result.size() : end));
                    updateRowCount(result.size(), true);
                }
            });
        }
    };
    dataProvider.addDataDisplay(cellTable);
}

From source file:br.org.olimpiabarbacena.client.Pesquisar.java

License:Apache License

public void listarMembro() {
    // remove todas as colunas
    for (int i = cellTable.getColumnCount() - 1; i >= 0; i--) {
        cellTable.removeColumn(i);/*from   w  w  w  . ja va  2 s. c om*/
    }

    // Adiciona coluna texto para exibir o nome.
    TextColumn<Object> colunaNome = new TextColumn<Object>() {

        @Override
        public String getValue(Object object) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Membro")) {
                return ((Membro) object).getNome();
            }

            return new String();
        }
    };
    colunaNome.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    cellTable.addColumn(colunaNome, "Nome");

    // Adiciona coluna com o boto editar.
    ButtonCell buttonCellEditar = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.editar();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Editar\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaEditar = new Column<Object, String>(buttonCellEditar) {

        @Override
        public String getValue(Object object) {
            return "Editar";
        }
    };
    colunaEditar.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Membro")) {
                principal.getControle().setDialogo(new DialogBox(false));

                principal.getControle().getDialogo().setWidth("466px");
                principal.getControle().getDialogo().setHeight("319px");

                br.org.olimpiabarbacena.client.formulario.Membro membro = new br.org.olimpiabarbacena.client.formulario.Membro(
                        principal, principal.getControle().getDialogo());
                membro.buttonHistorico.setVisible(false);
                membro.buttonFechar.setText("Cancelar");

                membro.get(((Membro) object).getId());

                principal.getControle().getDialogo().setWidget(membro);
                principal.getControle().getDialogo().center();
            }
        }
    });
    colunaEditar.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaEditar, new String());
    cellTable.setColumnWidth(colunaEditar, "16px");

    // Adiciona coluna com o boto remover.
    ButtonCell buttonCellRemover = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.remover();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Remover\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaRemover = new Column<Object, String>(buttonCellRemover) {
        @Override
        public String getValue(Object object) {
            return "Remover";
        }
    };
    colunaRemover.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Membro")) {
                if (Window.confirm(
                        "Deseja remover \"" + ((Membro) object).getNome() + "\" e suas dependncias?")) {
                    membroService.remover(((Membro) object).getId(), new AsyncCallback<Void>() {

                        @Override
                        public void onFailure(Throwable caught) {
                        };

                        @Override
                        public void onSuccess(Void result) {
                            limpar();
                            listarMembro();
                        };
                    });
                }
            }
        }
    });
    colunaRemover.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaRemover, new String());
    cellTable.setColumnWidth(colunaRemover, "16px");

    dataProvider = new AsyncDataProvider<Object>() {

        @Override
        protected void onRangeChanged(HasData<Object> display) {
            final Range range = display.getVisibleRange();
            final int start = range.getStart();
            final int end = start + range.getLength();

            membroService.listar(textboxPesquisar.getText(), new AsyncCallback<List<Membro>>() {
                @Override
                public void onFailure(Throwable caught) {
                    Window.alert(caught.getMessage());
                }

                @Override
                public void onSuccess(List<Membro> result) {
                    // convert old list type to new list type
                    List<Object> list = new ArrayList<Object>(result.size());
                    for (Membro membro : result) {
                        list.add(membro);
                    }
                    updateRowData(start, list.subList(start, (result.size() < end) ? result.size() : end));
                    updateRowCount(result.size(), true);
                }
            });
        }
    };
    dataProvider.addDataDisplay(cellTable);
}

From source file:br.org.olimpiabarbacena.client.Pesquisar.java

License:Apache License

public void listarEmprestimo() {
    // remove todas as colunas
    for (int i = cellTable.getColumnCount() - 1; i >= 0; i--) {
        cellTable.removeColumn(i);/*from   w  w  w.  j  a  v a2  s . c o m*/
    }

    // Adiciona coluna imagem para exibir a situao.
    Column<Object, ImageResource> colunaSituacao = new Column<Object, ImageResource>(new ImageResourceCell()) {

        @Override
        public ImageResource getValue(Object object) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Emprestimo")) {
                if (((Emprestimo) object).getEntrega() == null) {
                    return Icons.INSTANCE.emprestado();
                } else {
                    return Icons.INSTANCE.baixado();
                }
            } else {
                return Icons.INSTANCE.desconhecido();
            }
        }
    };
    cellTable.addColumn(colunaSituacao, new String());
    cellTable.setColumnWidth(colunaSituacao, "16px");

    // Adiciona coluna texto para exibir o ttulo.
    TextColumn<Object> colunaNome = new TextColumn<Object>() {

        @Override
        public String getValue(Object object) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Emprestimo")) {
                return ((Emprestimo) object).getMidiaObject().getTitulo();
            }

            return new String();
        }
    };
    colunaNome.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    cellTable.addColumn(colunaNome, "Ttulo");

    // Adiciona coluna com o boto reservar.
    ButtonCell buttonCellReservar = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.reservar();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Reservar\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaReservar = new Column<Object, String>(buttonCellReservar) {
        @Override
        public String getValue(Object object) {
            return "Reservar";
        }
    };
    colunaReservar.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Emprestimo")) {
                principal.getControle().setDialogo(new DialogBox(false));

                principal.getControle().getDialogo().setWidth("450px");
                principal.getControle().getDialogo().setHeight("91px");

                Reserva reserva = new Reserva(((Emprestimo) object), principal.getControle().getDialogo());

                principal.getControle().getDialogo().setWidget(reserva);
                principal.getControle().getDialogo().center();
            }
        }
    });
    colunaReservar.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaReservar, new String());
    cellTable.setColumnWidth(colunaReservar, "16px");

    // Adiciona coluna com o boto reservar.
    ButtonCell buttonCellBaixar = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.baixar();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Baixar\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaBaixar = new Column<Object, String>(buttonCellBaixar) {
        @Override
        public String getValue(Object object) {
            return "Baixar";
        }
    };
    colunaBaixar.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Emprestimo")) {
                if (((Emprestimo) object).getEntrega() == null) {
                    if (Window.confirm("Deseja baixar \"" + ((Emprestimo) object).getMidiaObject().getTitulo()
                            + "\" emprestado para \"" + ((Emprestimo) object).getMembroObject().getNome()
                            + "\"?")) {
                        emprestimoService.baixar(((Emprestimo) object).getId(), new AsyncCallback<Void>() {

                            @Override
                            public void onFailure(Throwable caught) {
                            };

                            @Override
                            public void onSuccess(Void result) {
                                limpar();
                                listarEmprestimo();
                            };
                        });
                    }
                } else {
                    Window.alert("Esta mdia j foi devolvida.");
                }

            }
        }
    });
    colunaBaixar.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaBaixar, new String());
    cellTable.setColumnWidth(colunaBaixar, "16px");

    // Adiciona coluna com o boto visualizar.
    ButtonCell buttonCellVisualizar = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.visualizar();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Visualizar\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaVisualizar = new Column<Object, String>(buttonCellVisualizar) {

        @Override
        public String getValue(Object object) {
            return "Visualizar";
        }
    };
    colunaVisualizar.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Emprestimo")) {

                principal.getControle().setDialogo(new DialogBox(false));

                principal.getControle().getDialogo().setWidth("451px");
                principal.getControle().getDialogo().setHeight("124px");

                principal.getControle().getDialogo().setWidget(
                        new br.org.olimpiabarbacena.client.formulario.midia.Emprestimo(((Emprestimo) object),
                                principal.getControle().getDialogo()));
                principal.getControle().getDialogo().center();
            }
        }
    });
    colunaVisualizar.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaVisualizar, new String());
    cellTable.setColumnWidth(colunaVisualizar, "16px");

    // Adiciona coluna com o boto remover.
    ButtonCell buttonCellRemover = new ButtonCell() {

        @Override
        public void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                ImageResource icon = Icons.INSTANCE.remover();
                String iconDisplay = AbstractImagePrototype.create(icon).getHTML();
                iconDisplay = iconDisplay.replaceFirst(">", " title=\"Remover\">");
                SafeHtml html = SafeHtmlUtils.fromTrustedString(iconDisplay);
                sb.append(html);
            }
        }
    };
    Column<Object, String> colunaRemover = new Column<Object, String>(buttonCellRemover) {
        @Override
        public String getValue(Object object) {
            return "Remover";
        }
    };
    colunaRemover.setFieldUpdater(new FieldUpdater<Object, String>() {
        @Override
        public void update(int index, Object object, String value) {
            if (object.getClass().getName().equals("br.org.olimpiabarbacena.shared.dados.Emprestimo")) {
                if (Window.confirm("Deseja remover \"" + ((Emprestimo) object).getMidiaObject().getTitulo()
                        + "\" emprestado para \"" + ((Emprestimo) object).getMembroObject().getNome()
                        + "\"?")) {
                    emprestimoService.remover(((Emprestimo) object).getId(), new AsyncCallback<Void>() {

                        @Override
                        public void onFailure(Throwable caught) {
                        };

                        @Override
                        public void onSuccess(Void result) {
                            limpar();
                            listarEmprestimo();
                        };
                    });
                }
            }
        }
    });
    colunaRemover.setCellStyleNames("gwt-cell-pointer");
    cellTable.addColumn(colunaRemover, new String());
    cellTable.setColumnWidth(colunaRemover, "16px");

    dataProvider = new AsyncDataProvider<Object>() {

        @Override
        protected void onRangeChanged(HasData<Object> display) {
            final Range range = display.getVisibleRange();
            final int start = range.getStart();
            final int end = start + range.getLength();

            emprestimoService.listar(textboxPesquisar.getText(), new AsyncCallback<List<Emprestimo>>() {
                @Override
                public void onFailure(Throwable caught) {
                    Window.alert(caught.getMessage());
                }

                @Override
                public void onSuccess(List<Emprestimo> result) {
                    // convert old list type to new list type
                    List<Object> list = new ArrayList<Object>(result.size());
                    for (Emprestimo emprestimo : result) {
                        list.add(emprestimo);
                    }
                    updateRowData(start, list.subList(start, (result.size() < end) ? result.size() : end));
                    updateRowCount(result.size(), true);
                }
            });
        }
    };
    dataProvider.addDataDisplay(cellTable);
}

From source file:com.databasepreservation.visualization.client.common.lists.AsyncTableCell.java

protected void addColumn(Column<T, ?> column, SafeHtml headerHTML, boolean nowrap, boolean alignRight) {
    SafeHtmlHeader header = new SafeHtmlHeader(headerHTML);

    display.addColumn(column, header);// w ww .ja  v a 2  s.  c  o m

    if (nowrap && alignRight) {
        header.setHeaderStyleNames("nowrap text-align-right");
        column.setCellStyleNames("nowrap text-align-right");
    } else if (nowrap) {
        header.setHeaderStyleNames("cellTableFadeOut");
        column.setCellStyleNames("cellTableFadeOut");
    }
}

From source file:com.gwtmodel.table.view.table.PresentationTable.java

License:Apache License

private void setWrapCol() {
    for (int i = 0; i < table.getColumnCount(); i++) {
        VListHeaderDesc he = coV.getV(i);
        if (he == null)
            continue;
        // Joiner join = Joiner.on(" ").skipNulls();
        String aClass = CUtil.joinS(' ', model.getClassNameForColumn(he.getFie()), he.getColumnClass(),
                noWrap ? IConsts.nowrapStyle : null);
        Column<MutableInteger, ?> co = table.getColumn(i);
        co.setCellStyleNames(aClass);
    }/*from   w  ww  .  ja v  a 2  s . c o m*/
}

From source file:com.novartis.pcs.ontology.webapp.client.view.ApproveRejectComposite.java

License:Apache License

@SuppressWarnings("unchecked")
protected void setupTable() {
    table.setWidth("100%");
    table.addStyleName("gwt-CellTable");
    table.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);

    /* getValue gets called during update. Need to combine objects
     * and include a flag that is set when update starts. Using default
     * functionality with Shit key is better anyway and have include
     * note to user so they are aware of it. See addWidgets below.  
    Header<Boolean> checkHeader = new Header<Boolean>(new CheckboxCell()) {
      @Override/*from w w  w .j  a va  2s . c o m*/
      public Boolean getValue() {
    return false; //selection.getSelectedSet().containsAll(table.getVisibleItems());
            
      }
    };
            
    checkHeader.setUpdater(new ValueUpdater<Boolean>() {
      @Override
      public void update(Boolean value) {
    List<T> displayedItems = table.getVisibleItems();
    for (T pending : displayedItems) {
       selection.setSelected(pending, value);
    }
      }
    });
    */

    if (curator != null && curator.isAuthorised(entity)) {
        Column<T, Boolean> checkColumn = new Column<T, Boolean>(new DisableableCheckboxCell(true, false)) {
            @Override
            public Boolean getValue(T object) {
                return !object.getCreatedBy().equals(curator) ? selection.isSelected(object) : null;
            }
        };

        table.addColumn(checkColumn);
        table.setColumnWidth(checkColumn, 16, Unit.PX);

        table.setSelectionModel(selection, DefaultSelectionEventManager.<T>createCheckboxManager(0));
    } else {
        table.setSelectionModel(new NoSelectionModel<T>(keyProvider));
    }

    addTableColumns(table);
    table.addColumn(new CreatedDateColumn(), "Created");
    table.addColumn(new CreatedByColumn(), "Created By");

    if (curator != null) {
        IconActionCell.Delegate<T> delegate = new IconActionCell.Delegate<T>() {
            @Override
            public void execute(T entity) {
                editView.setEntity(entity);
                editView.show();
            }
        };

        Column<T, T> editColumn = new Column<T, T>(
                new IconActionCell<T>(ImageResources.INSTANCE.editIcon(), delegate)) {
            @Override
            public T getValue(T entity) {
                return entity;
            }
        };
        editColumn.setCellStyleNames("icon-action");
        table.addColumn(editColumn, SafeHtmlUtils.fromSafeConstant("&nbsp;"));
    }

    if (curator != null) {
        IconActionCell.Delegate<T> delegate = new IconActionCell.Delegate<T>() {
            @Override
            public void execute(final T entity) {
                if (entity != null && curator.equals(entity.getCreatedBy())) {
                    if (errorLabel.isVisible()) {
                        errorLabel.setVisible(false);
                    }
                    if (selection != null) {
                        selection.setSelected(entity, false);
                    }
                    processing.add(entity);
                    busyIndicator.busy();
                    service.delete(entity, new AsyncCallback<Void>() {
                        @Override
                        public void onFailure(Throwable caught) {
                            GWT.log("Failed to delete pending item", caught);
                            processing.remove(entity);
                            busyIndicator.idle();
                            if (caught instanceof InvalidEntityException) {
                                InvalidEntityException e = (InvalidEntityException) caught;
                                errorLabel.setText(e.getMessage() + ": " + e.getEntity());
                                errorLabel.setVisible(true);
                            } else {
                                ErrorView.instance().onUncaughtException(caught);
                            }
                        }

                        @Override
                        public void onSuccess(Void nothing) {
                            processing.remove(entity);
                            dataProvider.getList().remove(entity);
                            busyIndicator.idle();
                            fireDeleteEvent(entity);
                        }
                    });
                }
            }
        };

        Column<T, T> deleteColumn = new Column<T, T>(
                new IconActionCell<T>(ImageResources.INSTANCE.deleteIcon(), delegate)) {
            @Override
            public T getValue(T entity) {
                return curator.equals(entity.getCreatedBy()) ? entity : null;
            }
        };
        deleteColumn.setCellStyleNames("icon-action");
        table.addColumn(deleteColumn, SafeHtmlUtils.fromSafeConstant("&nbsp;"));
    }

    ListHandler<T> sortHandler = new ListHandler<T>(dataProvider.getList());
    for (int i = 0; i < table.getColumnCount(); i++) {
        Column<T, ?> column = table.getColumn(i);
        if (column.isSortable() && column instanceof Comparator<?>) {
            sortHandler.setComparator(column, (Comparator<T>) column);
        }
    }
    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(table.getColumn(curator != null && curator.isAuthorised(entity) ? 2 : 1));
}

From source file:com.novartis.pcs.ontology.webapp.client.view.CrossRefPopup.java

License:Apache License

@SuppressWarnings("unchecked")
private void addTableColumns() {
    /*/*from  w w w.  j  av  a  2s  .com*/
     List<String> typeNames = new ArrayList<String>();
     for(Synonym.Type type : Synonym.Type.values()) {
       typeNames.add(type.name());
    }
             
     Column<ControlledVocabularyTerm, String> typeColumn = 
     new Column<ControlledVocabularyTerm, String>(new SelectionCell(typeNames)) {
        @Override
        public String getValue(ControlledVocabularyTerm term) {
     Synonym.Type type = term.getSynonymType();
    if(type == null) {
       type = Synonym.Type.RELATED; 
    }
             
     return type.name();
        }
     };
             
     typeColumn.setFieldUpdater(new FieldUpdater<ControlledVocabularyTerm, String>() {
        @Override
        public void update(int index, ControlledVocabularyTerm term, String typeName) {
     Synonym.Type type = Synonym.Type.valueOf(typeName);  
    term.setSynonymType(type);
        }
     });
     */

    IconActionCell.Delegate<ControlledVocabularyTerm> delegate = new IconActionCell.Delegate<ControlledVocabularyTerm>() {
        @Override
        public void execute(ControlledVocabularyTerm term) {
            eventBus.fireEvent(new SearchEvent(term.getName()));

            if (selection != null) {
                selection.clear();
                selection.setSelected(term, true);
            }
        }
    };

    Column<ControlledVocabularyTerm, ControlledVocabularyTerm> searchColumn = new Column<ControlledVocabularyTerm, ControlledVocabularyTerm>(
            new IconActionCell<ControlledVocabularyTerm>(ImageResources.INSTANCE.searchIcon(), delegate)) {
        @Override
        public ControlledVocabularyTerm getValue(ControlledVocabularyTerm term) {
            return term;
        }
    };
    searchColumn.setCellStyleNames("icon-action");
    /*              
    Column<ControlledVocabularyTerm, ControlledVocabularyTerm> addColumn = 
     new Column<ControlledVocabularyTerm, ControlledVocabularyTerm>(new IconActionCell<ControlledVocabularyTerm>(ImageResources.INSTANCE.addIcon(), this)) {
       @Override
       public ControlledVocabularyTerm getValue(ControlledVocabularyTerm term) {
     return term;
       }
    };
    addColumn.setCellStyleNames("icon-action");
            
    // colspans the table header if we use the same Header object
    Header<String> actionHeader = new Header<String>(new TextCell()) {
      @Override
      public String getValue() {
    return "Action";
      }
    };
    */
    table.setWidth("100%");
    table.setPageSize(10);
    table.addStyleName("gwt-CellTable");
    table.addStyleName("spaced-vert");
    //table.setKeyboardPagingPolicy(KeyboardPagingPolicy.CHANGE_PAGE);
    table.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);

    if (curator != null) {
        Column<ControlledVocabularyTerm, Boolean> checkColumn = new Column<ControlledVocabularyTerm, Boolean>(
                new CheckboxCell(true, false)) {
            @Override
            public Boolean getValue(ControlledVocabularyTerm term) {
                return selection.isSelected(term);
            }
        };

        table.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("&nbsp;"));
        table.setColumnWidth(checkColumn, 16, Unit.PX);

        table.setSelectionModel(selection,
                DefaultSelectionEventManager.<ControlledVocabularyTerm>createCheckboxManager(0));
    } else {
        table.setSelectionModel(new NoSelectionModel<ControlledVocabularyTerm>(keyProvider));
    }

    NameColumn nameColumn = new NameColumn();
    nameColumn.setFieldUpdater(new FieldUpdater<ControlledVocabularyTerm, String>() {
        @Override
        public void update(int index, ControlledVocabularyTerm term, String value) {
            linkedTermsView.show(term);
        }
    });
    nameColumn.setCellStyleNames("clickable-text");

    table.addColumn(searchColumn, SafeHtmlUtils.fromSafeConstant("&nbsp;"));
    table.addColumn(nameColumn, "Unmapped Term");
    table.addColumn(new ContextColumn(), "Context");
    table.addColumn(new SourceColumn(), "Source");
    table.addColumn(new UsageColumn(), "Usage");
    // table.addColumn(typeColumn, "Type");

    ListHandler<ControlledVocabularyTerm> sortHandler = new ListHandler<ControlledVocabularyTerm>(
            dataProvider.getList());
    for (int i = 1; i < table.getColumnCount(); i++) {
        Column<ControlledVocabularyTerm, ?> column = table.getColumn(i);
        if (column.isSortable() && column instanceof Comparator<?>) {
            sortHandler.setComparator(column, (Comparator<ControlledVocabularyTerm>) column);
        }
    }

    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(table.getColumn(table.getColumnCount() - 1));
    // Second time to reverse sort order
    table.getColumnSortList().push(table.getColumn(table.getColumnCount() - 1));
}

From source file:com.novartis.pcs.ontology.webapp.client.view.RelatedTermsView.java

License:Apache License

public void setCurator(final Curator curator) {
    final ReplaceRelationshipPopup replaceRelationshipView = new ReplaceRelationshipPopup(service, eventBus);

    IconActionCell.Delegate<Relationship> delegate = new IconActionCell.Delegate<Relationship>() {
        @Override//from w  w  w.jav  a  2s . com
        public void execute(final Relationship relationship) {
            switch (relationship.getStatus()) {
            case PENDING:
                service.delete(relationship, new AsyncCallback<Void>() {
                    @Override
                    public void onFailure(Throwable caught) {
                        GWT.log("Failed to delete pending relationship", caught);
                        if (caught instanceof InvalidEntityException) {
                            InvalidEntityException e = (InvalidEntityException) caught;
                            //errorLabel.setText(e.getMessage() + ": " + e.getEntity());
                            //errorLabel.setVisible(true);
                        } else {
                            ErrorView.instance().onUncaughtException(caught);
                        }
                    }

                    @Override
                    public void onSuccess(Void nothing) {
                        eventBus.fireEvent(new RelationshipDeletedEvent(relationship));
                        Term term = relationship.getTerm();
                        Term relatedTerm = relationship.getRelatedTerm();
                        if (term.equals(currentTerm) || relatedTerm.equals(currentTerm)) {
                            eventBus.fireEvent(new ViewTermEvent(currentTerm));
                        }
                    }
                });
                break;
            case APPROVED:
                replaceRelationshipView.setRelationship(relationship);
                replaceRelationshipView.show();
                /*
                service.obsoleteRelationship(relationship.getId(), 0, null, new AsyncCallback<Relationship>() {
                  @Override
                  public void onFailure(Throwable caught) {
                     GWT.log("Failed to obsolete relationship", caught);
                     if(caught instanceof InvalidEntityException) {
                InvalidEntityException e = (InvalidEntityException)caught;
                //errorLabel.setText(e.getMessage() + ": " + e.getEntity());
                //errorLabel.setVisible(true);
                     } else {
                ErrorView.instance().onUncaughtException(caught);
                     }
                  }
                        
                  @Override
                  public void onSuccess(Relationship relationship) {
                     eventBus.fireEvent(new RelationshipUpdatedEvent(relationship));
                     Term term = relationship.getTerm();
                     Term relatedTerm = relationship.getRelatedTerm();
                     if(term.equals(currentTerm) || relatedTerm.equals(currentTerm)) {
                eventBus.fireEvent(new ViewTermEvent(currentTerm));
                     }
                  }
                });
                */
                break;

            }
        }
    };

    Column<Relationship, Relationship> deleteColumn = new Column<Relationship, Relationship>(
            new IconActionCell<Relationship>(ImageResources.INSTANCE.deleteIcon(), delegate)) {
        @Override
        public Relationship getValue(Relationship relationship) {
            switch (relationship.getStatus()) {
            case PENDING:
                return curator.equals(relationship.getCreatedBy()) ? relationship : null;
            case APPROVED:
                return BigDecimal.ONE.equals(curator.getEntityApprovalWeight(Entity.TERM_RELATIONSHIP))
                        ? relationship
                        : null;
            }

            return null;
        }
    };
    deleteColumn.setCellStyleNames("icon-action");
    table.addColumn(deleteColumn, SafeHtmlUtils.fromSafeConstant("&nbsp;"));
}

From source file:com.novartis.pcs.ontology.webapp.client.view.TermSynonymsView.java

License:Apache License

public void setCurator(final Curator curator) {
    final ReplaceSynonymPopup replaceSynonymView = new ReplaceSynonymPopup(service, eventBus);

    IconActionCell.Delegate<Synonym> delegate = new IconActionCell.Delegate<Synonym>() {
        @Override/*  w  w  w .ja v  a  2s.  c o m*/
        public void execute(final Synonym synonym) {
            switch (synonym.getStatus()) {
            case PENDING:
                service.delete(synonym, new AsyncCallback<Void>() {
                    @Override
                    public void onFailure(Throwable caught) {
                        GWT.log("Failed to delete pending synonym", caught);
                        if (caught instanceof InvalidEntityException) {
                            InvalidEntityException e = (InvalidEntityException) caught;
                            //errorLabel.setText(e.getMessage() + ": " + e.getEntity());
                            //errorLabel.setVisible(true);
                        } else {
                            ErrorView.instance().onUncaughtException(caught);
                        }
                    }

                    @Override
                    public void onSuccess(Void nothing) {
                        eventBus.fireEvent(new SynonymDeletedEvent(synonym));
                    }
                });
                break;
            case APPROVED:
                replaceSynonymView.setSynonym(synonym);
                replaceSynonymView.show();

                /*
                service.obsoleteSynonym(synonym.getId(), 0, null, new AsyncCallback<Synonym>() {
                  @Override
                  public void onFailure(Throwable caught) {
                     GWT.log("Failed to obsolete synonym", caught);
                     if(caught instanceof InvalidEntityException) {
                InvalidEntityException e = (InvalidEntityException)caught;
                //errorLabel.setText(e.getMessage() + ": " + e.getEntity());
                //errorLabel.setVisible(true);
                     } else {
                ErrorView.instance().onUncaughtException(caught);
                     }
                  }
                        
                  @Override
                  public void onSuccess(Synonym synonym) {
                     eventBus.fireEvent(new SynonymUpdatedEvent(synonym));
                  }
                });
                */
                break;

            }
        }
    };

    Column<Synonym, Synonym> deleteColumn = new Column<Synonym, Synonym>(
            new IconActionCell<Synonym>(ImageResources.INSTANCE.deleteIcon(), delegate)) {
        @Override
        public Synonym getValue(Synonym synonym) {
            Datasource datasource = null;
            if (synonym.getControlledVocabularyTerm() != null) {
                datasource = synonym.getControlledVocabularyTerm().getControlledVocabulary().getDatasource();
            } else if (synonym.getDatasource() != null) {
                datasource = synonym.getDatasource();
            }

            if (datasource != null && datasource.isInternal()) {
                switch (synonym.getStatus()) {
                case PENDING:
                    return curator.equals(synonym.getCreatedBy()) ? synonym : null;
                case APPROVED:
                    return BigDecimal.ONE.equals(curator.getEntityApprovalWeight(Entity.TERM_SYNONYM)) ? synonym
                            : null;
                }
            }
            return null;
        }
    };
    deleteColumn.setCellStyleNames("icon-action");
    table.addColumn(deleteColumn, SafeHtmlUtils.fromSafeConstant("&nbsp;"));
}

From source file:com.pronoiahealth.olhie.client.pages.admin.widgets.AuthorRequestWidget.java

License:Open Source License

/**
 * Build grid// ww w. j a v  a  2 s.  c  o  m
 */
@PostConstruct
protected void postConstruct() {

    // Data Provider
    dataProvider = new ListDataProvider<RegistrationForm>();

    // Grid configuration
    authorReqGrid = new CellTable<RegistrationForm>(10, KEY_PROVIDER);
    authorReqGrid.setWidth("100%");
    authorReqGrid.setAutoHeaderRefreshDisabled(true);
    authorReqGrid.setAutoFooterRefreshDisabled(true);
    authorReqGrid.setEmptyTableWidget(new Label("Nothing to show"));
    authorReqGrid.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);
    authorReqGrid.setWidth("100%", true);

    // Selection Model
    final SelectionModel<RegistrationForm> selectionModel = new SingleSelectionModel<RegistrationForm>(
            KEY_PROVIDER);
    authorReqGrid.setSelectionModel(selectionModel,
            DefaultSelectionEventManager.<RegistrationForm>createCheckboxManager());

    // Init columns
    // Id
    TextColumn<RegistrationForm> idColumn = new TextColumn<RegistrationForm>() {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getId();
        }
    };
    idColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(idColumn, "ID");
    authorReqGrid.setColumnWidth(idColumn, 5, Unit.PCT);

    // First Name
    TextColumn<RegistrationForm> firstColumn = new TextColumn<RegistrationForm>() {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getFirstName();
        }
    };
    firstColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(firstColumn, "First");
    authorReqGrid.setColumnWidth(firstColumn, 7, Unit.PCT);

    // Last Name
    TextColumn<RegistrationForm> lastColumn = new TextColumn<RegistrationForm>() {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getLastName();
        }
    };
    lastColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(lastColumn, "Last");
    authorReqGrid.setColumnWidth(lastColumn, 12, Unit.PCT);

    // userId
    TextColumn<RegistrationForm> userIdColumn = new TextColumn<RegistrationForm>() {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getUserId();
        }
    };
    userIdColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(userIdColumn, "UserId");
    authorReqGrid.setColumnWidth(userIdColumn, 10, Unit.PCT);

    // eMail
    TextColumn<RegistrationForm> eMailColumn = new TextColumn<RegistrationForm>() {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getEmail();
        }
    };
    eMailColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(eMailColumn, "eMail");
    authorReqGrid.setColumnWidth(eMailColumn, 15, Unit.PCT);

    // Registration Date
    DateCell dateCell = new DateCell();
    Column<RegistrationForm, Date> dateColumn = new Column<RegistrationForm, Date>(dateCell) {
        @Override
        public Date getValue(RegistrationForm object) {
            return object.getRegDate();
        }
    };
    dateColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(dateColumn, "Reg Date");
    authorReqGrid.setColumnWidth(dateColumn, 17, Unit.PCT);

    // Organization
    TextColumn<RegistrationForm> orgColumn = new TextColumn<RegistrationForm>() {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getOrganization();
        }
    };
    orgColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(orgColumn, "Organization");
    authorReqGrid.setColumnWidth(orgColumn, 15, Unit.PCT);

    // Status
    List<String> statusNames = Arrays.asList(authStatus);
    SelectionCell statusCell = new SelectionCell(statusNames);
    Column<RegistrationForm, String> statusColumn = new Column<RegistrationForm, String>(statusCell) {
        @Override
        public String getValue(RegistrationForm object) {
            return object.getAuthorStatus();
        }
    };
    statusColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left");
    authorReqGrid.addColumn(statusColumn, "Status");

    // Status column updated
    statusColumn.setFieldUpdater(new FieldUpdater<RegistrationForm, String>() {
        @Override
        public void update(int index, RegistrationForm object, String value) {
            object.setAuthorStatus(value);
            dataProvider.refresh();

            // Tell the AdminService about the change
            authorRequestStatusChangeEvent.fire(new AuthorRequestStatusChangeEvent(object.getId(), value));
        }
    });
    authorReqGrid.setColumnWidth(statusColumn, 19, Unit.PCT);

    // Set the dataprovider
    dataProvider.addDataDisplay(authorReqGrid);

    // Pager
    SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class);
    pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true);
    pager.setDisplay(authorReqGrid);
    pager.setPageSize(10);
    pager.getElement().setAttribute("style", "margin: auto;");

    // Redraw the grid
    authorReqGrid.redraw();
    authorReqGrid.setVisible(true);

    // Add to container
    authorRequestTbl.add(authorReqGrid);
    pagerContainer.add(pager);
}