Change Record later to Bookmark

This commit is contained in:
Jafea7 2025-04-23 15:49:41 +10:00
parent 9ff933daf1
commit a973306869
8 changed files with 16 additions and 18 deletions

View File

@ -63,7 +63,7 @@ public class RecordUntilDialog {
removeButton = new RadioButton("remove model"); removeButton = new RadioButton("remove model");
removeButton.setSelected(model.getRecordUntilSubsequentAction() == REMOVE); removeButton.setSelected(model.getRecordUntilSubsequentAction() == REMOVE);
removeButton.setToggleGroup(toggleGroup); removeButton.setToggleGroup(toggleGroup);
RadioButton recordLaterButton = new RadioButton("mark for later"); RadioButton recordLaterButton = new RadioButton("bookmark");
recordLaterButton.setSelected(model.getRecordUntilSubsequentAction() == RECORD_LATER); recordLaterButton.setSelected(model.getRecordUntilSubsequentAction() == RECORD_LATER);
recordLaterButton.setToggleGroup(toggleGroup); recordLaterButton.setToggleGroup(toggleGroup);
var row = new VBox(); var row = new VBox();

View File

@ -31,7 +31,7 @@ public class LaterGroupAction extends ModelMassEditAction {
recorder.markForLaterRecording(m, true); recorder.markForLaterRecording(m, true);
} }
} catch (InvalidKeyException | NoSuchAlgorithmException | IOException e) { } catch (InvalidKeyException | NoSuchAlgorithmException | IOException e) {
Platform.runLater(() -> Dialogs.showError(source.getScene(), "Couldn't change model state", "Mark for later recording of " + m.getName() + " failed", e)); Platform.runLater(() -> Dialogs.showError(source.getScene(), "Couldn't change model state", "Bookmarking of " + m.getName() + " failed", e));
} }
}; };
} }

View File

@ -16,8 +16,8 @@ public class MarkForLaterRecordingAction extends ModelMassEditAction {
try { try {
recorder.markForLaterRecording(m, recordLater); recorder.markForLaterRecording(m, recordLater);
} catch (Exception e) { } catch (Exception e) {
Platform.runLater(() -> Dialogs.showError(source.getScene(), "Couldn't model mark model for later recording", Platform.runLater(() -> Dialogs.showError(source.getScene(), "Couldn't bookmark model for later recording",
"Marking for later recording of " + m.getName() + " failed", e)); "Bookmarking of " + m.getName() + " failed", e));
} }
}; };
} }

View File

@ -59,7 +59,7 @@ public class ModelGroupMenuBuilder {
var stopAllOfGroup = new MenuItem("Stop all in group"); var stopAllOfGroup = new MenuItem("Stop all in group");
stopAllOfGroup.setOnAction(e -> new StopGroupAction(source, recorder, model).execute(callback)); stopAllOfGroup.setOnAction(e -> new StopGroupAction(source, recorder, model).execute(callback));
var laterAllOfGroup = new MenuItem("Record later all in group"); var laterAllOfGroup = new MenuItem("Bookmark all in group");
laterAllOfGroup.setOnAction(e -> new LaterGroupAction(source, recorder, model).execute(callback)); laterAllOfGroup.setOnAction(e -> new LaterGroupAction(source, recorder, model).execute(callback));
menu.getItems().addAll(editGroup, resumeAllOfGroup, pauseAllOfGroup, stopAllOfGroup, laterAllOfGroup); menu.getItems().addAll(editGroup, resumeAllOfGroup, pauseAllOfGroup, stopAllOfGroup, laterAllOfGroup);

View File

@ -295,9 +295,9 @@ public class ModelMenuContributor {
private void addRecordLater(ContextMenu menu, List<Model> selectedModels) { private void addRecordLater(ContextMenu menu, List<Model> selectedModels) {
var first = selectedModels.get(0); var first = selectedModels.get(0);
var recordLater = new MenuItem("Record Later"); var recordLater = new MenuItem("Add bookmark");
recordLater.setOnAction(e -> recordLater(selectedModels, true)); recordLater.setOnAction(e -> recordLater(selectedModels, true));
var removeRecordLater = new MenuItem("Forget Model"); var removeRecordLater = new MenuItem("Remove bookmark");
removeRecordLater.setOnAction(e -> recordLater(selectedModels, false)); removeRecordLater.setOnAction(e -> recordLater(selectedModels, false));
var addRemoveBookmark = recorder.isMarkedForLaterRecording(first) ? removeRecordLater : recordLater; var addRemoveBookmark = recorder.isMarkedForLaterRecording(first) ? removeRecordLater : recordLater;
if (recorder.isTracked(first)) { if (recorder.isTracked(first)) {

View File

@ -17,8 +17,7 @@ import javafx.concurrent.WorkerStateEvent;
import javafx.geometry.Insets; import javafx.geometry.Insets;
import javafx.scene.layout.BorderPane; import javafx.scene.layout.BorderPane;
import javafx.util.Duration; import javafx.util.Duration;
import org.slf4j.Logger; import lombok.extern.slf4j.Slf4j;
import org.slf4j.LoggerFactory;
import java.util.List; import java.util.List;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
@ -26,9 +25,8 @@ import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.function.Predicate; import java.util.function.Predicate;
@slf4j
public class RecordLaterTab extends AbstractRecordedModelsTab { public class RecordLaterTab extends AbstractRecordedModelsTab {
private static final Logger LOG = LoggerFactory.getLogger(RecordLaterTab.class);
private ScheduledService<List<JavaFxModel>> updateService; private ScheduledService<List<JavaFxModel>> updateService;
public RecordLaterTab(String title, Recorder recorder, List<Site> sites) { public RecordLaterTab(String title, Recorder recorder, List<Site> sites) {
@ -117,7 +115,7 @@ public class RecordLaterTab extends AbstractRecordedModelsTab {
return new Task<>() { return new Task<>() {
@Override @Override
public List<JavaFxModel> call() { public List<JavaFxModel> call() {
LOG.trace("Updating models marked for later recording"); log.trace("Updating bookmarked models");
return recorder.getModels().stream().filter(Model::isMarkedForLaterRecording).map(JavaFxModel::new).toList(); return recorder.getModels().stream().filter(Model::isMarkedForLaterRecording).map(JavaFxModel::new).toList();
} }
}; };

View File

@ -22,7 +22,7 @@ public class RecordedTab extends Tab implements TabSelectionListener, ShutdownLi
setClosable(false); setClosable(false);
recordedModelsTab = new RecordedModelsTab("Active", recorder, sites); recordedModelsTab = new RecordedModelsTab("Active", recorder, sites);
recordLaterTab = new RecordLaterTab("Later", recorder, sites); recordLaterTab = new RecordLaterTab("Bookmarked", recorder, sites);
tabPane = new TabPane(); tabPane = new TabPane();
tabPane.setSide(Side.LEFT); tabPane.setSide(Side.LEFT);

View File

@ -85,7 +85,7 @@ public class RecorderServlet extends AbstractCtbrecServlet {
switch (requestDto.getAction()) { switch (requestDto.getAction()) {
case "start": case "start":
log.debug("Starting recording for model {} - {}", model.getName(), model.getUrl()); log.debug("Starting recording for model {} - {}", model.getName(), model.getUrl());
log.trace("Model marked: {}", model.isMarkedForLaterRecording()); log.trace("Model bookmarked: {}", model.isMarkedForLaterRecording());
log.trace("Model paused: {}", model.isSuspended()); log.trace("Model paused: {}", model.isSuspended());
log.trace("Model forced: {}", model.isForcePriority()); log.trace("Model forced: {}", model.isForcePriority());
log.trace("Model until: {}", model.getRecordUntil().equals(Instant.ofEpochMilli(Model.RECORD_INDEFINITELY)) ? "no limit" : model.getRecordUntil()); log.trace("Model until: {}", model.getRecordUntil().equals(Instant.ofEpochMilli(Model.RECORD_INDEFINITELY)) ? "no limit" : model.getRecordUntil());
@ -258,14 +258,14 @@ public class RecorderServlet extends AbstractCtbrecServlet {
sendModelGroups(resp, recorder.getModelGroups()); sendModelGroups(resp, recorder.getModelGroups());
break; break;
case "markForLater": case "markForLater":
log.debug("Mark model {} for later recording", model.getName()); log.debug("Bookmark model {} for later recording", model.getName());
response = "{\"status\": \"success\", \"msg\": \"Model marked for later recording\"}"; response = "{\"status\": \"success\", \"msg\": \"Model bookmarked for later recording\"}";
responseWriter.write(response); responseWriter.write(response);
recorder.markForLaterRecording(model, true); recorder.markForLaterRecording(model, true);
break; break;
case "unmarkForLater": case "unmarkForLater":
log.debug("Unmark model {} for later recording", model.getName()); log.debug("Unbookmark model {} for later recording", model.getName());
response = "{\"status\": \"success\", \"msg\": \"Model has been unmarked\"}"; response = "{\"status\": \"success\", \"msg\": \"Model has been unbookmarked\"}";
responseWriter.write(response); responseWriter.write(response);
recorder.markForLaterRecording(model, false); recorder.markForLaterRecording(model, false);
break; break;