in java/com/google/devtools/bazel/e4b/wizard/WorkspaceWizardPage.java [152:187]
private void createWorkspaceSelectionControls() {
Label label = new Label(container, SWT.NONE);
label.setText("Workpsace root: ");
workspaceRoot = new Label(container, SWT.BORDER);
workspaceRoot.setText("");
workspaceRoot.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
dialog = new DirectoryDialog(getShell(), SWT.OPEN);
workspaceRootButton = new Button(container, SWT.DEFAULT);
workspaceRootButton.setText("...");
workspaceRootButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
String wr = dialog.open();
if (wr != null) {
workspaceRoot.setText(wr);
DirectoryTreeContentProvider.setFileTreeRoot(directories, new File(wr));
try {
completionProvider.setBazelInstance(
Activator.getDefault().getCommand().getInstance(new File(getWorkspaceRoot())));
} catch (IOException e1) {
MessageDialog.openError(getShell(), "Error",
getWorkspaceRoot() + " does not seems to be a Bazel workspace");
} catch (InterruptedException e1) {
Activator.error("Bazel was interrupted", e1);
} catch (BazelNotFoundException e1) {
MessageDialog.openError(getShell(), "Error", "Cannot found Bazel: " + e1.getMessage());
}
}
updateControls();
}
});
workspaceRootButton.setLayoutData(new GridData(GridData.END, GridData.CENTER, false, false));
}