@Override
    public Stream<Item> fieldsFor(T document) {
        return Stream.of(new SimpleTextFieldItem(
                 "Foreign Database Name",
                 document.foreignDatabaseNameProperty(), 
                 "The name of the database that this foreign key references.",
                 editor -> ItemUtil.lockDecorator(editor, document, ItemUtil.DATABASE_RELATION_TOOLTIP)
            ),
            new SimpleTextFieldItem(
                "Foreign Schema Name",
                document.foreignSchemaNameProperty(), 
                "The name of the schema that this foreign key references.",
                 editor -> ItemUtil.lockDecorator(editor, document, ItemUtil.DATABASE_RELATION_TOOLTIP)
            ),
            new SimpleTextFieldItem(
                "Foreign Table Name",
                document.foreignTableNameProperty(), 
                "The name of the database table that this foreign key references.",
                 editor -> ItemUtil.lockDecorator(editor, document, ItemUtil.DATABASE_RELATION_TOOLTIP)
            ),
            new SimpleTextFieldItem(
                "Foreign Column Name",
                document.foreignColumnNameProperty(), 
                "The name of the database column that this foreign key references.",
                 editor -> ItemUtil.lockDecorator(editor, document, ItemUtil.DATABASE_RELATION_TOOLTIP)
            )
        );
    }
@author Simon Jonasson
@param <T>  the document type
@since 3.0.0
tool-parent/tool-propertyeditor/src/main/java/com/speedment/tool/propertyeditor/editor/ForeignKeyColumnEditor.java