ConfigAdminEditor(ConfigAdminPresenter presenter) {
this.presenter = presenter;
}
Widget asWidget() {
LayoutPanel layout = new LayoutPanel();
ToolStrip topLevelTools = new ToolStrip();
ToolButton editBtn = new ToolButton(Console.CONSTANTS.common_label_edit(), new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
final ConfigAdminData model = pidTable.getSelection();
dialog = new DefaultWindow(Console.CONSTANTS.subsys_configadmin_editPID());
dialog.setWidth(320);
dialog.setHeight(140);
dialog.trapWidget(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();
}
});
editBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_edit_configAdminEditor());
topLevelTools.addToolButton(editBtn);
ToolButton deleteBtn = new ToolButton(Console.CONSTANTS.common_label_delete(), new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
final ConfigAdminData model = pidTable.getSelection();
Feedback.confirm(Console.MESSAGES.subsys_configadmin_remove(), Console.MESSAGES.subsys_configadmin_removeConfirm(model.getPid()),
new Feedback.ConfirmationHandler() {
@Override
public void onConfirmation(boolean isConfirmed) {
if (isConfirmed)
presenter.onDeleteConfigurationAdminData(model.getPid());
}
});
}
});
deleteBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_delete_configAdminEditor());
topLevelTools.addToolButton(deleteBtn);
ToolButton addBtn = new ToolButton(Console.CONSTANTS.common_label_add(), new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
presenter.launchNewCASPropertyWizard();
}
});
addBtn.ensureDebugId(Console.DEBUG_CONSTANTS.debug_label_add_configAdminEditor());
topLevelTools.addToolButtonRight(addBtn);
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_configadmin_header()));
vpanel.add(horzPanel);