while (errorIterator.hasNext()) {
final String error = (String) errorIterator.next();
reallyAddFaults.add(error);
final CheckBox checkBox = new CheckBox();
checkBox.setChecked(true);
checkBox.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
if (checkBox.isChecked() &&
!reallyAddFaults.contains(error)) {
reallyAddFaults.add(error);
}
else {
if (reallyAddFaults.contains(error)) {
reallyAddFaults.remove(error);
}
}
}
});
grid.setWidget(i, 0, checkBox);
grid.setText(i, 1, error);
i++;
}
addErrorsButton.setEnabled(false);
addErrorsButton.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
// TODO
}
});
containerPanel.add(addErrorsButton);
}
// schema locations
final Button addSchemaButton = new Button(GuiFactory.strings.addSchema());
if (!schemaLocations.isEmpty()) {
final Vector reallyAddSchemaLocations = new Vector();
containerPanel.add(new HTML("<br />" + GuiFactory.strings.schemaLocations()));
ScrollPanel schemaLocationContainerPanel = new ScrollPanel();
schemaLocationContainerPanel.setStyleName("restDescribe-wadlArea");
schemaLocationContainerPanel.setHeight(panelHeight);
VerticalPanel schemaLocationPanel = new VerticalPanel();
schemaLocationContainerPanel.add(schemaLocationPanel);
containerPanel.add(schemaLocationContainerPanel);
Iterator schemaLocationIterator = schemaLocations.iterator();
int i = 0;
HorizontalPanel horizontalSchemaPanel = new HorizontalPanel();
schemaLocationPanel.add(horizontalSchemaPanel);
Grid grid = new Grid(schemaLocations.size(), 2);
horizontalSchemaPanel.add(grid);
while (schemaLocationIterator.hasNext()) {
final String schemaLocation = (String) schemaLocationIterator.next();
reallyAddSchemaLocations.add(schemaLocation);
final CheckBox checkBox = new CheckBox();
checkBox.setChecked(true);
checkBox.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
if (checkBox.isChecked() &&
!reallyAddSchemaLocations.contains(schemaLocation)) {
reallyAddSchemaLocations.add(schemaLocation);
}
else {
if (reallyAddSchemaLocations.contains(schemaLocation)) {
reallyAddSchemaLocations.remove(schemaLocation);
}
}
}
});
grid.setWidget(i, 0, checkBox);
grid.setText(i, 1, schemaLocation);
i++;
}
addSchemaButton.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
Iterator addSchemaIterator = reallyAddSchemaLocations.iterator();
while (addSchemaIterator.hasNext()) {
String include = (String) addSchemaIterator.next();
if (Analyzer.application.getGrammars() == null) {
Analyzer.application.addGrammars(new GrammarsNode(Analyzer.application));
}
Analyzer.application.grammars.addInclude(include);
}
WadlTreeRoot wadlTreeRoot = new WadlTreeRoot();
Tree wadlTree = wadlTreeRoot.buildTree(Analyzer.application);
WadlPanel.wadlArea.clear();
WadlPanel.wadlArea.setWidget(wadlTree);
}
});
containerPanel.add(addSchemaButton);
}
// default namespace
final Button addNamespaceButton = new Button(GuiFactory.strings.addNamespace());
if (!defaultNamespace.isEmpty()) {
final Vector reallyAddDefaultNamespace = new Vector();
containerPanel.add(new HTML("<br />" + GuiFactory.strings.defaultNamespaces()));
ScrollPanel defaultNamespaceContainerPanel = new ScrollPanel();
defaultNamespaceContainerPanel.setStyleName("restDescribe-wadlArea");
defaultNamespaceContainerPanel.setHeight(panelHeight);
VerticalPanel defaultNamespacePanel = new VerticalPanel();
defaultNamespaceContainerPanel.add(defaultNamespacePanel);
containerPanel.add(defaultNamespaceContainerPanel);
Iterator defaultNamespaceIterator = defaultNamespace.iterator();
int i = 0;
HorizontalPanel horizontalNamespacePanel = new HorizontalPanel();
defaultNamespacePanel.add(horizontalNamespacePanel);
Grid grid = new Grid(defaultNamespace.size(), 2);
horizontalNamespacePanel.add(grid);
while (defaultNamespaceIterator.hasNext()) {
final String defaultNamespace = (String) defaultNamespaceIterator.next();
reallyAddDefaultNamespace.add(defaultNamespace);
final CheckBox checkBox = new CheckBox();
checkBox.setChecked(true);
checkBox.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
if (checkBox.isChecked() &&
!reallyAddDefaultNamespace.contains(defaultNamespace)) {
reallyAddDefaultNamespace.add(defaultNamespace);
}
else {
if (reallyAddDefaultNamespace.contains(defaultNamespace)) {
reallyAddDefaultNamespace.remove(defaultNamespace);
}
}
}
});
grid.setWidget(i, 0, checkBox);
grid.setText(i, 1, defaultNamespace);
i++;
}
addNamespaceButton.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
Iterator addNamespaceIterator = reallyAddDefaultNamespace.iterator();
while (addNamespaceIterator.hasNext()) {
String namespace = (String) addNamespaceIterator.next();
Analyzer.application.addNamespace(
new NamespaceAttribute(null, namespace));
}
WadlTreeRoot wadlTreeRoot = new WadlTreeRoot();
Tree wadlTree = wadlTreeRoot.buildTree(Analyzer.application);
WadlPanel.wadlArea.clear();
WadlPanel.wadlArea.setWidget(wadlTree);
}
});
containerPanel.add(addNamespaceButton);
}
final Button addOtherNamespacesButton = new Button(GuiFactory.strings.addOtherNamespace());
// other namespaces
if (!otherNamespaces.isEmpty()) {
final Vector reallyAddOtherNamespaces = new Vector();
containerPanel.add(new HTML("<br />" + GuiFactory.strings.otherNamespaces()));
ScrollPanel otherNamespacesContainerPanel = new ScrollPanel();
otherNamespacesContainerPanel.setStyleName("restDescribe-wadlArea");
otherNamespacesContainerPanel.setHeight(panelHeight);
VerticalPanel otherNamespacesPanel = new VerticalPanel();
otherNamespacesContainerPanel.add(otherNamespacesPanel);
containerPanel.add(otherNamespacesContainerPanel);
Iterator otherNamespacesIterator = otherNamespaces.iterator();
int i = 0;
HorizontalPanel horizontalNamespacePanel = new HorizontalPanel();
otherNamespacesPanel.add(horizontalNamespacePanel);
Grid grid = new Grid(otherNamespaces.size(), 2);
horizontalNamespacePanel.add(grid);
while (otherNamespacesIterator.hasNext()) {
final String otherNamespace = (String) otherNamespacesIterator.next();
reallyAddOtherNamespaces.add(otherNamespace);
final CheckBox checkBox = new CheckBox();
checkBox.setChecked(true);
checkBox.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
if (checkBox.isChecked() &&
!reallyAddOtherNamespaces.contains(otherNamespace)) {
reallyAddOtherNamespaces.add(otherNamespace);
}
else {
if (reallyAddOtherNamespaces.contains(otherNamespace)) {
reallyAddOtherNamespaces.remove(otherNamespace);
}
}
}
});
grid.setWidget(i, 0, checkBox);
grid.setText(i, 1, otherNamespace);
i++;
}
addOtherNamespacesButton.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
Iterator addNamespaceIterator = reallyAddOtherNamespaces.iterator();
while (addNamespaceIterator.hasNext()) {
String namespace = (String) addNamespaceIterator.next();
Analyzer.application.addNamespace(
new NamespaceAttribute(null, namespace));
}
WadlTreeRoot wadlTreeRoot = new WadlTreeRoot();
Tree wadlTree = wadlTreeRoot.buildTree(Analyzer.application);
WadlPanel.wadlArea.clear();
WadlPanel.wadlArea.setWidget(wadlTree);
}
});
containerPanel.add(addOtherNamespacesButton);
}
Button closeButton = new Button(GuiFactory.strings.ok());
closeButton.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
if (!otherNamespaces.isEmpty()) {
addOtherNamespacesButton.click();
}
if (!defaultNamespace.isEmpty()) {
addNamespaceButton.click();
}
if (!errorStatuses.isEmpty()) {
addErrorsButton.click();
}
if (!schemaLocations.isEmpty()) {
addSchemaButton.click();
}
dialog.hide();
GuiFactory.blockScreen(false);
}
});
Button cancelButton = new Button(GuiFactory.strings.cancel());
cancelButton.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
dialog.hide();
GuiFactory.blockScreen(false);
}
});