From 492ef744590e9a5267e858eea97e089bb2b76263 Mon Sep 17 00:00:00 2001 From: 0xb00bface <0xboobface@gmail.com> Date: Tue, 22 Dec 2020 13:14:47 +0100 Subject: [PATCH] Add "record until" in thumb overview context menu --- .../main/java/ctbrec/ui/tabs/ThumbOverviewTab.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/client/src/main/java/ctbrec/ui/tabs/ThumbOverviewTab.java b/client/src/main/java/ctbrec/ui/tabs/ThumbOverviewTab.java index bf21b2ae..cc826550 100644 --- a/client/src/main/java/ctbrec/ui/tabs/ThumbOverviewTab.java +++ b/client/src/main/java/ctbrec/ui/tabs/ThumbOverviewTab.java @@ -39,6 +39,7 @@ import ctbrec.ui.SiteUiFactory; import ctbrec.ui.TipDialog; import ctbrec.ui.TokenLabel; import ctbrec.ui.action.OpenRecordingsDir; +import ctbrec.ui.action.SetStopDateAction; import ctbrec.ui.controls.FasterVerticalScrollPaneSkin; import ctbrec.ui.controls.SearchBox; import ctbrec.ui.controls.SearchPopover; @@ -464,10 +465,10 @@ public class ThumbOverviewTab extends Tab implements TabSelectionListener { stop.setOnAction(e -> startStopAction(getSelectedThumbCells(cell), false)); MenuItem startStop = recorder.isTracked(cell.getModel()) ? stop : start; + MenuItem recordUntil = new MenuItem("Start Recording Until"); + recordUntil.setOnAction(e -> startRecordingWithTimeLimit(getSelectedThumbCells(cell))); MenuItem addPaused = new MenuItem("Add in paused state"); addPaused.setOnAction(e -> addPaused(getSelectedThumbCells(cell))); - MenuItem recordUntil = new MenuItem("Record Until"); - recordUntil.setOnAction(e -> LOG.debug("Record Later not implemented, yet")); MenuItem recordLater = new MenuItem("Record Later"); recordLater.setOnAction(e -> LOG.debug("Record Later not implemented, yet")); @@ -504,7 +505,7 @@ public class ThumbOverviewTab extends Tab implements TabSelectionListener { if(modelIsTrackedByRecorder) { contextMenu.getItems().add(pauseResume); } else { - contextMenu.getItems().addAll(addPaused/*, recordUntil, recordLater*/); + contextMenu.getItems().addAll(recordUntil, addPaused/*, recordLater*/); } contextMenu.getItems().add(new SeparatorMenuItem()); if(site.supportsFollow()) { @@ -525,6 +526,13 @@ public class ThumbOverviewTab extends Tab implements TabSelectionListener { return contextMenu; } + private void startRecordingWithTimeLimit(List list) { + for (ThumbCell cell : list) { + cell.startStopAction(true); + new SetStopDateAction(cell, cell.getModel(), recorder).execute(); + } + } + private void refresh() { if (updateService.isRunning()) { updateService.cancel();