use of com.helospark.tactview.ui.javafx.menu.DefaultMenuContribution in project tactview by helospark.
the class DefaultEditMenuItemConfiguration method selectAllClipsContextMenuItem.
@Bean
@Order(1800)
public SelectableMenuContribution selectAllClipsContextMenuItem(SelectedNodeRepository selectedNodeRepository, TimelineManagerAccessor timelineManager) {
KeyCodeCombination combination = hotKeyRepository.registerOrGetHotKey("selectAllClips", new KeyCodeCombination(KeyCode.A, KeyCombination.CONTROL_DOWN), "Select all clips").getCombination();
return new DefaultMenuContribution(List.of(EDIT_ROOT, SELECT_ROOT, "_All clips"), event -> {
selectedNodeRepository.clearAllSelectedItems();
selectedNodeRepository.addSelectedClips(timelineManager.getAllClipIds());
}, combination);
}
use of com.helospark.tactview.ui.javafx.menu.DefaultMenuContribution in project tactview by helospark.
the class DefaultEditMenuItemConfiguration method selectClipsToRightContextMenuItem.
@Bean
@Order(1802)
public SelectableMenuContribution selectClipsToRightContextMenuItem(SelectedNodeRepository selectedNodeRepository, TimelineManagerAccessor timelineManager, TimelineState state) {
return new DefaultMenuContribution(List.of(EDIT_ROOT, SELECT_ROOT, "Clips to _right"), event -> {
TimelinePosition playbackPosition = state.getPlaybackPosition();
selectedNodeRepository.clearAllSelectedItems();
List<String> clipsIds = new ArrayList<>();
for (var channel : timelineManager.getChannels()) {
for (var clip : channel.getAllClips()) {
if (!clip.getInterval().getEndPosition().isLessThan(playbackPosition)) {
clipsIds.add(clip.getId());
}
}
}
selectedNodeRepository.clearAllSelectedItems();
selectedNodeRepository.addSelectedClips(clipsIds);
});
}
use of com.helospark.tactview.ui.javafx.menu.DefaultMenuContribution in project tactview by helospark.
the class DefaultEditMenuItemConfiguration method cutSelectedAtCurrent.
@Bean
@Order(1911)
public SelectableMenuContribution cutSelectedAtCurrent(AlertDialogFactory dialogFactory, TimelineState timelineState, UiCutHandler uiCutHandler) {
String title = "Set selected endpoint";
KeyCodeCombination combination = hotKeyRepository.registerOrGetHotKey("cutSelectedAtCursor", new KeyCodeCombination(KeyCode.O, KeyCodeCombination.CONTROL_DOWN), title).getCombination();
return new DefaultMenuContribution(List.of(EDIT_ROOT, CUT_MENU_ITEM, title), event -> {
uiCutHandler.cutSelectedUntilCursor(false);
}, combination);
}
use of com.helospark.tactview.ui.javafx.menu.DefaultMenuContribution in project tactview by helospark.
the class DefaultEditMenuItemConfiguration method addInpointMenuItem.
@Bean
@Order(1940)
public SelectableMenuContribution addInpointMenuItem(AlertDialogFactory dialogFactory, TimelineState timelineState, MarkerRepository markerRepository) {
KeyCodeCombination combination = hotKeyRepository.registerOrGetHotKey("addInpoint", new KeyCodeCombination(KeyCode.I, KeyCodeCombination.CONTROL_DOWN, KeyCombination.SHIFT_DOWN), "Add inpoint").getCombination();
return new DefaultMenuContribution(List.of(EDIT_ROOT, MARKER, "Add inpoint"), event -> {
TimelinePosition position = timelineState.getPlaybackPosition();
markerRepository.addMarker(position, new InpointMarker());
}, combination);
}
use of com.helospark.tactview.ui.javafx.menu.DefaultMenuContribution in project tactview by helospark.
the class DefaultEditMenuItemConfiguration method addGeneralMarkerMenuItem.
@Bean
@Order(1942)
public SelectableMenuContribution addGeneralMarkerMenuItem(AlertDialogFactory dialogFactory, TimelineState timelineState, MarkerRepository markerRepository) {
String name = "Add marker";
KeyCodeCombination combination = hotKeyRepository.registerOrGetHotKey(name, new KeyCodeCombination(KeyCode.M, KeyCodeCombination.CONTROL_DOWN, KeyCombination.SHIFT_DOWN), name).getCombination();
return new DefaultMenuContribution(List.of(EDIT_ROOT, MARKER, name), event -> {
TimelinePosition position = timelineState.getPlaybackPosition();
Optional<String> result = dialogFactory.showTextInputDialog("Add marker", "Label of marker", "Something interesting");
if (result.isPresent()) {
markerRepository.addMarker(position, new GeneralMarker(result.get()));
}
}, combination);
}
Aggregations