List of usage examples for com.google.gwt.view.client SingleSelectionModel SingleSelectionModel
public SingleSelectionModel()
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.mapper.SimplePermissionMappingEditor.java
License:Open Source License
SimplePermissionMappingEditor(final Dispatcher circuit, ResourceDescription resourceDescription, SecurityContext securityContext) { this.circuit = circuit; this.securityContext = securityContext; selectionModel = new SingleSelectionModel<>(); this.resourceDescription = new ResourceDescription(resourceDescription.clone()); ModelNode reqPropsDescription = this.resourceDescription.get("operations").get("add") .get("request-properties"); ModelNode filtersDescription = reqPropsDescription.get("permission-mappings").get("value-type"); reqPropsDescription.set(filtersDescription); }
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.ProviderLoaderEditor.java
License:Apache License
ProviderLoaderEditor() {
selectionModel = new SingleSelectionModel<>();
}
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.SecurityDomainRealmEditor.java
License:Open Source License
SecurityDomainRealmEditor(final Dispatcher circuit, ResourceDescription resourceDescription, SecurityContext securityContext) { this.circuit = circuit; this.securityContext = securityContext; selectionModel = new SingleSelectionModel<>(); this.resourceDescription = new ResourceDescription(resourceDescription.clone()); ModelNode reqPropsDescription = this.resourceDescription.get("operations").get("add") .get("request-properties"); ModelNode filtersDescription = reqPropsDescription.get("realms").get("value-type"); reqPropsDescription.set(filtersDescription); }
From source file:org.jboss.as.console.client.shared.subsys.jca.wizard.DatasourceStep2.java
License:Open Source License
Widget asWidget() { VerticalPanel layout = new VerticalPanel(); layout.getElement().setAttribute("style", "margin:10px; vertical-align:center;width:95%"); HTML desc = new HTML("<h3>" + Console.CONSTANTS.subsys_jca_dataSource_step2() + "</h3>"); desc.getElement().setAttribute("style", "padding-bottom:10px;"); layout.add(desc);/*from w ww. j a va 2s. c o m*/ layout.add(new ContentDescription("Select one of the deployed JDBC driver.")); // --- table = new DefaultCellTable<JDBCDriver>(5); TextColumn<JDBCDriver> nameColumn = new TextColumn<JDBCDriver>() { @Override public String getValue(JDBCDriver record) { return record.getName(); } }; TextColumn<JDBCDriver> groupColumn = new TextColumn<JDBCDriver>() { @Override public String getValue(JDBCDriver record) { return record.getGroup(); } }; table.addColumn(nameColumn, "Name"); if (!isStandalone) table.addColumn(groupColumn, "Server Group"); selectionModel = new SingleSelectionModel<JDBCDriver>(); table.setSelectionModel(selectionModel); provisionTable(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); VerticalPanel driverPanel = new VerticalPanel(); driverPanel.add(table); driverPanel.add(pager); // -- final Form<JDBCDriver> form = new Form<JDBCDriver>(JDBCDriver.class); TextBoxItem name = new TextBoxItem("name", "Name"); TextBoxItem driverClass = new TextBoxItem("driverClass", "Driver Class"); NumberBoxItem major = new NumberBoxItem("majorVersion", "Major Version"); NumberBoxItem minor = new NumberBoxItem("minorVersion", "Minor Version"); form.setFields(name, driverClass, major, minor); // -- TabPanel tabs = new TabPanel(); tabs.setStyleName("default-tabpanel"); tabs.addSelectionHandler(new SelectionHandler<Integer>() { @Override public void onSelection(SelectionEvent<Integer> event) { selectedTab = event.getSelectedItem(); } }); tabs.add(driverPanel, "Chose Driver"); //tabs.add(form.asWidget(), "Specify Driver"); layout.add(tabs); tabs.selectTab(0); // ---- ClickHandler submitHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { JDBCDriver driver = null; if (selectedTab == 0) { // reset state form.clearValues(); SingleSelectionModel<JDBCDriver> selection = (SingleSelectionModel<JDBCDriver>) table .getSelectionModel(); driver = selection.getSelectedObject(); } else { FormValidation formValidation = form.validate(); if (!formValidation.hasErrors()) { driver = form.getUpdatedEntity(); } } if (driver != null) { // force selected driver editedEntity.setDriverName(driver.getName()); editedEntity.setDriverClass(driver.getDriverClass()); editedEntity.setMajorVersion(driver.getMajorVersion()); editedEntity.setMinorVersion(driver.getMinorVersion()); wizard.onConfigureDriver(editedEntity); } else { Console.warning(Console.CONSTANTS.subsys_jca_dataSource_select_driver(), "If no driver is available you may need to deploy one!"); } } }; ClickHandler cancelHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { wizard.getPresenter().closeDialogue(); } }; DialogueOptions options = new DialogueOptions(Console.CONSTANTS.common_label_next(), submitHandler, Console.CONSTANTS.common_label_cancel(), cancelHandler); return new WindowContentBuilder(layout, options).build(); }
From source file:org.jboss.as.console.client.shared.subsys.jca.wizard.DriverStep.java
License:Open Source License
@Override @SuppressWarnings("unchecked") protected Widget asWidget(final Context<T> context) { // first tab: driver form form = new Form<>(JDBCDriver.class); TextBoxItem driverName = new TextBoxItem("name", "Name", true); TextBoxItem moduleName = new TextBoxItem("driverModuleName", "Module Name", true); TextBoxItem driverClass = new TextBoxItem("driverClass", "Driver Class", false); TextBoxItem xaDataSource = new TextBoxItem("xaDataSourceClass", "XA DataSource Class", false); if (context.xa) { form.setFields(driverName, moduleName, driverClass, xaDataSource); } else {//from w w w.ja v a2s. c o m form.setFields(driverName, moduleName, driverClass); } FlowPanel formPanel = new FlowPanel(); formPanel.add(new FormHelpPanel(context.jdbcDriverHelp, form).asWidget()); formPanel.add(form); // second tab: existing drivers table = new DefaultCellTable<>(5); TextColumn<JDBCDriver> nameColumn = new TextColumn<JDBCDriver>() { @Override public String getValue(JDBCDriver record) { return record.getName(); } }; TextColumn<JDBCDriver> moduleColumn = new TextColumn<JDBCDriver>() { @Override public String getValue(JDBCDriver record) { return record.getDriverModuleName(); } }; table.addColumn(nameColumn, "Name"); if (!context.standalone) { table.addColumn(moduleColumn, "Module"); } selectionModel = new SingleSelectionModel<>(); table.setSelectionModel(selectionModel); provisionTable(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); FlowPanel driverPanel = new FlowPanel(); driverPanel.add(table); driverPanel.add(pager); // tabs TabPanel tabs = new TabPanel(); tabs.setStyleName("default-tabpanel"); tabs.addSelectionHandler(event -> selectedTab = event.getSelectedItem()); tabs.add(formPanel, "Specify Driver"); tabs.add(driverPanel, "Detected Driver"); // body FlowPanel body = new FlowPanel(); body.add(new ContentDescription( "Select one of the installed JDBC drivers. If you do not see your driver, make sure that it is deployed as a module and properly registered.")); body.add(tabs); tabs.selectTab(0); return body; }
From source file:org.jboss.as.console.client.shared.subsys.jca.wizard.XADatasourceStep2.java
License:Open Source License
Widget asWidget() { VerticalPanel layout = new VerticalPanel(); layout.setStyleName("window-content"); layout.add(new HTML("<h3>" + Console.CONSTANTS.subsys_jca_xadataSource_step2() + "</h3>")); // ---//from w w w .j a va 2 s .c o m table = new DefaultCellTable<JDBCDriver>(5); TextColumn<JDBCDriver> nameColumn = new TextColumn<JDBCDriver>() { @Override public String getValue(JDBCDriver record) { return record.getName(); } }; /*TextColumn<JDBCDriver> xaClassColumn = new TextColumn<JDBCDriver>() { @Override public String getValue(JDBCDriver record) { return record.getXaDataSourceClass(); } };*/ table.addColumn(nameColumn, "Name"); //table.addColumn(xaClassColumn, "Datasource Class"); selectionModel = new SingleSelectionModel<JDBCDriver>(); table.setSelectionModel(selectionModel); // filter and select first record provisionTable(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); errorMessages = new HTML(""); errorMessages.setStyleName("error-panel"); errorMessages.setVisible(false); layout.add(errorMessages); layout.add(new ContentGroupLabel("Driver")); layout.add(table); layout.add(pager); final TextAreaItem dsClass = new TextAreaItem("dataSourceClass", "XA Data Source Class"); layout.add(new ContentGroupLabel("XA Data Source Class")); layout.add(dsClass.asWidget()); table.getSelectionModel().addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent selectionChangeEvent) { String xaDataSourceClass = selectionModel.getSelectedObject().getXaDataSourceClass(); dsClass.setValue(xaDataSourceClass); } }); // -- ClickHandler submitHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { errorMessages.setVisible(false); SingleSelectionModel<JDBCDriver> selection = (SingleSelectionModel<JDBCDriver>) table .getSelectionModel(); JDBCDriver driver = selection.getSelectedObject(); if (driver != null) { // force selected driver if (dsClass.getValue() == null || dsClass.getValue().equals("")) { errorMessages.setText("XA Datasource Class is required!"); errorMessages.setVisible(true); return; } editedEntity.setDriverName(driver.getName()); editedEntity.setDriverClass(driver.getDriverClass()); editedEntity.setDataSourceClass(dsClass.getValue()); editedEntity.setMajorVersion(driver.getMajorVersion()); editedEntity.setMinorVersion(driver.getMinorVersion()); wizard.onConfigureDriver(editedEntity); } else { errorMessages.setText(Console.CONSTANTS.subsys_jca_dataSource_select_driver() + ": If no driver is available you may need to deploy one!"); errorMessages.setVisible(true); } } }; ClickHandler cancelHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { wizard.getPresenter().closeDialogue(); } }; DialogueOptions options = new DialogueOptions(Console.CONSTANTS.common_label_next(), submitHandler, Console.CONSTANTS.common_label_cancel(), cancelHandler); return new WindowContentBuilder(layout, options).build(); }
From source file:org.jboss.as.console.client.shared.subsys.jca.XADataSourceEditor.java
License:Open Source License
public Widget asWidget() { LayoutPanel layout = new LayoutPanel(); ToolStrip topLevelTools = new ToolStrip(); ToolButton commonLabelAddBtn = new ToolButton(Console.CONSTANTS.common_label_add(), new ClickHandler() { @Override//from w w w.j a v a2s .c o m public void onClick(ClickEvent event) { presenter.launchNewXADatasourceWizard(); } }); commonLabelAddBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_xADataSourceEditor()); topLevelTools.addToolButtonRight(commonLabelAddBtn); ClickHandler clickHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { final XADataSource currentSelection = details.getCurrentSelection(); if (currentSelection != null) { Feedback.confirm(Console.MESSAGES.deleteTitle("XA Datasource"), Console.MESSAGES.deleteConfirm("XA Datasource " + currentSelection.getName()), new Feedback.ConfirmationHandler() { @Override public void onConfirmation(boolean isConfirmed) { if (isConfirmed) { presenter.onDeleteXA(currentSelection); } } }); } } }; ToolButton deleteBtn = new ToolButton(Console.CONSTANTS.common_label_delete()); deleteBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_delete_xADataSourceEditor()); deleteBtn.addClickHandler(clickHandler); topLevelTools.addToolButtonRight(deleteBtn); // ---- VerticalPanel vpanel = new VerticalPanel(); vpanel.setStyleName("rhs-content-panel"); ScrollPanel scroll = new ScrollPanel(vpanel); layout.add(scroll); layout.setWidgetTopHeight(scroll, 0, Style.Unit.PX, 100, Style.Unit.PCT); // --- vpanel.add(new ContentHeaderLabel("JDBC XA Datasources")); vpanel.add(new ContentDescription(Console.CONSTANTS.subsys_jca_xadataSources_desc())); dataSourceTable = new DefaultCellTable<XADataSource>(8, new ProvidesKey<XADataSource>() { @Override public Object getKey(XADataSource item) { return item.getJndiName(); } }); dataSourceProvider = new ListDataProvider<XADataSource>(); dataSourceProvider.addDataDisplay(dataSourceTable); TextColumn<DataSource> nameColumn = new TextColumn<DataSource>() { @Override public String getValue(DataSource record) { return record.getName(); } }; TextColumn<DataSource> jndiNameColumn = new TextColumn<DataSource>() { @Override public String getValue(DataSource record) { return record.getJndiName(); } }; Column<DataSource, ImageResource> statusColumn = new Column<DataSource, ImageResource>( new ImageResourceCell()) { @Override public ImageResource getValue(DataSource dataSource) { ImageResource res = null; if (dataSource.isEnabled()) res = Icons.INSTANCE.status_good(); else res = Icons.INSTANCE.status_bad(); return res; } }; dataSourceTable.addColumn(nameColumn, "Name"); dataSourceTable.addColumn(jndiNameColumn, "JNDI"); dataSourceTable.addColumn(statusColumn, "Enabled?"); vpanel.add(new ContentGroupLabel(Console.MESSAGES.available("XA Datasources"))); vpanel.add(topLevelTools.asWidget()); vpanel.add(dataSourceTable); DefaultPager pager = new DefaultPager(); pager.setDisplay(dataSourceTable); vpanel.add(pager); // ----------- details = new XADataSourceDetails(presenter); propertyEditor = new PropertyEditor(this, true); propertyEditor.setHelpText(Console.CONSTANTS.subsys_jca_dataSource_xaprop_help()); final SingleSelectionModel<XADataSource> selectionModel = new SingleSelectionModel<XADataSource>(); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { XADataSource dataSource = selectionModel.getSelectedObject(); String nextState = dataSource.isEnabled() ? Console.CONSTANTS.common_label_disable() : Console.CONSTANTS.common_label_enable(); disableBtn.setText(nextState); presenter.loadXAProperties(dataSource.getName()); presenter.loadPoolConfig(true, dataSource.getName()); } }); dataSourceTable.setSelectionModel(selectionModel); ClickHandler disableHandler = new ClickHandler() { @Override public void onClick(ClickEvent event) { final XADataSource selection = getCurrentSelection(); final boolean doEnable = !selection.isEnabled(); Feedback.confirm(Console.MESSAGES.modify("XA datasource"), Console.MESSAGES.modifyConfirm("XA datasource " + selection.getName()), new Feedback.ConfirmationHandler() { @Override public void onConfirmation(boolean isConfirmed) { if (isConfirmed) { presenter.onDisableXA(selection, doEnable); } } }); } }; disableBtn = new ToolButton(Console.CONSTANTS.common_label_enOrDisable()); disableBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_enOrDisable_xADataSourceDetails()); disableBtn.addClickHandler(disableHandler); topLevelTools.addToolButtonRight(disableBtn); // ----- TabPanel bottomPanel = new TabPanel(); bottomPanel.setStyleName("default-tabpanel"); bottomPanel.add(details.asWidget(), "Attributes"); details.getForm().bind(dataSourceTable); final FormToolStrip.FormCallback<XADataSource> xaCallback = new FormToolStrip.FormCallback<XADataSource>() { @Override public void onSave(Map<String, Object> changeset) { DataSource ds = getCurrentSelection(); presenter.onSaveXADetails(ds.getName(), changeset); } @Override public void onDelete(XADataSource entity) { // n/a } }; final FormToolStrip.FormCallback<DataSource> dsCallback = new FormToolStrip.FormCallback<DataSource>() { @Override public void onSave(Map<String, Object> changeset) { DataSource ds = getCurrentSelection(); presenter.onSaveXADetails(ds.getName(), changeset); } @Override public void onDelete(DataSource entity) { // n/a } }; connectionEditor = new XADataSourceConnection(presenter, xaCallback); connectionEditor.getForm().bind(dataSourceTable); bottomPanel.add(connectionEditor.asWidget(), "Connection"); securityEditor = new DataSourceSecurityEditor(dsCallback); securityEditor.getForm().bind(dataSourceTable); bottomPanel.add(securityEditor.asWidget(), "Security"); bottomPanel.add(propertyEditor.asWidget(), "Properties"); propertyEditor.setAllowEditProps(false); poolConfig = new PoolConfigurationView(new PoolManagement() { @Override public void onSavePoolConfig(String parentName, Map<String, Object> changeset) { presenter.onSavePoolConfig(parentName, changeset, true); } @Override public void onResetPoolConfig(String parentName, PoolConfig entity) { presenter.onDeletePoolConfig(parentName, entity, true); } @Override public void onDoFlush(String editedName) { presenter.onDoFlush(true, editedName); } }); bottomPanel.add(poolConfig.asWidget(), "Pool"); poolConfig.getForm().bind(dataSourceTable); validationEditor = new DataSourceValidationEditor(dsCallback); validationEditor.getForm().bind(dataSourceTable); bottomPanel.add(validationEditor.asWidget(), "Validation"); bottomPanel.selectTab(0); vpanel.add(new ContentGroupLabel(Console.CONSTANTS.common_label_selection())); vpanel.add(bottomPanel); return layout; }
From source file:org.jboss.as.console.client.shared.subsys.osgi.config.CapabilitiesTable.java
License:Open Source License
Widget asWidget() { VerticalPanel layout = new VerticalPanel(); layout.setStyleName("fill-layout-width"); table = new DefaultCellTable<OSGiCapability>(8, new ProvidesKey<OSGiCapability>() { @Override/*from ww w .jav a2 s .co m*/ public Object getKey(OSGiCapability item) { return item.getIdentifier(); } }); dataProvider = new ListDataProvider<OSGiCapability>(); dataProvider.addDataDisplay(table); ColumnSortEvent.ListHandler<OSGiCapability> sortHandler = new ColumnSortEvent.ListHandler<OSGiCapability>( dataProvider.getList()); TextColumn<OSGiCapability> identifierColumn = new TextColumn<OSGiCapability>() { @Override public String getValue(OSGiCapability record) { return record.getIdentifier(); } }; identifierColumn.setSortable(true); sortHandler.setComparator(identifierColumn, new Comparator<OSGiCapability>() { @Override public int compare(OSGiCapability o1, OSGiCapability o2) { return o1.getIdentifier().compareTo(o2.getIdentifier()); } }); TextColumn<OSGiCapability> startLevelColumn = new TextColumn<OSGiCapability>() { @Override public String getValue(OSGiCapability record) { if (record.getStartLevel() == null) return ""; else return record.getStartLevel(); } }; startLevelColumn.setSortable(true); sortHandler.setComparator(startLevelColumn, new Comparator<OSGiCapability>() { @Override public int compare(OSGiCapability o1, OSGiCapability o2) { if (o1.getStartLevel() == null) { // Don't use MIN_VALUE because -MIN_VALUE doesn't fit in an int return -Integer.MAX_VALUE; } if (o2.getStartLevel() == null) { return Integer.MAX_VALUE; } int cv = o1.getStartLevel().compareTo(o2.getStartLevel()); if (cv != 0) return cv; // Sort on identifier within startlevel return o1.getIdentifier().compareTo(o2.getIdentifier()); } }); table.addColumn(identifierColumn, Console.CONSTANTS.subsys_osgi_capabilityId()); table.addColumn(startLevelColumn, Console.CONSTANTS.subsys_osgi_capabilityStartLevel()); table.addColumnSortHandler(sortHandler); table.getColumnSortList().push(identifierColumn); selectionModel = new SingleSelectionModel<OSGiCapability>(); table.setSelectionModel(selectionModel); layout.add(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); layout.add(pager); return layout; }
From source file:org.jboss.as.console.client.shared.subsys.osgi.config.ConfigAdminEditor.java
License:Open Source License
Widget asWidget() { LayoutPanel layout = new LayoutPanel(); ToolStrip topLevelTools = new ToolStrip(); topLevelTools.addToolButton(new ToolButton(Console.CONSTANTS.common_label_edit(), new ClickHandler() { @Override/* w w w.j av a 2 s . c o m*/ public void onClick(ClickEvent event) { final OSGiConfigAdminData model = pidTable.getSelection(); dialog = new DefaultWindow(Console.CONSTANTS.subsys_osgi_configAdminEditPID()); dialog.setWidth(320); dialog.setHeight(140); dialog.setWidget(new InputWindow(model.getPid(), new InputWindow.Result() { @Override public void result(String value) { if (value != null && !value.equals(model.getPid())) { presenter.onDeleteConfigurationAdminData(model.getPid()); model.setPid(value); presenter.onAddConfigurationAdminData(model); } closePropertyDialoge(); } }).asWidget()); dialog.setGlassEnabled(true); dialog.center(); } })); topLevelTools.addToolButton(new ToolButton(Console.CONSTANTS.common_label_delete(), new ClickHandler() { @Override public void onClick(ClickEvent event) { final OSGiConfigAdminData model = pidTable.getSelection(); Feedback.confirm(Console.MESSAGES.subsys_osgi_removeConfigAdmin(), Console.MESSAGES.subsys_osgi_removeConfigAdminConfirm(model.getPid()), new Feedback.ConfirmationHandler() { @Override public void onConfirmation(boolean isConfirmed) { if (isConfirmed) presenter.onDeleteConfigurationAdminData(model.getPid()); } }); } })); topLevelTools.addToolButtonRight(new ToolButton(Console.CONSTANTS.common_label_add(), new ClickHandler() { @Override public void onClick(ClickEvent event) { presenter.launchNewCASPropertyWizard(); } })); layout.add(topLevelTools); VerticalPanel vpanel = new VerticalPanel(); vpanel.setStyleName("rhs-content-panel"); ScrollPanel scroll = new ScrollPanel(vpanel); layout.add(scroll); layout.setWidgetTopHeight(topLevelTools, 0, Style.Unit.PX, 30, Style.Unit.PX); layout.setWidgetTopHeight(scroll, 30, Style.Unit.PX, 100, Style.Unit.PCT); HorizontalPanel horzPanel = new HorizontalPanel(); horzPanel.add(new ContentHeaderLabel(Console.CONSTANTS.subsys_osgi_configAdminHeader())); vpanel.add(horzPanel); pidTable = new PIDTable(); vpanel.add(new ContentGroupLabel(Console.CONSTANTS.subsys_osgi_configAdminPIDLabel())); vpanel.add(pidTable.asWidget()); propertyEditor = new PropertyEditor(this, true, 10); final SingleSelectionModel<OSGiConfigAdminData> selectionModel = new SingleSelectionModel<OSGiConfigAdminData>(); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { OSGiConfigAdminData pid = selectionModel.getSelectedObject(); propertyEditor.setProperties(pid.getPid(), pid.getProperties()); } }); pidTable.setSelectionModel(selectionModel); vpanel.add(new ContentGroupLabel(Console.CONSTANTS.subsys_osgi_configAdminValuesLabel())); vpanel.add(propertyEditor.asWidget()); propertyEditor.setAllowEditProps(false); return layout; }
From source file:org.jboss.as.console.client.shared.subsys.security.AbstractDomainDetailEditor.java
License:Open Source License
Widget asWidget() { VerticalPanel vpanel = new VerticalPanel(); vpanel.setStyleName("rhs-content-panel"); // TODO: in order for the selection to retain we need a distinct key per module. // attributesTable = new DefaultCellTable<T>(4, getKeyProvider()); attributesTable = new DefaultCellTable<T>(4); attributesTable.getElement().setAttribute("style", "margin-top:5px;"); attributesProvider = new ListDataProvider<T>(); attributesProvider.addDataDisplay(attributesTable); headerLabel = new ContentHeaderLabel("TITLE HERE"); vpanel.add(headerLabel);/* w w w.j av a2 s. com*/ vpanel.add(new ContentDescription(description)); vpanel.add(new ContentGroupLabel(getStackName())); ToolStrip tableTools = new ToolStrip(); addModule = new ToolButton(Console.CONSTANTS.common_label_add()); addModule.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { openWizard(null); } }); addModule.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_abstractDomainDetailEditor()); tableTools.addToolButtonRight(addModule); tableTools.addToolButtonRight(new ToolButton(Console.CONSTANTS.common_label_remove(), new ClickHandler() { @Override public void onClick(ClickEvent event) { final T policy = getCurrentSelection(); Feedback.confirm(Console.MESSAGES.deleteTitle(getEntityName()), Console.MESSAGES.deleteConfirm(policy.getCode()), new Feedback.ConfirmationHandler() { @Override public void onConfirmation(boolean isConfirmed) { if (isConfirmed) { attributesProvider.getList().remove(policy); if (attributesProvider.getList().size() > 0) { saveData(); } // call remove() on last provider-module instead of save() else { removeData(); } } } }); } })); vpanel.add(tableTools); // ------- Column<T, String> codeColumn = new Column<T, String>(new TextCell()) { @Override public String getValue(T record) { return record.getCode(); } }; attributesTable.addColumn(codeColumn, Console.CONSTANTS.subsys_security_codeField()); addCustomColumns(attributesTable); List<HasCell<T, T>> actionCells = new ArrayList<HasCell<T, T>>(); IdentityColumn<T> actionColumn = new IdentityColumn<T>(new CompositeCell(actionCells)); attributesTable.addColumn(actionColumn, ""); vpanel.add(attributesTable); // ------- DefaultPager pager = new DefaultPager(); pager.setDisplay(attributesTable); vpanel.add(pager); // ------- propertyEditor = new PropertyEditor(this, true); propertyEditor.setHideButtons(false); final SingleSelectionModel<T> ssm = new SingleSelectionModel<T>(); ssm.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { T policy = ssm.getSelectedObject(); if (policy == null) // Can this actually happen? { return; } List<PropertyRecord> props = policy.getProperties(); if (props == null) { props = new ArrayList<PropertyRecord>(); policy.setProperties(props); } propertyEditor.setProperties("", policy.getProperties()); wizard.edit(policy); } }); attributesTable.setSelectionModel(ssm); wizard = getWizard(); TabPanel bottomTabs = new TabPanel(); bottomTabs.setStyleName("default-tabpanel"); bottomTabs.add(wizard.asWidget(), "Attributes"); bottomTabs.add(propertyEditor.asWidget(), "Module Options"); propertyEditor.setAllowEditProps(false); vpanel.add(new ContentGroupLabel("Details")); vpanel.add(bottomTabs); bottomTabs.selectTab(0); // ------- ScrollPanel scroll = new ScrollPanel(vpanel); LayoutPanel layout = new LayoutPanel(); layout.add(scroll); layout.setWidgetTopHeight(scroll, 0, Style.Unit.PX, 100, Style.Unit.PCT); return layout; }