Zomis / Brainduck

Brainfuck Interpreter in Java/Groovy, with a Groovy DSL
40 stars 1 forks source link

Auto-scroll memory when selection goes outside the visible #37

Open Zomis opened 8 years ago

Zomis commented 8 years ago

Scroll the memory list when the current memory index is not visible

Zomis commented 8 years ago

This doesn't seem to be that easy, as JavaFX 8 doesn't seem to provide the methods one could expect for this.

Some code I have been trying, none of which prints anything at all.

    for (javafx.scene.Node node : memoryList.lookupAll(".scroll-bar")) {
        if (node instanceof ScrollBar) {
            final ScrollBar bar = (ScrollBar) node;
            bar.valueProperty().addListener(new ChangeListener<Number>() {
                @Override public void changed(ObservableValue<? extends Number> value, Number oldValue, Number newValue) {
                    System.out.println(bar.getOrientation() + " " + newValue);
                }
            });
        }
    }

    this.memoryList.onScrollFinished = {ScrollEvent event ->
        def units = event.getTextDeltaYUnits()
        println "units $units y $event.y textDeltaY $event.textDeltaY sceneY $event.sceneY"
    } as javafx.event.EventHandler<ScrollEvent>
Zomis commented 8 years ago

This might help with implementing this: https://github.com/TomasMikula/Flowless See also the Javadoc for Cell.updateItem