@Override
    public Stream<PropertyEditor.Item> fieldsFor(T document) {
        return Stream.of(new SimpleTextFieldItem(
            document.mainInterface().getSimpleName() + " Name",
            document.nameProperty(),
            "The name of the persisted entity in the database. This should only be modified if the database has been changed!",
            editor -> document instanceof HasNameProtectedProperty ?
                lockDecorator(editor, document,
                "This field should ONLY be changed to reflect changes made in the underlying database. "
                + "If you want to change the name of this entity in Java, consider editing the Alias field instead."
                + "\nEnable editing by by right clicking on the field."
            ) : editor
        ));
    }
@author Simon Jonasson
@param <T>  the document type
@since 3.0.0
tool-parent/tool-propertyeditor/src/main/java/com/speedment/tool/propertyeditor/editor/NamePropertyEditor.java