@Override
public IEditorPart openForm(IFile formFile, FormNode formNode) throws CoreException {
String infopathEditor = PlatformUI.getPreferenceStore().getString(ChooseFormTypeDialog.INFOPATH_EDITOR_PREFERENCE_ID);
if (infopathEditor.length() == 0) {
ExternalEditorDialog dialog = new ExternalEditorDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(), infopathEditor);
if (dialog.open() != Dialog.OK) {
return null;
}
infopathEditor = dialog.getPath();
PlatformUI.getPreferenceStore().setValue(ChooseFormTypeDialog.INFOPATH_EDITOR_PREFERENCE_ID, infopathEditor);
}
try {
// InfoPathSupport requires validation file
if (!formNode.hasFormValidation()) {