if(ch.wasRemoved()) { Subscription sub = elemSubs.remove(ch.getElementRemoved()); assert sub != null; sub.unsubscribe(); if(ch.wasAdded()) { T elem = ch.getElementAdded(); assert !elemSubs.containsKey(elem); elemSubs.put(elem, f.apply(elem));
if (c.wasAdded()) { Subscription s = c.getElementAdded().registerChangeListener(onAnnotationChange); subscriptions.put(c.getElementAdded(), s); if (c.wasRemoved()) { Subscription s = subscriptions.remove(c.getElementRemoved()); if (s != null) s.dispose(); if (c.wasAdded()) { installPresenter.accept(c.getElementAdded()); if (c.wasRemoved()) { uninstallPresenter.accept(c.getElementRemoved());
getStyleClass().setAll(DEFAULT_STYLE_CLASS); dockingAreaDescriptors.addListener((SetChangeListener.Change<? extends DockingAreaDescriptor> change) -> { if (change.wasAdded()) { dockingAreaIds.add(change.getElementAdded().getId()); } else if (change.wasRemoved()) { dockingAreaIds.remove(change.getElementRemoved().getId()); if (change.wasAdded()) { dockableEntryMap.put(change.getElementAdded().getDockable(), change.getElementAdded()); } else if (change.wasRemoved()) { dockableEntryMap.remove(change.getElementRemoved().getDockable());
/** * @param root * The "checked" state of all the descendants, including the root * itself, will be monitored */ public CheckedTreeItemCollector(CheckBoxTreeItem<T> root) { this.root = root; root.addEventHandler(TreeModificationEvent.ANY, event -> { @SuppressWarnings("unchecked") TreeModificationEvent<T> mod = (TreeModificationEvent<T>) event; T value = mod.getTreeItem().getValue(); boolean checked = mod.getTreeItem().isSelected(); synchronized (this.checkedItems) { if (checked && !this.checkedItems.contains(value)) { this.checkedItems.add(value); } else if (!checked && this.checkedItems.contains(value)) { this.checkedItems.remove(value); } } }); this.checkedItems.addListener((SetChangeListener<T>) change -> { if (change.getElementAdded() != null) { setCheckedStateForValue(root, change.getElementAdded(), true); } if (change.getElementRemoved() != null) { setCheckedStateForValue(root, change.getElementRemoved(), false); } }); }
/** * @param root * The "checked" state of all the descendants, including the root * itself, will be monitored */ public CheckedTreeItemCollector(CheckBoxTreeItem<T> root) { this.root = root; root.addEventHandler(TreeModificationEvent.ANY, event -> { @SuppressWarnings("unchecked") TreeModificationEvent<T> mod = (TreeModificationEvent<T>) event; T value = mod.getTreeItem().getValue(); boolean checked = mod.getTreeItem().isSelected(); synchronized (this.checkedItems) { if (checked && !this.checkedItems.contains(value)) { this.checkedItems.add(value); } else if (!checked && this.checkedItems.contains(value)) { this.checkedItems.remove(value); } } }); this.checkedItems.addListener((SetChangeListener<T>) change -> { if (change.getElementAdded() != null) { setCheckedStateForValue(root, change.getElementAdded(), true); } if (change.getElementRemoved() != null) { setCheckedStateForValue(root, change.getElementRemoved(), false); } }); }
@Override public void onChanged(Change<? extends CaretNode> change) { ParagraphText<PS, SEG, S> paragraphText = ref.get(); if (null == paragraphText) { change.getSet().removeListener(this); return; } if (change.wasAdded()) { CaretNode caret = change.getElementAdded(); caret.columnPositionProperty().addListener(requestLayout2); caret.layoutXProperty().bind(leftInset); caret.layoutYProperty().bind(topInset); paragraphText.getChildren().add(caret); paragraphText.updateSingleCaret(caret); } else if (change.wasRemoved()) { CaretNode caret = change.getElementRemoved(); caret.columnPositionProperty().removeListener(requestLayout2); caret.layoutXProperty().unbind(); caret.layoutYProperty().unbind(); paragraphText.getChildren().remove(caret); } } }
/** * Creates a new instance of this class. */ public DockingPane() { getStyleClass().setAll(DEFAULT_STYLE_CLASS); dockingAreaDescriptors.addListener((SetChangeListener.Change<? extends DockingAreaDescriptor> change) -> { if (change.wasAdded()) { dockingAreaIds.add(change.getElementAdded().getId()); } else if (change.wasRemoved()) { dockingAreaIds.remove(change.getElementRemoved().getId()); } }); dockables.addListener((SetChangeListener.Change<? extends FXDockableEntry> change) -> { if (change.wasAdded()) { // if (dockingAreaIds.contains(dockableEntry.getDockablePreferences().getAreaId())) { // TODO: needed? dockableEntryMap.put(change.getElementAdded().getDockable(), change.getElementAdded()); } else if (change.wasRemoved()) { dockableEntryMap.remove(change.getElementRemoved().getDockable()); } }); setFocusTraversable(false); }
public static <T> Observable<SetChange<T>> fromObservableSetChanges(final ObservableSet<T> source) { return Observable.create((ObservableOnSubscribe<SetChange<T>>) subscriber -> { SetChangeListener<T> listener = c -> { if (c.wasRemoved()) { subscriber.onNext(new SetChange<T>(c.getElementRemoved(), Flag.REMOVED)); } if (c.wasAdded()) { subscriber.onNext(new SetChange<T>(c.getElementAdded(), Flag.ADDED)); } }; source.addListener(listener); subscriber.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeListener(listener))); }).subscribeOn(JavaFxScheduler.platform()); } }
MonocleApplication() { for (InputDevice device : platform.getInputDeviceRegistry().getInputDevices()) { updateDeviceFlags(device, true); } platform.getInputDeviceRegistry().getInputDevices().addListener( (SetChangeListener<InputDevice>) change -> { if (change.wasAdded()) { InputDevice device = change.getElementAdded(); updateDeviceFlags(device, true); } else if (change.wasRemoved()) { InputDevice device = change.getElementRemoved(); updateDeviceFlags(device, false); } } ); }
public static <T> Observable<SetChange<T>> fromObservableSetChanges(final ObservableSet<T> source) { return Observable.create((ObservableOnSubscribe<SetChange<T>>) subscriber -> { SetChangeListener<T> listener = c -> { if (c.wasRemoved()) { subscriber.onNext(new SetChange<T>(c.getElementRemoved(), Flag.REMOVED)); } if (c.wasAdded()) { subscriber.onNext(new SetChange<T>(c.getElementAdded(), Flag.ADDED)); } }; source.addListener(listener); subscriber.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeListener(listener))); }).subscribeOn(JavaFxScheduler.platform()); } }
public static <T> Observable<T> fromObservableSetRemovals(final ObservableSet<T> source) { return Observable.create((ObservableOnSubscribe<T>) subscriber -> { SetChangeListener<T> listener = c -> { if (c.wasRemoved()) { subscriber.onNext(c.getElementRemoved()); } }; source.addListener(listener); subscriber.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeListener(listener))); }).subscribeOn(JavaFxScheduler.platform()); }
public static <T> Observable<T> fromObservableSetRemovals(final ObservableSet<T> source) { return Observable.create((ObservableOnSubscribe<T>) subscriber -> { SetChangeListener<T> listener = c -> { if (c.wasRemoved()) { subscriber.onNext(c.getElementRemoved()); } }; source.addListener(listener); subscriber.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeListener(listener))); }).subscribeOn(JavaFxScheduler.platform()); }
public static <T> Observable<T> fromObservableSetAdds(final ObservableSet<T> source) { return Observable.create((ObservableOnSubscribe<T>) subscriber -> { SetChangeListener<T> listener = c -> { if (c.wasAdded()) { subscriber.onNext(c.getElementAdded()); } }; source.addListener(listener); subscriber.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeListener(listener))); }).subscribeOn(JavaFxScheduler.platform()); }
public static <T> Observable<T> fromObservableSetAdds(final ObservableSet<T> source) { return Observable.create((ObservableOnSubscribe<T>) subscriber -> { SetChangeListener<T> listener = c -> { if (c.wasAdded()) { subscriber.onNext(c.getElementAdded()); } }; source.addListener(listener); subscriber.setDisposable(JavaFxSubscriptions.unsubscribeInEventDispatchThread(() -> source.removeListener(listener))); }).subscribeOn(JavaFxScheduler.platform()); }