public static PropertyEditor findPropertyEditor(Class<?> originalValueClass) {
		if (originalValueClass == null) {
			return null;
		}

		Class<?> valueClass = originalValueClass;
		while (valueClass != null) {
			//
			if (valueClass.getEnumConstants() != null) {
				// Hack Alert!: we have to put this code here to prevent the built-in EnumEditor
				//              from being used on Java 1.7.  That editor uses bad values for
				//              the display of enum values.
				PropertyEditorManager.registerEditor(originalValueClass, EnumEditor.class);
			}

			PropertyEditor editor = PropertyEditorManager.findEditor(valueClass);
			if (editor instanceof NoRegisteredEditorPropertyEditor) {
				return null; // This editor is a marker to indicate that we have already
				// looked for this editor and did not find one.
			}
			if (editor != null) {
				PropertyEditorManager.registerEditor(originalValueClass, editor.getClass());
				return editor;
			}
			valueClass = valueClass.getSuperclass();
		}
		PropertyEditorManager.registerEditor(originalValueClass,
			NoRegisteredEditorPropertyEditor.class);
		return null;

	}
Returns true if the given string is in the searchString and not between a pair of quotes.
Note the character MUST NOT BE a quote.
@param stringToSearch the string to search
@param textToLocate the text to search for.
@return true if the given text is in the searchString and not between a pair of quotes.
Ghidra/Framework/Gui/src/main/java/ghidra/framework/options/AbstractOptions.java