return result;
}
protected Object createFolder(final IContainer container) {
final Object[] result = new Object[1];
final BPListElement newElement = new BPListElement(
fScriptProject, IBuildpathEntry.BPE_SOURCE, false);
final AddSourceFolderWizard wizard = newSourceFolderWizard(
newElement, fExistingElements, container);
AbstractOpenWizardAction action = new AbstractOpenWizardAction() {
protected INewWizard createWizard() throws CoreException {
return wizard;
}
};
action.addPropertyChangeListener(new IPropertyChangeListener() {
public void propertyChange(PropertyChangeEvent event) {
if (event.getProperty().equals(IAction.RESULT)) {
if (event.getNewValue().equals(Boolean.TRUE)) {
result[0] = addFakeFolder(
fScriptProject.getProject(), newElement);
} else {
wizard.cancel();
}
}
}
});
action.run();
return result[0];
}
};
dialog.setExisting(existingContainers.toArray());
dialog.setTitle(title);
dialog.setMessage(message);
dialog.addFilter(filter);
dialog.setInput(fScriptProject.getProject().getParent());
dialog.setInitialFocus(fScriptProject.getProject());
if (dialog.open() == Window.OK) {
Object[] elements = dialog.getResult();
for (int i = 0; i < elements.length; i++) {
IResource res = (IResource) elements[i];
fInsertedElements.add(new BPListElement(fScriptProject,
IBuildpathEntry.BPE_SOURCE, res.getFullPath(), res,
false));
}
if (fExistingElements.length == 1) {