private void validate(File pyghidraInterpreter) {
		String message = null;
		boolean pyghidraSupported = PyDevUtils.isSupportedPyGhidraPyDevInstalled();
		boolean jythonSupported = PyDevUtils.isSupportedJythonPyDevInstalled();

		if (pyghidraButton.getSelection()) {
			if (!pyghidraSupported) {
				message = "PyDev version " + PyDevUtils.MIN_SUPPORTED_VERSION +
					" or later is not installed.";
			}
			else {
				try {
					if (pyghidraInterpreter == null) {
						pyghidraInterpreter = findPyGhidraInterpreter();
					}
					if (pyghidraInterpreter == null) {
						message =
							"Please first launch PyGhidra to associate the Ghidra installation with a supported version of Python.";
						pyghidraSupported = false;
					}
					else {
						List<String> interpreters =
							PyDevUtils.getPyGhidraInterpreterNames(pyghidraInterpreter);
						if (interpreters.isEmpty()) {
							message ="No PyGhidra interpreters found. Click the + button or set project type to \"None\".";
						}
					}
				}
				catch (OperationNotSupportedException e) {
					message = "PyDev version is not supported for Jython.";
					pyghidraSupported = false;
				}
				catch (Exception e) {
					message =
						"Failed to lookup Python interpreter associated with the Ghidra installation.";
					pyghidraSupported = false;
				}
			}
		}
		else if (jythonButton.getSelection()) {
			if (!jythonSupported) {
				message = "PyDev version " + PyDevUtils.MIN_SUPPORTED_VERSION +
					" - " + PyDevUtils.MAX_JYTHON_SUPPORTED_VERSION + " is not installed.";
			}
			else {
				try {
					List<String> interpreters = PyDevUtils.getJythonInterpreterNames();
					if (interpreters.isEmpty()) {
						message =
							"No Jython interpreters found. Click the + button or set project type to \"None\".";
					}
				}
				catch (OperationNotSupportedException e) {
					message = "PyDev version is not supported for Jython.";
					jythonSupported = false;
				}
			}
		}

		pyghidraCombo.setEnabled(pyghidraButton.getSelection() && pyghidraSupported);
		addPyGhidraButton.setEnabled(pyghidraButton.getSelection() && pyghidraSupported);
		jythonCombo.setEnabled(jythonButton.getSelection() && jythonSupported);
		addJythonButton.setEnabled(jythonButton.getSelection() && jythonSupported);

		setErrorMessage(message);
		setPageComplete(message == null);
	}
Validates the fields on the page and updates the page's status.
Should be called every time a field on the page changes.

@param pyghidraInterpreter The Python interpreter used to launch PyGhidra (could be null if 
  unknown).
GhidraBuild/EclipsePlugins/GhidraDev/GhidraDevPlugin/src/main/java/ghidradev/ghidraprojectcreator/wizards/pages/EnablePythonWizardPage.java