Add optional confirmation dialog for stop recording action
This commit is contained in:
parent
b6db623078
commit
0d2826ebf7
|
@ -12,7 +12,7 @@ public class StopRecordingAction extends ModelMassEditAction {
|
|||
|
||||
public StopRecordingAction(Node source, List<? extends Model> models, Recorder recorder) {
|
||||
super(source, models);
|
||||
action = (m) -> {
|
||||
action = m -> {
|
||||
try {
|
||||
recorder.stopRecording(m);
|
||||
} catch(Exception e) {
|
||||
|
|
|
@ -774,11 +774,20 @@ public class RecordedModelsTab extends Tab implements TabSelectionListener {
|
|||
}
|
||||
|
||||
private void stopAction(List<JavaFxModel> selectedModels) {
|
||||
List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).collect(Collectors.toList());
|
||||
new StopRecordingAction(getTabPane(), models, recorder).execute(m -> Platform.runLater(() -> {
|
||||
table.getSelectionModel().clearSelection(table.getItems().indexOf(m));
|
||||
table.getItems().remove(m);
|
||||
}));
|
||||
boolean confirmed = true;
|
||||
if (Config.getInstance().getSettings().confirmationForDangerousActions) {
|
||||
int n = selectedModels.size();
|
||||
String plural = n > 1 ? "s" : "";
|
||||
String header = "This will stop the recording of " + n + " model" + plural;
|
||||
confirmed = Dialogs.showConfirmDialog("Stop Recording", "Continue?", header, table.getScene());
|
||||
}
|
||||
if (confirmed) {
|
||||
List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).collect(Collectors.toList());
|
||||
new StopRecordingAction(getTabPane(), models, recorder).execute(m -> Platform.runLater(() -> {
|
||||
table.getSelectionModel().clearSelection(table.getItems().indexOf(m));
|
||||
table.getItems().remove(m);
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
private void pauseRecording(List<JavaFxModel> selectedModels) {
|
||||
|
|
|
@ -479,7 +479,16 @@ public class RecordingsTab extends Tab implements TabSelectionListener {
|
|||
}
|
||||
|
||||
private void stopRecording(List<Model> selectedModels) {
|
||||
new StopRecordingAction(getTabPane(), selectedModels, recorder).execute();
|
||||
boolean confirmed = true;
|
||||
if (Config.getInstance().getSettings().confirmationForDangerousActions) {
|
||||
int n = selectedModels.size();
|
||||
String plural = n > 1 ? "s" : "";
|
||||
String header = "This will stop the recording of " + n + " model" + plural;
|
||||
confirmed = Dialogs.showConfirmDialog("Stop Recording", "Continue?", header, table.getScene());
|
||||
}
|
||||
if (confirmed) {
|
||||
new StopRecordingAction(getTabPane(), selectedModels, recorder).execute();
|
||||
}
|
||||
}
|
||||
|
||||
private void pauseRecording(List<Model> selectedModels) {
|
||||
|
|
Loading…
Reference in New Issue