Restart update service in callbacks
This commit is contained in:
parent
baf8a8ae1e
commit
d663ca1160
|
@ -42,6 +42,7 @@ import ctbrec.ui.controls.autocomplete.AutoFillTextField;
|
|||
import ctbrec.ui.controls.autocomplete.ObservableListSuggester;
|
||||
import ctbrec.ui.menu.ModelMenuContributor;
|
||||
import ctbrec.ui.tabs.TabSelectionListener;
|
||||
import javafx.application.Platform;
|
||||
import javafx.beans.property.SimpleObjectProperty;
|
||||
import javafx.beans.property.SimpleStringProperty;
|
||||
import javafx.beans.property.StringPropertyBase;
|
||||
|
@ -51,7 +52,6 @@ import javafx.event.ActionEvent;
|
|||
import javafx.geometry.Insets;
|
||||
import javafx.geometry.Point2D;
|
||||
import javafx.geometry.Pos;
|
||||
import javafx.scene.Cursor;
|
||||
import javafx.scene.control.Alert;
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.CheckMenuItem;
|
||||
|
@ -330,18 +330,23 @@ public abstract class AbstractRecordedModelsTab extends Tab implements TabSelect
|
|||
ContextMenu menu = new CustomMouseBehaviorContextMenu();
|
||||
|
||||
ModelMenuContributor.newContributor(getTabPane(), Config.getInstance(), recorder) //
|
||||
.withStartStopCallback(m -> getTabPane().setCursor(Cursor.DEFAULT)) //
|
||||
.withStartStopCallback(m -> Platform.runLater(this::reload)) //
|
||||
.removeModelAfterIgnore(true) //
|
||||
.withPortraitCallback(m -> {
|
||||
.withPortraitCallback(m -> Platform.runLater(() -> {
|
||||
portraitCache.invalidate(m);
|
||||
table.refresh();
|
||||
})
|
||||
.afterwards(table::refresh) //
|
||||
}))
|
||||
.afterwards(() -> Platform.runLater(this::reload))
|
||||
.contributeToMenu(selectedModels, menu);
|
||||
|
||||
return menu;
|
||||
}
|
||||
|
||||
protected void reload() {
|
||||
deselected();
|
||||
selected();
|
||||
}
|
||||
|
||||
protected void addModel(ActionEvent e) {
|
||||
String input = modelInputField.getText().trim();
|
||||
if (StringUtil.isBlank(input)) {
|
||||
|
@ -360,9 +365,11 @@ public abstract class AbstractRecordedModelsTab extends Tab implements TabSelect
|
|||
var newModel = site.createModelFromUrl(url);
|
||||
if (newModel != null) {
|
||||
if (getMarkModelsForLaterRecording()) {
|
||||
new MarkForLaterRecordingAction(getTabPane(), List.of(newModel), true, recorder).execute();
|
||||
new MarkForLaterRecordingAction(modelInputField, List.of(newModel), true, recorder).execute(m -> Platform.runLater(this::reload));
|
||||
} else {
|
||||
new StartRecordingAction(getTabPane(), List.of(newModel), recorder).execute();
|
||||
new StartRecordingAction(modelInputField, List.of(newModel), recorder)
|
||||
.execute()
|
||||
.whenComplete((r, ex) -> Platform.runLater(this::reload));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
@ -387,9 +394,11 @@ public abstract class AbstractRecordedModelsTab extends Tab implements TabSelect
|
|||
if (Objects.equals(siteName.toLowerCase(), site.getClass().getSimpleName().toLowerCase())) {
|
||||
var newModel = site.createModel(modelName);
|
||||
if (getMarkModelsForLaterRecording()) {
|
||||
new MarkForLaterRecordingAction(getTabPane(), List.of(newModel), true, recorder).execute();
|
||||
new MarkForLaterRecordingAction(modelInputField, List.of(newModel), true, recorder).execute(m -> Platform.runLater(this::reload));
|
||||
} else {
|
||||
new StartRecordingAction(getTabPane(), List.of(newModel), recorder).execute();
|
||||
new StartRecordingAction(modelInputField, List.of(newModel), recorder)
|
||||
.execute()
|
||||
.whenComplete((r, ex) -> Platform.runLater(this::reload));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue