in org.apache.ivyde.eclipse/src/java/org/apache/ivyde/internal/eclipse/ui/PathEditor.java [156:184]
private void selectInWorkspace() {
ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(),
new WorkbenchLabelProvider(), new BaseWorkbenchContentProvider());
dialog.setTitle("Select a file in the workspace:");
dialog.setMessage("Select a file in the workspace:");
// Filter closed projects
dialog.addFilter(new ViewerFilter() {
public boolean select(Viewer viewer, Object parentElement, Object element) {
if (element instanceof IProject) {
return ((IProject) element).isAccessible();
}
// we want a folder
return defaultExtension != null || element instanceof IContainer;
}
});
dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());
// TODO try to preselect the current file
dialog.open();
Object[] results = dialog.getResult();
if (results != null && results.length > 0 && results[0] instanceof IResource) {
IPath path = ((IResource) results[0]).getFullPath();
if (project != null && path.segment(0).equals(project.getProject().getName())) {
setProjectLoc(path.removeFirstSegments(1).makeRelative().toString());
} else {
String containerName = path.makeRelative().toString();
setWorkspaceLoc("${workspace_loc:" + containerName + "}");
}
}
}