Exemplo n.º 1
0
  @Inject
  public ToolVolumeListEditor(
      ToolVolumeProperties toolVolumeProperties, ToolAdminView.ToolAdminViewAppearance appearance) {
    this.appearance = appearance;
    listStore =
        new ListStore<>(
            new ModelKeyProvider<ToolVolume>() {
              @Override
              public String getKey(ToolVolume item) {
                return getVolumeTag(item);
              }
            });
    listStoreEditor = new ListStoreEditor<>(listStore);
    listStore.setAutoCommit(true);

    ColumnConfig<ToolVolume, String> hostPath =
        new ColumnConfig<>(
            toolVolumeProperties.hostPath(),
            appearance.containerVolumesHostPathWidth(),
            appearance.containerVolumesHostPathLabel());
    ColumnConfig<ToolVolume, String> containerPath =
        new ColumnConfig<>(
            toolVolumeProperties.containerPath(),
            appearance.containerVolumesContainerPathWidth(),
            appearance.containerVolumesContainerPathLabel());

    List<ColumnConfig<ToolVolume, ?>> columns = new ArrayList<>();
    columns.add(hostPath);
    columns.add(containerPath);
    ColumnModel<ToolVolume> cm = new ColumnModel<>(columns);

    grid = new Grid<>(listStore, cm);
    grid.setHeight(100);

    editing = new GridRowEditing<>(grid);
    enableGridEditing(hostPath, containerPath);
    editing.addCancelEditHandler(getCancelHandler());
    ((AbstractGridEditing<ToolVolume>) editing).setClicksToEdit(ClicksToEdit.TWO);

    initWidget(grid);
  }