ToolStrip topLevelTools = new ToolStrip();
topLevelTools.addToolButton(new ToolButton(Console.CONSTANTS.common_label_edit(), new ClickHandler() {
@Override
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()));