예제 #1
0
  public void initColumns() {
    cellTable.addColumn(
        new TextColumn<Photo>() {
          @Override
          public String getValue(Photo object) {
            return object.getTitle();
          }
        },
        "Title");
    cellTable.addColumn(
        new TextColumn<Photo>() {
          @Override
          public String getValue(Photo object) {
            return object.getOwnerName();
          }
        },
        "Owner name");
    cellTable.addColumn(
        new TextColumn<Photo>() {
          @Override
          public String getValue(Photo object) {
            return object.getViews();
          }
        },
        "Views");
    cellTable.addColumn(
        new TextColumn<Photo>() {
          @Override
          public String getValue(Photo object) {
            return DateTimeFormat.getFormat("dd-MM-yyyy HH:mm").format(object.getDateupload());
          }
        },
        "Date Upload");
    cellTable.addColumn(
        new TextColumn<Photo>() {
          @Override
          public String getValue(Photo object) {
            return DateTimeFormat.getFormat("dd-MM-yyyy HH:mm").format(object.getLastupdate());
          }
        },
        "Last Update");
    cellTable.addColumn(
        new Column<Photo, String>(new ImageCell(75, 75)) {
          @Override
          public String getValue(Photo object) {
            return object.getUrl();
          }
        },
        "Photo");

    cellTable.addCellPreviewHandler(
        new CellPreviewEvent.Handler<Photo>() {
          @Override
          public void onCellPreview(CellPreviewEvent<Photo> event) {
            if (event.getNativeEvent().getType().equals("mousedown")) {
              Photo photo = event.getValue();
              AppContext.getInstance().getEventBus().fireEvent(new ShowPhotoDialog(photo));
            }
          }
        });
  }