@Override public SelectionControl<H, Element> select(final String uuid) { return select(Collections.singletonList(uuid)); }
@Override public SelectionControl<H, Element> select(final String uuid) { selectionControl.select(uuid); onSelect(Collections.singletonList(uuid)); return this; }
public void onCanvasElementSelected(final CanvasSelectionEvent event) { checkNotNull("event", event); if (null == canvasHandler) { return; } final boolean isSameCtxt = canvasHandler.equals(event.getCanvasHandler()); final boolean isSingleSelection = event.getIdentifiers().size() == 1; final boolean isCanvasRoot = isSingleSelection && event.getIdentifiers().iterator().next().equals(getRootUUID()); final boolean equals = items.entrySet().stream() .filter(Map.Entry::getValue) .map(Map.Entry::getKey) .anyMatch(uuid -> event.getIdentifiers().contains(uuid)); if (isSameCtxt && !isCanvasRoot && !equals) { this.clearSelection(false); select(event.getIdentifiers()); } }
@Override public void onChanged(final SelectionManager.SelectedItems selectedItems) { final SelectionManager.ChangedItems changedItems = selectedItems.getChanged(); getSelectionControl().deselect(new Lists.Builder<String>() .addAll(shapesToIdentifiers(changedItems.getRemovedShapes().toList())) .addAll(shapesToIdentifiers(changedItems.getRemovedConnectors().toList())).build()); getSelectionControl().select(new Lists.Builder<String>() .addAll(shapesToIdentifiers(changedItems.getAddedShapes().toList())) .addAll(shapesToIdentifiers(changedItems.getAddedConnectors().toList())).build()); defaultSelectionListener.onChanged(selectedItems); } };