class SimpleTextFieldItem extends AbstractLabelTooltipItem {
    
    private final StringProperty property;
    
    /**
     * Creates a new SimpleTextFieldItem. The property will bind to the
     * editor node's TextField.textProperty()
     * 
     * @param label     this editor's label text
     * @param property  the property to edit
     * @param tooltip   this editor's tooltip text
     */    
    public SimpleTextFieldItem(String label, StringProperty property, String tooltip) {
        this(label, property, tooltip, NO_DECORATOR);
    }
    
    /**
     * Creates a new SimpleTextFieldItem. The property will bind to the
     * editor node's TextField.textProperty()
     * 
     * @param label      this editor's label text
     * @param property   the property to edit
     * @param tooltip    this editor's tooltip text
     * @param decorator  the editor decorator
     */    
    public SimpleTextFieldItem(String label, StringProperty property, String tooltip, UnaryOperator<Node> decorator) {
        super(label, tooltip, decorator);
        this.property = property;
    }

    @Override
    protected Node createUndecoratedEditor() {<FILL_FUNCTION_BODY>}    
}

        final TextField box = new TextField( property.get() );
        property.bindBidirectional(box.textProperty() );
        return box;
    
<methods>public final javafx.scene.Node createEditor() ,public javafx.scene.Node createLabel() ,public final void onRemove() <variables>protected static final UnaryOperator<javafx.scene.Node> NO_DECORATOR,private final non-sealed UnaryOperator<javafx.scene.Node> editorDecorator,private final non-sealed java.lang.String label,private final non-sealed Map<ObservableValue<java.lang.Object>,ChangeListener<java.lang.Object>> listeners,private final non-sealed java.lang.String tooltip