42 lines
1.3 KiB
Java
42 lines
1.3 KiB
Java
package ctbrec.ui;
|
|
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import ctbrec.ui.CtbrecApplication.Release;
|
|
import javafx.geometry.Pos;
|
|
import javafx.scene.control.Button;
|
|
import javafx.scene.control.Label;
|
|
import javafx.scene.control.Tab;
|
|
import javafx.scene.layout.VBox;
|
|
import javafx.scene.web.WebEngine;
|
|
import javafx.scene.web.WebView;
|
|
|
|
public class UpdateTab extends Tab {
|
|
|
|
private static final transient Logger LOG = LoggerFactory.getLogger(UpdateTab.class);
|
|
|
|
private WebView browser;
|
|
|
|
public UpdateTab(Release latest) {
|
|
setText("Update Available");
|
|
VBox vbox = new VBox(10);
|
|
vbox.getChildren().add(new Label("New Version available " + latest.getVersion()));
|
|
Button button = new Button("Download");
|
|
button.setOnAction((e) -> DesktopIntergation.open(latest.getHtmlUrl()));
|
|
vbox.getChildren().add(button);
|
|
vbox.setAlignment(Pos.CENTER);
|
|
|
|
browser = new WebView();
|
|
try {
|
|
WebEngine webEngine = browser.getEngine();
|
|
webEngine.load("https://raw.githubusercontent.com/0xboobface/ctbrec/master/CHANGELOG.md");
|
|
vbox.getChildren().add(browser);
|
|
} catch (Exception e) {
|
|
LOG.error("Couldn't load changelog", e);
|
|
}
|
|
|
|
setContent(vbox);
|
|
}
|
|
}
|