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

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

Introduction

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

Prototype

public Column(Cell<C> cell) 

Source Link

Document

Construct a new Column with a given Cell .

Usage

From source file:com.jitlogic.zico.client.views.traces.TraceRecordSearchDialog.java

License:Open Source License

private void createResultsGrid() {

    resultsGrid = new DataGrid<TraceRecordInfo>(1024 * 1024, ZicoDataGridResources.INSTANCE, KEY_PROVIDER);
    selectionModel = new SingleSelectionModel<TraceRecordInfo>(KEY_PROVIDER);
    resultsGrid.setSelectionModel(selectionModel);

    Column<TraceRecordInfo, TraceRecordInfo> colExpander = new IdentityColumn<TraceRecordInfo>(
            DETAIL_EXPANDER_CELL);//from  w w  w .j  a  va  2 s .c  o m
    resultsGrid.addColumn(colExpander, "#");
    resultsGrid.setColumnWidth(colExpander, 32, Style.Unit.PX);

    Column<TraceRecordInfo, TraceRecordInfo> colMethod = new IdentityColumn<TraceRecordInfo>(METHOD_CELL);
    resultsGrid.addColumn(colMethod, new ResizableHeader<TraceRecordInfo>("Method", resultsGrid, colMethod));
    resultsGrid.setColumnWidth(colMethod, 100, Style.Unit.PCT);

    Column<TraceRecordInfo, String> colTime = new Column<TraceRecordInfo, String>(new TextCell()) {
        @Override
        public String getValue(TraceRecordInfo rec) {
            return ClientUtil.formatDuration(rec.getTime());
        }
    };
    resultsGrid.addColumn(colTime, new ResizableHeader<TraceRecordInfo>("Time", resultsGrid, colTime));
    resultsGrid.setColumnWidth(colTime, 50, Style.Unit.PX);

    Column<TraceRecordInfo, String> colCalls = new Column<TraceRecordInfo, String>(new TextCell()) {
        @Override
        public String getValue(TraceRecordInfo rec) {
            return "" + rec.getCalls();
        }
    };
    resultsGrid.addColumn(colCalls, new ResizableHeader<TraceRecordInfo>("Calls", resultsGrid, colCalls));
    resultsGrid.setColumnWidth(colCalls, 50, Style.Unit.PX);

    Column<TraceRecordInfo, String> colErrors = new Column<TraceRecordInfo, String>(new TextCell()) {
        @Override
        public String getValue(TraceRecordInfo rec) {
            return "" + rec.getErrors();
        }
    };
    resultsGrid.addColumn(colErrors, new ResizableHeader<TraceRecordInfo>("Errors", resultsGrid, colErrors));
    resultsGrid.setColumnWidth(colErrors, 50, Style.Unit.PX);

    Column<TraceRecordInfo, TraceRecordInfo> colPct = new IdentityColumn<TraceRecordInfo>(METHOD_PCT_CELL);
    resultsGrid.addColumn(colPct, new ResizableHeader<TraceRecordInfo>("Pct", resultsGrid, colPct));
    resultsGrid.setColumnWidth(colPct, 50, Style.Unit.PX);

    rowBuilder = new TraceCallTableBuilder(resultsGrid, expandedDetails);
    resultsGrid.setTableBuilder(rowBuilder);

    resultsGrid.setSkipRowHoverStyleUpdate(true);
    resultsGrid.setSkipRowHoverFloatElementCheck(true);
    resultsGrid.setSkipRowHoverCheck(true);
    resultsGrid.setKeyboardSelectionPolicy(HasKeyboardSelectionPolicy.KeyboardSelectionPolicy.DISABLED);

    resultsGrid.addCellPreviewHandler(new CellPreviewEvent.Handler<TraceRecordInfo>() {
        @Override
        public void onCellPreview(CellPreviewEvent<TraceRecordInfo> event) {
            NativeEvent nev = event.getNativeEvent();
            String eventType = nev.getType();
            if ((BrowserEvents.KEYDOWN.equals(eventType) && nev.getKeyCode() == KeyCodes.KEY_ENTER)
                    || BrowserEvents.DBLCLICK.equals(nev.getType())) {
                doGoTo();
            }
            //if (BrowserEvents.CONTEXTMENU.equals(eventType)) {
            //    selection.setSelected(event.getValue(), true);
            //    contextMenu.showAt(event.getNativeEvent().getClientX(), event.getNativeEvent().getClientY());
            //}
        }
    });

    resultsGrid.addDomHandler(new DoubleClickHandler() {
        @Override
        public void onDoubleClick(DoubleClickEvent event) {
            event.preventDefault();
        }
    }, DoubleClickEvent.getType());
    resultsGrid.addDomHandler(new ContextMenuHandler() {
        @Override
        public void onContextMenu(ContextMenuEvent event) {
            event.preventDefault();
        }
    }, ContextMenuEvent.getType());

    resultsStore = new ListDataProvider<TraceRecordInfo>();
    resultsStore.addDataDisplay(resultsGrid);
}

From source file:com.jitlogic.zico.widgets.demo.client.views.UserManagementPanel.java

License:Open Source License

private void createUserGrid() {
    userGrid = new DataGrid<UserInfo>(1024 * 1024, ZicoDataGridResources.INSTANCE, KEY_PROVIDER);
    selectionModel = new SingleSelectionModel<UserInfo>(KEY_PROVIDER);
    userGrid.setSelectionModel(selectionModel);

    Column<UserInfo, String> colUserId = new Column<UserInfo, String>(new TextCell()) {
        @Override/*from   w w w  .j  a  va  2 s .  c  o m*/
        public String getValue(UserInfo object) {
            return "" + object.getId();
        }
    };
    userGrid.addColumn(colUserId, new ResizableHeader<UserInfo>("#", userGrid, colUserId));
    userGrid.setColumnWidth(colUserId, 35, Style.Unit.PX);

    final EditTextCell cellUsername = new EditTextCell();
    Column<UserInfo, String> colUsername = new Column<UserInfo, String>(cellUsername) {
        @Override
        public String getValue(UserInfo user) {
            return user.getUsername();
        }
    };
    colUsername.setFieldUpdater(new FieldUpdater<UserInfo, String>() {
        public void update(int index, UserInfo user, String value) {
            markChange(user);
            user.setUsername(value);
            cellUsername.clearViewData(user.getId());
        }
    });
    userGrid.addColumn(colUsername, new ResizableHeader<UserInfo>("Username", userGrid, colUsername));
    userGrid.setColumnWidth(colUsername, 128, Style.Unit.PX);

    Map<String, Integer> roles = ZicoWidgets.map("VIEWER", 1, "ADMIN", 2);

    final SelectCell<String, Integer> cellRoles = new SelectCell<String, Integer>(roles);
    Column<UserInfo, Integer> colUserRole = new Column<UserInfo, Integer>(cellRoles) {
        @Override
        public Integer getValue(UserInfo user) {
            return user.getRole();
        }
    };
    colUserRole.setFieldUpdater(new FieldUpdater<UserInfo, Integer>() {
        public void update(int index, UserInfo user, Integer value) {
            markChange(user);
            user.setRole(value);
            cellRoles.clearViewData(user.getId());
        }
    });
    userGrid.addColumn(colUserRole, new ResizableHeader<UserInfo>("Role", userGrid, colUserRole));
    userGrid.setColumnWidth(colUserRole, 128, Style.Unit.PX);

    final EditTextCell cellFullname = new EditTextCell();
    Column<UserInfo, String> colFullname = new Column<UserInfo, String>(cellFullname) {
        @Override
        public String getValue(UserInfo user) {
            return user.getFullname();
        }
    };
    colFullname.setFieldUpdater(new FieldUpdater<UserInfo, String>() {
        public void update(int index, UserInfo user, String value) {
            markChange(user);
            user.setFullname(value);
            cellFullname.clearViewData(user.getId());
        }
    });
    userGrid.addColumn(colFullname, new ResizableHeader<UserInfo>("Full Name", userGrid, colFullname));
    userGrid.setColumnWidth(colFullname, 256, Style.Unit.PX);

    final EditTextCell cellComment = new EditTextCell();
    Column<UserInfo, String> colComment = new Column<UserInfo, String>(cellComment) {
        @Override
        public String getValue(UserInfo user) {
            return user.getComment();
        }
    };
    colComment.setFieldUpdater(new FieldUpdater<UserInfo, String>() {
        public void update(int index, UserInfo user, String value) {
            markChange(user);
            user.setComment(value);
            cellComment.clearViewData(user.getId());
        }
    });
    userGrid.addColumn(colComment, "Comment");
    userGrid.setColumnWidth(colComment, 100, Style.Unit.PC);

    userStore = new ListDataProvider<UserInfo>(KEY_PROVIDER);
    userStore.addDataDisplay(userGrid);

    userGrid.addCellPreviewHandler(new CellPreviewEvent.Handler<UserInfo>() {
        public void onCellPreview(CellPreviewEvent<UserInfo> event) {
            NativeEvent nev = event.getNativeEvent();
            String eventType = nev.getType();
            if ((BrowserEvents.KEYDOWN.equals(eventType) && nev.getKeyCode() == KeyCodes.KEY_ENTER)
                    || BrowserEvents.DBLCLICK.equals(nev.getType())) {
                selectionModel.setSelected(event.getValue(), true);
                editUser(null);
            }
            if (BrowserEvents.CONTEXTMENU.equals(eventType)) {
                selectionModel.setSelected(event.getValue(), true);
                if (event.getValue() != null) {
                    contextMenu.setPopupPosition(event.getNativeEvent().getClientX(),
                            event.getNativeEvent().getClientY());
                    contextMenu.show();
                }
            }

        }
    });

    userGrid.addDomHandler(new DoubleClickHandler() {
        public void onDoubleClick(DoubleClickEvent event) {
            event.preventDefault();
        }
    }, DoubleClickEvent.getType());
    userGrid.addDomHandler(new ContextMenuHandler() {
        public void onContextMenu(ContextMenuEvent event) {
            event.preventDefault();
        }
    }, ContextMenuEvent.getType());

}

From source file:com.lofidewanto.demo.client.ui.person.PersonPanelView.java

License:Apache License

private void initTableColumns(DataGrid<PersonDto> dataGrid) {
    dataGrid.setWidth("100%");
    dataGrid.setHeight("300px");
    dataGrid.setAutoHeaderRefreshDisabled(true);
    // Nick name.
    Column<PersonDto, String> nicknameColumn = new Column<PersonDto, String>(new TextCell()) {
        @Override//from  w  w w. java2 s  .c om
        public String getValue(PersonDto object) {
            return object.getNickname();
        }
    };
    dataGrid.addColumn(nicknameColumn, "Nickname");
    dataGrid.setColumnWidth(nicknameColumn, 40, Style.Unit.PCT);

    // Nick name.
    Column<PersonDto, String> nameColumn = new Column<PersonDto, String>(new TextCell()) {
        @Override
        public String getValue(PersonDto object) {
            return object.getName();
        }
    };
    dataGrid.addColumn(nameColumn, "Name");
    dataGrid.setColumnWidth(nameColumn, 40, Style.Unit.PCT);

    // Retired
    Column<PersonDto, Boolean> isRetiredColumn = new Column<PersonDto, Boolean>(new CheckboxCell(true, false)) {
        @Override
        public Boolean getValue(PersonDto object) {
            if (object.isInRetirement() == null) {
                return false;
            } else {
                return object.isInRetirement();
            }
        }
    };
    dataGrid.addColumn(isRetiredColumn, "Retired");
    dataGrid.setColumnWidth(isRetiredColumn, 20, Style.Unit.PCT);
}

From source file:com.mquick.client.application.home.HomePageView.java

License:Apache License

private void initCellTable() {
    TextColumn<ClientEntity> id_Column = new TextColumn<ClientEntity>() {
        @Override/* ww  w.  j  a v  a  2  s. c o  m*/
        public String getValue(ClientEntity object) {
            if (object == null)
                return " ";
            return object.getMaigcCode() + "";
        }
    };
    expressportals.addColumn(id_Column, "ID");

    TextColumn<ClientEntity> name_Column = new TextColumn<ClientEntity>() {
        @Override
        public String getValue(ClientEntity object) {
            if (object == null)
                return " ";
            return object.getName();
        }
    };
    expressportals.addColumn(name_Column, "NAME");

    ButtonCell buttonCell = new ButtonCell();

    Column<ClientEntity, String> action_Column = new Column<ClientEntity, String>(buttonCell) {
        @Override
        public String getValue(ClientEntity object) {
            // The value to display in the button.
            return "unimpl"; //object.getName();
        }
    };

    action_Column.setFieldUpdater(new FieldUpdater<ClientEntity, String>() {

        @Override
        public void update(int index, ClientEntity object, String value) {
            getUiHandlers().pushTerminal(index, object, value);
        }
    });

    expressportals.addColumn(action_Column, "ACTION");

}

From source file:com.mvp4g.example.client.views.desktop.list.MailListView.java

License:Apache License

/**
 * Add a column with a header./*from ww w.j a v  a  2 s.co  m*/
 *
 * @param <C>        the cell type
 * @param cell       the cell used to render the column
 * @param headerText the header string
 * @param getter     the value getter for the cell
 */
private <C> Column<MailItem, C> addColumn(com.google.gwt.cell.client.Cell<C> cell, String headerText,
        final GetValue<C> getter, FieldUpdater<MailItem, C> fieldUpdater) {
    Column<MailItem, C> column = new Column<MailItem, C>(cell) {
        @Override
        public C getValue(MailItem object) {
            return getter.getValue(object);
        }
    };
    column.setFieldUpdater(fieldUpdater);
    list.addColumn(column, headerText);
    return column;
}

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/*  ww  w  . j ava 2 s. 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() {
    /*//ww  w.  j  a  v a  2  s .c om
     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//w w  w  .j  av  a 2  s  .co m
        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.ReplaceRelationshipPopup.java

License:Apache License

private void setupTable() {
    Column<Relationship, Boolean> checkColumn = new Column<Relationship, Boolean>(
            new CheckboxCell(true, false)) {
        @Override/*ww w .j  a  v  a 2s.c  om*/
        public Boolean getValue(Relationship object) {
            return selection.isSelected(object);
        }
    };

    table.addStyleName("gwt-CellTable");
    table.addStyleName("decorator-panel");
    table.setWidth("100%");
    table.setKeyboardPagingPolicy(KeyboardPagingPolicy.CURRENT_PAGE);
    table.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);

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

    table.addColumn(new RelationshipColumn(), "Relationship");
    table.addColumn(new RelatedTermColumn(), "Related Term");
    table.addColumn(new StatusColumn(), "Status");

    table.setSelectionModel(selection, DefaultSelectionEventManager.<Relationship>createCheckboxManager(0));

}

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//from w ww.ja v a 2  s.c  om
        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;"));
}