From d46e4be4509e8418bf9fdd28a2d7b42c062594a2 Mon Sep 17 00:00:00 2001 From: 0xboobface <0xboobface@gmail.com> Date: Sat, 12 Jan 2019 17:25:53 +0100 Subject: [PATCH] Introduced tab for LiveJasmin to force logins --- .../ctbrec/ui/sites/jasmin/LiveJasminTab.java | 54 +++++++++++++++++++ .../sites/jasmin/LiveJasminTabProvider.java | 2 +- 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTab.java diff --git a/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTab.java b/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTab.java new file mode 100644 index 00000000..ddde8414 --- /dev/null +++ b/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTab.java @@ -0,0 +1,54 @@ +package ctbrec.ui.sites.jasmin; + +import ctbrec.sites.Site; +import ctbrec.ui.FollowedTab; +import ctbrec.ui.PaginatedScheduledService; +import ctbrec.ui.ThumbOverviewTab; +import javafx.concurrent.WorkerStateEvent; +import javafx.scene.Scene; +import javafx.scene.control.Label; +import javafx.scene.input.KeyCode; +import javafx.scene.input.KeyEvent; + +public class LiveJasminTab extends ThumbOverviewTab implements FollowedTab { + private Label status; + + public LiveJasminTab(String title, PaginatedScheduledService updateService, Site site) { + super(title, updateService, site); + status = new Label("Logging in..."); + grid.getChildren().add(status); + } + + @Override + protected void createGui() { + super.createGui(); + } + + @Override + protected void onSuccess() { + grid.getChildren().remove(status); + super.onSuccess(); + } + + @Override + protected void onFail(WorkerStateEvent event) { + status.setText("Login failed"); + super.onFail(event); + } + + @Override + public void selected() { + status.setText("Logging in..."); + super.selected(); + } + + public void setScene(Scene scene) { + scene.addEventFilter(KeyEvent.KEY_PRESSED, event -> { + if(this.isSelected()) { + if(event.getCode() == KeyCode.DELETE) { + follow(selectedThumbCells, false); + } + } + }); + } +} diff --git a/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTabProvider.java b/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTabProvider.java index ee135d5d..66fd05e8 100644 --- a/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTabProvider.java +++ b/client/src/main/java/ctbrec/ui/sites/jasmin/LiveJasminTabProvider.java @@ -42,7 +42,7 @@ public class LiveJasminTabProvider extends TabProvider { private ThumbOverviewTab createTab(String title, String url) { LiveJasminUpdateService s = new LiveJasminUpdateService(liveJasmin, url); - ThumbOverviewTab tab = new ThumbOverviewTab(title, s, liveJasmin); + LiveJasminTab tab = new LiveJasminTab(title, s, liveJasmin); tab.setRecorder(liveJasmin.getRecorder()); s.setPeriod(Duration.seconds(60)); return tab;