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:org.jboss.as.console.client.domain.groups.deployment.ServerGroupDeploymentPanel.java

License:Open Source License

@SuppressWarnings("unchecked")
private Widget initUI() {
    pagedView = new PagedView();

    ProvidesKey<ServerGroupRecord> keyProvider = new ProvidesKey<ServerGroupRecord>() {
        @Override//from www. j  ava  2  s.c  om
        public Object getKey(ServerGroupRecord serverGroupRecord) {
            return serverGroupRecord.getName() + "_" + serverGroupRecord.getProfileName();
        }
    };
    DefaultCellTable<ServerGroupRecord> serverGroups = new DefaultCellTable<ServerGroupRecord>(8, keyProvider);
    serverGroupData = new ListDataProvider<ServerGroupRecord>();
    this.serverGroupData.addDataDisplay(serverGroups);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(serverGroups);

    selectionModel = new SingleSelectionModel<ServerGroupRecord>(keyProvider);
    serverGroups.setSelectionModel(selectionModel);

    Column nameColumn = new TextColumn<ServerGroupRecord>() {
        @Override
        public String getValue(ServerGroupRecord serverGroup) {
            return serverGroup.getName();
        }
    };
    Column profileColumn = new TextColumn<ServerGroupRecord>() {
        @Override
        public String getValue(ServerGroupRecord serverGroup) {
            return serverGroup.getProfileName();
        }
    };
    serverGroups.addColumn(nameColumn, Console.CONSTANTS.common_label_serverGroup());
    serverGroups.addColumn(profileColumn, Console.CONSTANTS.common_label_profile());

    ActionCell.Delegate<ServerGroupRecord> actionDelegate = new ActionCell.Delegate<ServerGroupRecord>() {
        @Override
        public void execute(ServerGroupRecord selection) {
            groupDeploymentBrowser.updateGroup(selection, contentRepository.getDeployments(selection));
            pagedView.showPage(1);
        }
    };
    Column<ServerGroupRecord, ServerGroupRecord> option = new Column<ServerGroupRecord, ServerGroupRecord>(
            new ViewLinkCell<ServerGroupRecord>(Console.CONSTANTS.common_label_view(), actionDelegate)) {
        @Override
        public ServerGroupRecord getValue(ServerGroupRecord manager) {
            return manager;
        }
    };
    serverGroups.addColumn(option, Console.CONSTANTS.common_label_option());

    VerticalPanel wrapper = new VerticalPanel();
    wrapper.add(serverGroups.asWidget());
    wrapper.add(pager);
    SimpleLayout overviewPanel = new SimpleLayout().setPlain(true).setHeadline("Server Groups")
            .setDescription("Please chose a server group to assign deployment contents.")
            .addContent("Available Groups", wrapper);

    groupDeploymentBrowser = new ServerGroupDeploymentBrowser(presenter, deploymentStore, hostInfoStore);
    pagedView.addPage(Console.CONSTANTS.common_label_back(), overviewPanel.build());
    pagedView.addPage("Group Deployments", groupDeploymentBrowser.asWidget());
    pagedView.showPage(0);

    LayoutPanel layout = new LayoutPanel();
    layout.add(pagedView.asWidget());
    return layout;
}

From source file:org.jboss.as.console.client.domain.groups.deployment.ServerGroupSelector.java

License:Open Source License

private Widget makeSelectionTable(ListDataProvider<ServerGroupSelection> dataProvider) {
    VerticalPanel vpanel = new VerticalPanel();
    vpanel.setStyleName("fill-layout-width");
    vpanel.getElement().setAttribute("style", "padding-top:5px;");

    DefaultCellTable<ServerGroupSelection> selectionTable = new DefaultCellTable<ServerGroupSelection>(5);
    dataProvider.addDataDisplay(selectionTable);

    selectionModel = new MultiSelectionModel<ServerGroupSelection>(new ProvidesKey<ServerGroupSelection>() {
        @Override/*from   w w w.  j  ava2s  . c o m*/
        public Object getKey(ServerGroupSelection serverGroupSelection) {
            return serverGroupSelection.getName();
        }
    });
    selectionTable.setSelectionModel(selectionModel);

    Column nameColumn = new TextColumn<ServerGroupSelection>() {
        @Override
        public String getValue(ServerGroupSelection serverGroup) {
            return serverGroup.getName();
        }
    };

    Column profileColumn = new TextColumn<ServerGroupSelection>() {
        @Override
        public String getValue(ServerGroupSelection serverGroup) {
            return serverGroup.getProfileName();
        }
    };

    Column<ServerGroupSelection, Boolean> selectedColumn = new Column<ServerGroupSelection, Boolean>(
            new CheckboxCell()) {

        @Override
        public Boolean getValue(ServerGroupSelection object) {
            return selectionModel.isSelected(object);
        }

    };

    selectionTable.addColumn(selectedColumn, "Assign");
    selectionTable.addColumn(nameColumn, Console.CONSTANTS.common_label_serverGroup());
    selectionTable.addColumn(profileColumn, Console.CONSTANTS.common_label_profile());

    selectionTable.setWidth("100%", true);
    selectionTable.setColumnWidth(selectedColumn, 10, Style.Unit.PCT);
    selectionTable.setColumnWidth(nameColumn, 40, Style.Unit.PCT);
    selectionTable.setColumnWidth(profileColumn, 40, Style.Unit.PCT);

    vpanel.add(selectionTable);

    DefaultPager pager = new DefaultPager();
    pager.setDisplay(selectionTable);
    vpanel.add(pager);

    errorMessages = new HTML("Please select a group!");
    errorMessages.setStyleName("error-panel");
    errorMessages.setVisible(false);
    vpanel.add(errorMessages);

    return vpanel;
}

From source file:org.jboss.as.console.client.domain.groups.ServerGroupView.java

License:Open Source License

@Override
public Widget createWidget() {

    final ToolStrip toolStrip = new ToolStrip();

    ToolButton newServerGroupBtn = new ToolButton(Console.CONSTANTS.common_label_add(), new ClickHandler() {
        @Override/*w  w  w .  j ava2 s  .  c  om*/
        public void onClick(ClickEvent event) {
            presenter.launchNewGroupDialoge();
        }
    });
    newServerGroupBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_serverGroupsView());
    toolStrip.addToolButtonRight(newServerGroupBtn);

    ToolButton deleteBtn = new ToolButton(Console.CONSTANTS.common_label_delete());
    deleteBtn.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {
            final ServerGroupRecord serverGroup = getSelectionModel().getSelectedObject();
            Feedback.confirm(Console.MESSAGES.deleteServerGroup(),
                    Console.MESSAGES.deleteServerGroupConfirm(serverGroup.getName()),
                    new Feedback.ConfirmationHandler() {
                        @Override
                        public void onConfirmation(boolean isConfirmed) {
                            if (isConfirmed)
                                presenter.onDeleteGroup(serverGroup);
                        }
                    });
        }
    });

    deleteBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_delete_serverGroupsView());
    toolStrip.addToolButtonRight(deleteBtn);

    ToolButton copyBtn = new ToolButton(Console.CONSTANTS.common_label_copy());
    copyBtn.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {
            final ServerGroupRecord serverGroup = getSelectionModel().getSelectedObject();
            presenter.launchCopyWizard(serverGroup);
        }
    });

    toolStrip.addToolButtonRight(copyBtn);

    // ---------------------------------------------

    serverGroupTable = new DefaultCellTable<ServerGroupRecord>(8, new ProvidesKey<ServerGroupRecord>() {
        @Override
        public Object getKey(ServerGroupRecord item) {
            return item.getName() + "_" + item.getProfileName();
        }
    });
    serverGroupProvider = new ListDataProvider<ServerGroupRecord>();
    serverGroupProvider.addDataDisplay(serverGroupTable);

    // Create columns
    Column<ServerGroupRecord, String> nameColumn = new Column<ServerGroupRecord, String>(new TextCell()) {
        @Override
        public String getValue(ServerGroupRecord object) {
            return object.getName();
        }
    };

    Column<ServerGroupRecord, String> profileColumn = new Column<ServerGroupRecord, String>(new TextCell()) {
        @Override
        public String getValue(ServerGroupRecord object) {
            return object.getProfileName();
        }
    };

    serverGroupTable.addColumn(nameColumn, "Group Name");
    serverGroupTable.addColumn(profileColumn, "Profile");

    // ---------------------------------------------------

    details = new ServerGroupDetails(presenter);

    // ---------------------------------------------------

    jvmEditor = new JvmEditor(presenter, true, true);
    jvmEditor.setAddressCallback(new FormHelpPanel.AddressCallback() {
        @Override
        public ModelNode getAddress() {
            ModelNode address = new ModelNode();
            address.add("server-group", "*");
            address.add("jvm", "*");
            return address;
        }
    });

    propertyEditor = new PropertyEditor(presenter);

    // --------------------

    MultipleToOneLayout layout = new MultipleToOneLayout()
            .setTitle(Console.CONSTANTS.common_label_serverGroupConfigurations()).setHeadline("Server Groups")
            .setDescription(Console.CONSTANTS.common_serverGroups_desc())
            .setMaster(Console.MESSAGES.available(Console.CONSTANTS.common_label_serverGroupConfigurations()),
                    serverGroupTable)
            .setMasterTools(toolStrip.asWidget()).addDetail("Attributes", details.asWidget())
            .addDetail(Console.CONSTANTS.common_label_virtualMachine(), jvmEditor.asWidget())
            .addDetail(Console.CONSTANTS.common_label_systemProperties(), propertyEditor.asWidget());

    details.bind(serverGroupTable);

    serverGroupTable.getSelectionModel().addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        @Override
        public void onSelectionChange(SelectionChangeEvent selectionChangeEvent) {
            ServerGroupRecord group = getSelectionModel().getSelectedObject();
            presenter.loadJVMConfiguration(group);
            presenter.loadProperties(group);
        }
    });

    propertyEditor.setAllowEditProps(false);

    return layout.build();
}

From source file:org.jboss.as.console.client.domain.hosts.ServerConfigView.java

License:Open Source License

@Override
public Widget createWidget() {

    final ToolStrip toolStrip = new ToolStrip();

    ToolButton addBtn = new ToolButton(Console.CONSTANTS.common_label_add(), new ClickHandler() {
        @Override/*  w ww .j a  v a2  s  .co  m*/
        public void onClick(ClickEvent event) {
            presenter.launchNewConfigDialoge();
        }
    });
    addBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_serverConfigView());
    toolStrip.addToolButtonRight(addBtn);

    ToolButton deleteBtn = new ToolButton(Console.CONSTANTS.common_label_delete());
    deleteBtn.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {

            final Server server = getSelectionModel().getSelectedObject();

            Feedback.confirm(Console.MESSAGES.deleteServerConfig(),
                    Console.MESSAGES.deleteServerConfigConfirm(server.getName()),
                    new Feedback.ConfirmationHandler() {
                        @Override
                        public void onConfirmation(boolean isConfirmed) {
                            if (isConfirmed)
                                presenter.tryDelete(server);
                        }
                    });
        }
    });

    deleteBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_delete_serverConfigView());
    toolStrip.addToolButtonRight(deleteBtn);

    ToolButton copyBtn = new ToolButton(Console.CONSTANTS.common_label_copy());
    copyBtn.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {

            final Server server = getSelectionModel().getSelectedObject();
            presenter.onLaunchCopyWizard(server);
        }
    });

    toolStrip.addToolButtonRight(copyBtn);

    // ------------------------------------------------------

    // Create columns
    Column<Server, String> nameColumn = new Column<Server, String>(new TextCell()) {
        @Override
        public String getValue(Server object) {
            return object.getName();
        }
    };

    Column<Server, String> groupColumn = new Column<Server, String>(new TextCell()) {
        @Override
        public String getValue(Server object) {
            return object.getGroup();
        }
    };

    serverConfigTable.addColumn(nameColumn, "Configuration Name");
    serverConfigTable.addColumn(groupColumn, Console.CONSTANTS.common_label_serverGroup());

    // ---------------------

    details = new ServerConfigDetails(presenter);

    // jvm editor
    jvmEditor = new JvmEditor(presenter, true, true);
    jvmEditor.setAddressCallback(new FormHelpPanel.AddressCallback() {
        @Override
        public ModelNode getAddress() {

            ModelNode address = new ModelNode();
            address.add("host", presenter.getSelectedHost());
            address.add("server-config", "*");
            address.add("jvm", "*");
            return address;
        }
    });

    propertyEditor = new PropertyEditor(presenter);

    portsView = new PortsView();

    // --------------------

    MultipleToOneLayout layout = new MultipleToOneLayout()
            .setTitle(Console.CONSTANTS.common_label_serverGroupConfigurations())
            .setHeadline("Server Configurations").setDescription(Console.CONSTANTS.common_serverConfig_desc())
            .setMaster(Console.MESSAGES.available(Console.CONSTANTS.common_label_serverConfigs()),
                    serverConfigTable)
            .setMasterTools(toolStrip.asWidget()).addDetail("Attributes", details.asWidget())
            .addDetail(Console.CONSTANTS.common_label_virtualMachine(), jvmEditor.asWidget())
            .addDetail(Console.CONSTANTS.common_label_systemProperties(), propertyEditor.asWidget());

    details.bind(serverConfigTable);

    serverConfigTable.getSelectionModel().addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        @Override
        public void onSelectionChange(SelectionChangeEvent selectionChangeEvent) {
            Server server = getSelectionModel().getSelectedObject();
            presenter.loadJVMConfiguration(server);
            presenter.loadProperties(server);
            presenter.loadPorts(server);
        }
    });

    propertyEditor.setAllowEditProps(false);

    return layout.build();
}

From source file:org.jboss.as.console.client.domain.hosts.ServerInstancesView.java

License:Open Source License

@Override
public Widget createWidget() {

    LayoutPanel layout = new LayoutPanel();

    FakeTabPanel titleBar = new FakeTabPanel(Console.CONSTANTS.common_label_serverInstances());
    layout.add(titleBar);//  w w  w  .ja  v a  2  s.co m

    VerticalPanel vpanel = new VerticalPanel();
    vpanel.setStyleName("rhs-content-panel");

    // ----------------------------------------------------------------------

    nameLabel = new ContentHeaderLabel(Console.CONSTANTS.common_label_runtimeStatus());

    vpanel.add(nameLabel);

    vpanel.add(new ContentDescription(
            "Server instances represent the server runtime state. This includes the virtual machine status, as well as deployments and subsystem specific state (i.e. datasource pool sizes)."));

    // ----------------------------------------------------------------------

    HorizontalPanel tableOptions = new HorizontalPanel();
    tableOptions.getElement().setAttribute("cellpadding", "2px");

    groupFilter = new ComboBox();
    groupFilter.addValueChangeHandler(new ValueChangeHandler<String>() {
        @Override
        public void onValueChange(ValueChangeEvent<String> event) {
            presenter.onFilterByGroup(event.getValue());
        }
    });

    Widget typeFilterWidget = groupFilter.asWidget();
    typeFilterWidget.getElement().setAttribute("width", "200px;");

    tableOptions.add(new Label(Console.CONSTANTS.common_label_serverGroup() + ":"));
    tableOptions.add(typeFilterWidget);

    tableOptions.getElement().setAttribute("style", "float:right;");

    //TODO: Fixme vpanel.add(tableOptions);

    // ----------------------------------------------------------------------

    instanceTable = new DefaultCellTable<ServerInstance>(10);
    instanceProvider = new ListDataProvider<ServerInstance>();
    instanceProvider.addDataDisplay(instanceTable);

    // Create columns
    Column<ServerInstance, String> nameColumn = new Column<ServerInstance, String>(new TextCell()) {
        @Override
        public String getValue(ServerInstance object) {
            return object.getName();
        }
    };

    Column<ServerInstance, String> groupColumn = new Column<ServerInstance, String>(new TextCell()) {
        @Override
        public String getValue(ServerInstance object) {
            return object.getGroup();
        }
    };

    Column<ServerInstance, ImageResource> statusColumn = new Column<ServerInstance, ImageResource>(
            new ImageResourceCell()) {
        @Override
        public ImageResource getValue(ServerInstance instance) {

            ImageResource res = null;

            if (instance.isRunning())
                res = Icons.INSTANCE.statusGreen_small();
            else
                res = Icons.INSTANCE.statusRed_small();

            return res;
        }
    };

    instanceTable.addColumn(nameColumn, Console.CONSTANTS.common_label_server());
    instanceTable.addColumn(groupColumn, Console.CONSTANTS.common_label_serverGroup());
    instanceTable.addColumn(statusColumn, Console.CONSTANTS.common_label_status());
    vpanel.add(instanceTable);

    DefaultPager pager = new DefaultPager();
    pager.setDisplay(instanceTable);
    vpanel.add(pager);

    // scroll enabled
    ScrollPanel scroll = new ScrollPanel();
    scroll.add(vpanel);

    layout.add(scroll);

    layout.setWidgetTopHeight(titleBar, 0, Style.Unit.PX, 40, Style.Unit.PX);
    layout.setWidgetTopHeight(scroll, 28, Style.Unit.PX, 100, Style.Unit.PCT);

    // ----------------------------------------------------------------------

    VerticalPanel formPanel = new VerticalPanel();
    formPanel.setStyleName("fill-layout-width");

    final Form<ServerInstance> form = new Form<ServerInstance>(ServerInstance.class);
    form.setNumColumns(2);

    ToolStrip formTools = new ToolStrip();
    startBtn = new ToolButton("Start/Stop", new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {

            String state = form.getEditedEntity().isRunning() ? "stop" : "start";
            Feedback.confirm(Console.CONSTANTS.common_label_serverInstances(),
                    Console.MESSAGES.changeServerStatus(state, form.getEditedEntity().getName()),
                    new Feedback.ConfirmationHandler() {
                        @Override
                        public void onConfirmation(boolean isConfirmed) {
                            if (isConfirmed) {
                                ServerInstance instance = form.getEditedEntity();
                                presenter.startServer(hostName, instance.getServer(), !instance.isRunning());
                            }
                        }
                    });
        }
    });
    formTools.addToolButtonRight(startBtn);
    form.addEditListener(new EditListener<ServerInstance>(

    ) {
        @Override
        public void editingBean(ServerInstance serverInstance) {
            String label = serverInstance.isRunning() ? "Stop" : "Start";
            startBtn.setText(label);
        }
    });

    /* https://issues.jboss.org/browse/AS7-953
    formTools.addToolButtonRight(new ToolButton("Reload", new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
            
        Feedback.confirm("Reload server configuration",
                "Do you want ot reload the server configuration for server "+form.getEditedEntity().getName()+"?",
                new Feedback.ConfirmationHandler()
                {
                    @Override
                    public void onConfirmation(boolean isConfirmed) {
                        if(isConfirmed)
                        {
                            ServerInstance instance = form.getEditedEntity();
                            presenter.reloadServer(instance.getServer());
                        }
                    }
                });
    }
    }));
            
    */
    formPanel.add(formTools);

    // -----

    TextItem nameItem = new TextItem("name", Console.CONSTANTS.common_label_serverInstance());
    TextItem serverItem = new TextItem("server", Console.CONSTANTS.common_label_serverConfig());
    StatusItem enableItem = new StatusItem("running", "Running?");

    form.setFields(nameItem, serverItem, enableItem);
    form.bind(instanceTable);
    form.setEnabled(false);

    Widget formWidget = form.asWidget();
    formWidget.getElement().setAttribute("style", "margin-top:15px;");

    formPanel.add(formWidget);

    // ----------------------------------------------------------
    TabPanel bottomLayout = new TabPanel();
    bottomLayout.addStyleName("default-tabpanel");

    bottomLayout.add(formPanel, "Availability");

    bottomLayout.selectTab(0);

    vpanel.add(new ContentGroupLabel("Status"));

    vpanel.add(bottomLayout);

    return layout;
}

From source file:org.jboss.as.console.client.shared.patching.ui.DomainPanel.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
public Widget asWidget() {

    // table//  ww w .  ja va 2s  . c o m
    ProvidesKey<Patches> keyProvider = new ProvidesKey<Patches>() {
        @Override
        public Object getKey(Patches entry) {
            return entry.getHost();
        }
    };
    DefaultCellTable<Patches> table = new DefaultCellTable<>(8, keyProvider);
    dataProvider.addDataDisplay(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    SingleSelectionModel<Patches> selectionModel = new SingleSelectionModel<>(keyProvider);
    table.setSelectionModel(selectionModel);

    // columns
    Column nameColumn = new TextColumn<Patches>() {
        @Override
        public String getValue(Patches patches) {
            return patches.getHost();
        }
    };
    Column patchInfoColumn = new TextColumn<Patches>() {
        @Override
        public String getValue(Patches patches) {
            StringBuilder builder = new StringBuilder();
            PatchInfo latest = patches.getLatest();
            if (latest != null) {
                builder.append(latest.getId());
            } else {
                builder.append("n/a");
            }
            return builder.toString();
        }
    };
    ActionCell.Delegate<Patches> actionDelegate = new ActionCell.Delegate<Patches>() {
        @Override
        public void execute(Patches patches) {
            circuit.dispatch(new HostSelection(patches.getHost()));
            patchInfoPanel.update(patches);
            pagedView.showPage(1);
        }
    };
    Column<Patches, Patches> option = new Column<Patches, Patches>(
            new ViewLinkCell<Patches>(Console.CONSTANTS.common_label_view(), actionDelegate)) {
        @Override
        public Patches getValue(Patches entry) {
            return entry;
        }
    };
    table.addColumn(nameColumn, Console.CONSTANTS.common_label_host());
    table.addColumn(patchInfoColumn, Console.CONSTANTS.patch_manager_latest());
    table.addColumn(option, Console.CONSTANTS.common_label_option());

    VerticalPanel wrapper = new VerticalPanel();
    wrapper.add(table);
    wrapper.add(pager);
    SimpleLayout overviewPanel = new SimpleLayout().setPlain(true).setHeadline("Patch Management")
            .setDescription(Console.MESSAGES.pleaseChoseanItem())
            .addContent(Console.MESSAGES.available("Groups"), wrapper);

    VerticalPanel patchInfoWrapper = new VerticalPanel();
    patchInfoWrapper.setStyleName("rhs-content-panel");
    patchInfoWrapper.add(patchInfoPanel);

    pagedView.addPage("Hosts", overviewPanel.build());
    pagedView.addPage("Patches", new ScrollPanel(patchInfoWrapper));
    pagedView.showPage(0);

    DefaultTabLayoutPanel tabLayoutPanel = new DefaultTabLayoutPanel(40, Style.Unit.PX);
    tabLayoutPanel.addStyleName("default-tabpanel");
    tabLayoutPanel.add(pagedView.asWidget(), "Patch Management");
    return tabLayoutPanel;
}

From source file:org.jboss.as.console.client.shared.properties.PropertyEditor.java

License:Open Source License

public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    propertyTable = new DefaultCellTable<PropertyRecord>(numRows);
    propertyTable.getElement().setAttribute("style", "margin-top:5px;");
    propertyProvider = new ListDataProvider<PropertyRecord>();
    propertyProvider.addDataDisplay(propertyTable);

    if (!hideButtons) {
        ToolStrip propTools = new ToolStrip();

        addProp = new ToolButton(Console.CONSTANTS.common_label_add());

        addProp.addClickHandler(new ClickHandler() {
            @Override//w  ww  . j ava 2 s  .co m
            public void onClick(ClickEvent event) {
                if (PropertyEditor.this.enabled)
                    presenter.launchNewPropertyDialoge(reference);
                else
                    System.out.println("PropertyEditor is disabled!");
            }
        });
        addProp.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_propertyEditor());
        propTools.addToolButtonRight(addProp);
        panel.add(propTools);
    }

    ColumnSortEvent.ListHandler<PropertyRecord> sortHandler = new ColumnSortEvent.ListHandler<PropertyRecord>(
            propertyProvider.getList());

    // Create columns
    Column<PropertyRecord, String> keyColumn = new Column<PropertyRecord, String>(new DefaultEditTextCell()) {
        {
            setFieldUpdater(new FieldUpdater<PropertyRecord, String>() {

                @Override
                public void update(int index, PropertyRecord object, String value) {
                    object.setKey(value);
                    presenter.onChangeProperty(reference, object);
                }
            });
        }

        @Override
        public String getValue(PropertyRecord object) {
            return object.getKey();
        }

    };
    keyColumn.setSortable(true);
    sortHandler.setComparator(keyColumn, new Comparator<PropertyRecord>() {
        @Override
        public int compare(PropertyRecord o1, PropertyRecord o2) {
            return o1.getKey().compareTo(o2.getKey());
        }
    });

    Column<PropertyRecord, String> valueColumn = new Column<PropertyRecord, String>(new DefaultEditTextCell()) {
        {
            setFieldUpdater(new FieldUpdater<PropertyRecord, String>() {

                @Override
                public void update(int index, PropertyRecord object, String value) {
                    object.setValue(value);
                    presenter.onChangeProperty(reference, object);
                }
            });
        }

        @Override
        public String getValue(PropertyRecord object) {
            return object.getValue();
        }
    };

    /*Column<PropertyRecord, SafeHtml> valueColumn = new Column<PropertyRecord, SafeHtml>(new SafeHtmlCell()) {
    @Override
    public SafeHtml getValue(PropertyRecord object) {
        String val = object.getValue();
        return new SafeHtmlBuilder().appendHtmlConstant("<span title='" +
                new SafeHtmlBuilder().appendEscaped(val).toSafeHtml().asString() + "'>" + val + "</span>").toSafeHtml();
    }
    };*/

    Column<PropertyRecord, String> bootColumn = new Column<PropertyRecord, String>(new DefaultEditTextCell()) {
        {
            setFieldUpdater(new FieldUpdater<PropertyRecord, String>() {

                @Override
                public void update(int index, PropertyRecord object, String value) {
                    object.setBootTime(Boolean.valueOf(value));
                }
            });
        }

        @Override
        public String getValue(PropertyRecord object) {
            return String.valueOf(object.isBootTime());
        }
    };

    Column<PropertyRecord, PropertyRecord> removeCol = new Column<PropertyRecord, PropertyRecord>(
            new TextLinkCell<PropertyRecord>(Console.CONSTANTS.common_label_delete(),
                    new ActionCell.Delegate<PropertyRecord>() {
                        @Override
                        public void execute(final PropertyRecord o) {

                            Feedback.confirm(Console.MESSAGES.removeProperty(),
                                    Console.MESSAGES.removePropertyConfirm(o.getKey()),
                                    new Feedback.ConfirmationHandler() {
                                        @Override
                                        public void onConfirmation(boolean isConfirmed) {
                                            if (isConfirmed)
                                                presenter.onDeleteProperty(reference, o);
                                        }
                                    });

                        }
                    })) {
        @Override
        public PropertyRecord getValue(PropertyRecord propertyRecord) {
            return propertyRecord;
        }
    };

    // Add the columns.
    propertyTable.addColumn(keyColumn, Console.CONSTANTS.common_label_key());
    propertyTable.addColumn(valueColumn, Console.CONSTANTS.common_label_value());

    if (!simpleView)
        propertyTable.addColumn(bootColumn, "Boot-Time?");

    if (!hideButtons)
        propertyTable.addColumn(removeCol, Console.CONSTANTS.common_label_option());

    propertyTable.setColumnWidth(keyColumn, 30, Style.Unit.PCT);
    propertyTable.setColumnWidth(valueColumn, 30, Style.Unit.PCT);

    if (!simpleView)
        propertyTable.setColumnWidth(bootColumn, 20, Style.Unit.PCT);

    if (!hideButtons)
        propertyTable.setColumnWidth(removeCol, 20, Style.Unit.PCT);

    propertyTable.addColumnSortHandler(sortHandler);
    propertyTable.getColumnSortList().push(keyColumn);

    if (helpText != null) {
        StaticHelpPanel helpPanel = new StaticHelpPanel(helpText);
        panel.add(helpPanel.asWidget());
    }

    //propertyTable.setEnabled(false);
    panel.add(propertyTable);

    DefaultPager pager = new DefaultPager();
    pager.setDisplay(propertyTable);

    panel.add(pager);

    return panel;
}

From source file:org.jboss.as.console.client.shared.subsys.activemq.AddressingDetails.java

License:Open Source License

@SuppressWarnings("unchecked")
Widget asWidget() {/*  w w w.jav a  2 s . co m*/
    addrTable = new DefaultCellTable<>(8, ActivemqAddressingPattern::getPattern);
    addrProvider = new ListDataProvider<>();
    addrProvider.addDataDisplay(addrTable);

    Column<ActivemqAddressingPattern, String> patternColumn = new Column<ActivemqAddressingPattern, String>(
            new TextCell()) {
        @Override
        public String getValue(ActivemqAddressingPattern object) {
            return object.getPattern();
        }
    };

    addrTable.addColumn(patternColumn, "Pattern");

    form = new Form<>(ActivemqAddressingPattern.class,
            "{selected.profile}/subsystem=messaging-activemq/server=*/address-setting=*");
    form.setNumColumns(2);
    form.bind(addrTable);

    TextBoxItem dlQ = new TextBoxItem("deadLetterQueue", "Dead Letter Address");
    TextBoxItem expQ = new TextBoxItem("expiryQueue", "Expiry Address");
    NumberBoxItem redelivery = new NumberBoxItem("redeliveryDelay", "Redelivery Delay");
    NumberBoxItem maxDelivery = new NumberBoxItem("maxDelivery", "Max Delivery Attempts", -1,
            Integer.MAX_VALUE);

    form.setFields(dlQ, expQ, redelivery, maxDelivery);

    FormHelpPanel helpPanel = new FormHelpPanel(() -> {
        ModelNode address = Baseadress.get();
        address.add("subsystem", "messaging-activemq");
        address.add("server", presenter.getCurrentServer());
        address.add("address-setting", "*");
        return address;
    }, form);

    FormToolStrip<ActivemqAddressingPattern> formTools = new FormToolStrip<>(form,
            new FormToolStrip.FormCallback<ActivemqAddressingPattern>() {
                @Override
                public void onSave(Map<String, Object> changeset) {
                    presenter.onSaveAddressDetails(form.getEditedEntity(), changeset);
                }

                @Override
                public void onDelete(ActivemqAddressingPattern entity) {
                }
            });
    ToolStrip tableTools = new ToolStrip();
    ToolButton addBtn = new ToolButton(Console.CONSTANTS.common_label_add(),
            event -> presenter.launchNewAddrDialogue());
    addBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_addressingDetails());
    tableTools.addToolButtonRight(addBtn);

    ToolButton removeBtn = new ToolButton(Console.CONSTANTS.common_label_delete(),
            event -> Feedback.confirm(Console.MESSAGES.deleteTitle("Addressing Config"),
                    Console.MESSAGES.deleteConfirm("Addressing Config"), isConfirmed -> {
                        if (isConfirmed) {
                            presenter.onDeleteAddressDetails(form.getEditedEntity());
                        }
                    }));

    tableTools.addToolButtonRight(removeBtn);

    VerticalPanel formPanel = new VerticalPanel();
    formPanel.addStyleName("fill-layout-width");

    formPanel.add(helpPanel.asWidget());
    formPanel.add(formTools.asWidget());
    formPanel.add(form.asWidget());

    serverName = new ContentHeaderLabel();

    MultipleToOneLayout layout = new MultipleToOneLayout().setPlain(true).setHeadlineWidget(serverName)
            .setDescription(Console.CONSTANTS.addressingDescription())
            .setMaster(Console.MESSAGES.available("Address Settings"), addrTable)
            .setMasterTools(tableTools.asWidget())
            .setDetail(Console.CONSTANTS.common_label_details(), formPanel);

    return layout.build();

}

From source file:org.jboss.as.console.client.shared.subsys.activemq.SecurityDetails.java

License:Open Source License

@SuppressWarnings("unchecked")
Widget asWidget() {//www.j av  a 2  s . c o m
    secTable = new DefaultCellTable<>(8, item -> item.getPattern() + "_" + item.getRole());
    secProvider = new ListDataProvider<>();
    secProvider.addDataDisplay(secTable);

    Column<ActivemqSecurityPattern, String> roleColumn = new Column<ActivemqSecurityPattern, String>(
            new TextCell()) {
        @Override
        public String getValue(ActivemqSecurityPattern object) {
            return object.getRole();
        }
    };

    Column<ActivemqSecurityPattern, String> patternColumn = new Column<ActivemqSecurityPattern, String>(
            new TextCell()) {
        @Override
        public String getValue(ActivemqSecurityPattern object) {
            return object.getPattern();
        }
    };

    secTable.addColumn(patternColumn, "Pattern");
    secTable.addColumn(roleColumn, "Role");

    form = new Form<>(ActivemqSecurityPattern.class);
    form.setNumColumns(2);
    form.bind(secTable);

    CheckBoxItem send = new CheckBoxItem("send", "Send?");
    CheckBoxItem consume = new CheckBoxItem("consume", "Consume?");
    CheckBoxItem manage = new CheckBoxItem("manage", "Manage?");

    CheckBoxItem createDQ = new CheckBoxItem("createDurableQueue", "CreateDurable?");
    CheckBoxItem deleteDQ = new CheckBoxItem("deleteDurableQueue", "DeleteDurable?");

    CheckBoxItem createNDQ = new CheckBoxItem("createNonDurableQueue", "CreateNonDurable?");
    CheckBoxItem deleteNDQ = new CheckBoxItem("deleteNonDurableQueue", "DeleteNonDurable?");

    form.setFields(send, consume, manage);
    form.setFieldsInGroup(Console.CONSTANTS.common_label_advanced(), new DisclosureGroupRenderer(), createDQ,
            deleteDQ, createNDQ, deleteNDQ);

    FormHelpPanel helpPanel = new FormHelpPanel(() -> {
        ModelNode address = Baseadress.get();
        address.add("subsystem", "messaging-activemq");
        address.add("server", presenter.getCurrentServer());
        address.add("security-setting", "*");
        address.add("role", "*");
        return address;
    }, form);

    FormToolStrip<ActivemqSecurityPattern> formTools = new FormToolStrip<>(form,
            new FormToolStrip.FormCallback<ActivemqSecurityPattern>() {
                @Override
                public void onSave(Map<String, Object> changeset) {
                    presenter.onSaveSecDetails(form.getEditedEntity(), changeset);
                }

                @Override
                public void onDelete(ActivemqSecurityPattern entity) {
                }
            });

    ToolStrip tableTools = new ToolStrip();

    ToolButton addBtn = new ToolButton(Console.CONSTANTS.common_label_add(),
            event -> presenter.launchNewSecDialogue());
    addBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_securityDetails());
    tableTools.addToolButtonRight(addBtn);

    ToolButton removeBtn = new ToolButton(Console.CONSTANTS.common_label_delete(),
            event -> Feedback.confirm(Console.MESSAGES.deleteTitle("Security Config"),
                    Console.MESSAGES.deleteConfirm("Security Config"), isConfirmed -> {
                        if (isConfirmed) {
                            presenter.onDeleteSecDetails(form.getEditedEntity());
                        }
                    }));

    tableTools.addToolButtonRight(removeBtn);

    VerticalPanel formPanel = new VerticalPanel();
    formPanel.addStyleName("fill-layout-width");

    formPanel.add(helpPanel.asWidget());
    formPanel.add(formTools.asWidget());
    formPanel.add(form.asWidget());

    serverName = new ContentHeaderLabel();

    MultipleToOneLayout layout = new MultipleToOneLayout().setPlain(true).setHeadlineWidget(serverName)
            .setDescription(Console.CONSTANTS.securitySettingsDescription())
            .setMaster(Console.MESSAGES.available("security settings"), secTable)
            .setMasterTools(tableTools.asWidget())
            .setDetail(Console.CONSTANTS.common_label_details(), formPanel);

    return layout.build();
}

From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.AuthenticationContextMatchRulesEditor.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-popupLayout-width");

    // table//ww  w.j a  va  2s  .  co m
    table = new DefaultCellTable<>(5);
    dataProvider = new ListDataProvider<>();
    dataProvider.addDataDisplay(table);
    table.setSelectionModel(selectionModel);

    // columns
    Column<ModelNode, String> matchRuleColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            // as the match-rules attribute is a list of attributes
            // none of them is required, so there is not a unique colum to show, so all defined attributes are
            // displayed, there is a "view" button that shows all attributes nicely formatted in a ModelNodeForm
            StringBuilder content = new StringBuilder();
            for (Property prop : node.asPropertyList()) {
                content.append(prop.getName()).append(": ").append(prop.getValue().asString()).append(", ");
            }
            return StringUtils.shortenStringIfNecessary(content.toString(), 120);
        }
    };

    Column<ModelNode, ModelNode> linkOpenDetailsColumn = new Column<ModelNode, ModelNode>(
            new ViewLinkCell<>(Console.CONSTANTS.common_label_view(),
                    (ActionCell.Delegate<ModelNode>) selection -> showDetailModal(selection))) {
        @Override
        public ModelNode getValue(ModelNode node) {
            return node;
        }
    };

    linkOpenDetailsColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    table.addColumn(matchRuleColumn, "");
    table.addColumn(linkOpenDetailsColumn, "Option");
    table.setColumnWidth(linkOpenDetailsColumn, 8, Style.Unit.PCT);

    panel.add(mainTableTools());
    panel.add(table);

    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);

    // ===================== match-rule form popup
    popupLayout.setStyleName("window-content");

    // read-only form to show details of match-rules attribute
    ModelNodeFormBuilder.FormAssets detailForm = new ModelNodeFormBuilder()
            .setResourceDescription(resourceDescription).setCreateMode(false).unsorted()
            .setCreateNameAttribute(false).setSecurityContext(securityContext).build();
    matchRulesForm = detailForm.getForm();

    popupDialogOptions.showCancel(false);
    Widget formWidget = detailForm.getForm().asWidget();
    popupLayout.add(formWidget);

    return panel;
}