Bug 39244 modifiersChanged() hook not called in NewTypeWizardPage [code manipulation]
The modifiersChanged() hook in NewTypeWizardPage is not being called when a modifier radio-button is selected (public/default/private/protected), it is only being called if a check box is selected (abstract/final/static). I suspect a missing "else if" clause in typePageDialogFieldChanged() in NewTypeWizardPage is the culprit. As such am unable to extend NewTypeWizardPage and validate modifier settings (working on custom "class" wizard extension).
org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/wizards/NewTypeWizardPage.java
fSuperClassDialogField.enableButton(root != null);
		
		fSuperClass= null;
		
		String sclassName= getSuperClass();
		if (sclassName.length() == 0) {
			
			return status;
		}
		IStatus val= JavaConventions.validateJavaTypeName(sclassName);
		if (val.getSeverity() == IStatus.ERROR) {
			status.setError(NewWizardMessages.getString("NewTypeWizardPage.error.InvalidSuperClassName")); 
			return status;
		} 
		if (root != null) {
			try {		
				IType type= resolveSuperTypeName(root.getJavaProject(), sclassName);
				if (type == null) {
					status.setWarning(NewWizardMessages.getString("NewTypeWizardPage.warning.SuperClassNotExists")); 
					return status;
				} else {
					if (type.isInterface()) {
						status.setWarning(NewWizardMessages.getFormattedString("NewTypeWizardPage.warning.SuperClassIsNotClass", sclassName)); 
						return status;
					}
					int flags= type.getFlags();
					if (Flags.isFinal(flags)) {
						status.setWarning(NewWizardMessages.getFormattedString("NewTypeWizardPage.warning.SuperClassIsFinal", sclassName)); 
						return status;
					} else if (!JavaModelUtil.isVisible(type, getPackageFragment())) {