@Override
	public void createControl(Composite parent) {

		Composite container = new Composite(parent, SWT.NULL);
		container.setLayout(new GridLayout(3, false));

		// Source directory
		Label sourceDirLabel = new Label(container, SWT.NULL);
		String sourceDirToolTip = "The Ghidra module source directory.";
		sourceDirLabel.setText("Source directory:");
		sourceDirLabel.setToolTipText(sourceDirToolTip);
		sourceDirText = new Text(container, SWT.BORDER | SWT.SINGLE);
		sourceDirText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
		sourceDirText.setText(GhidraProjectCreatorPreferences.getGhidraLastModuleSourceDirPath());
		sourceDirText.addModifyListener(evt -> validate());
		sourceDirText.setToolTipText(sourceDirToolTip);
		sourceDirButton = new Button(container, SWT.BUTTON1);
		sourceDirButton.setText("...");
		sourceDirButton.setToolTipText("Browse to select source directory");
		sourceDirButton.addListener(SWT.Selection, evt -> {
			DirectoryDialog dialog = new DirectoryDialog(container.getShell());
			String path = dialog.open();
			if (path != null) {
				sourceDirText.setText(path);
			}
		});

		validate();
		setControl(container);
	}
Creates a new Ghidra module source chooser wizard page.
GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/wizards/pages/ChooseGhidraModuleSourceWizardPage.java