public ProgressFeedback getProgressFeedback()

in codeexplorer/src/main/java/nl/obren/sokrates/codeexplorer/common/ProgressFeedbackPane.java [35:76]


    public ProgressFeedback getProgressFeedback() {
        return new ProgressFeedback() {
            @Override
            public void start() {
                cancel = false;
                Platform.runLater(() -> {
                    progressBar.setProgress(-1);
                    ProgressFeedbackPane.this.setCenter(pane);
                });
            }

            @Override
            public void setText(String text) {
                Platform.runLater(() -> {
                    label.setText(StringUtils.abbreviateMiddle(text, " ... ", 40));
                });
            }

            @Override
            public void progress(int currentValue, int endValue) {
                Platform.runLater(() -> {
                    if (endValue <= 0) {
                        progressBar.setProgress(ProgressIndicator.INDETERMINATE_PROGRESS);
                    } else {
                        progressBar.setProgress((double) currentValue / endValue);
                    }
                });
            }

            @Override
            public boolean canceled() {
                return cancel;
            }

            @Override
            public void end() {
                Platform.runLater(() -> {
                    ProgressFeedbackPane.this.setCenter(null);
                });
            }
        };
    }