Class SelectionModel
- All Implemented Interfaces:
IAdaptable.Bound<IViewer>,IDisposable
SelectionModel is used to store the current viewer's selection.
It represents the selection as an ordered list of IContentParts.
Thereby, it supports a multi-selection and allows to identify a primary
selection (the head element of the list) that may be treated specially.-
Property Summary
PropertiesTypePropertyDescriptionjavafx.beans.property.ReadOnlyListProperty<IContentPart<? extends javafx.scene.Node>>Returns an unmodifiable read-only list property that represents the current selection.Properties inherited from class org.eclipse.gef.common.adapt.IAdaptable.Bound.Impl
adaptable -
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.gef.common.adapt.IAdaptable.Bound
IAdaptable.Bound.Impl<T extends IAdaptable> -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringName of theselectionUnmodifiableProperty(). -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidappendToSelection(List<? extends IContentPart<? extends javafx.scene.Node>> toBeAppended) Updates the current selection by adding the givenIContentParts to it, preserving already selected elements.voidappendToSelection(IContentPart<? extends javafx.scene.Node> toBeAppended) Updates the current selection by adding the givenIContentPartto it, preserving already selected elements.voidClears the current selection.voiddispose()javafx.collections.ObservableList<IContentPart<? extends javafx.scene.Node>>Returns an unmodifiable observable list of the currently selectedIContentParts.booleanisSelected(IContentPart<? extends javafx.scene.Node> contentPart) Returns whether the givenIContentPartis part of the current selection.voidprependToSelection(List<? extends IContentPart<? extends javafx.scene.Node>> toBePrepended) Updates the current selection by adding the givenIContentParts to it, preserving already selected elements.voidprependToSelection(IContentPart<? extends javafx.scene.Node> toBePrepended) Updates the current selection by adding the givenIContentPartto it, preserving already selected elements.voidremoveFromSelection(Collection<? extends IContentPart<? extends javafx.scene.Node>> contentParts) Removes the givenIContentParts from the current selection if they are contained.voidremoveFromSelection(IContentPart<? extends javafx.scene.Node> contentPart) Removes the givenIContentPartfrom the current selection if it is currently selected.javafx.beans.property.ReadOnlyListProperty<IContentPart<? extends javafx.scene.Node>>Returns an unmodifiable read-only list property that represents the current selection.voidsetAdaptable(IViewer adaptable) voidsetSelection(List<? extends IContentPart<? extends javafx.scene.Node>> selection) Replaces the current selection with the given list ofIContentParts.voidsetSelection(IContentPart<? extends javafx.scene.Node> newSelection) Replaces the current selection with the givenIContentPart.Methods inherited from class org.eclipse.gef.common.adapt.IAdaptable.Bound.Impl
adaptableProperty, getAdaptable
-
Property Details
-
selectionUnmodifiable
public javafx.beans.property.ReadOnlyListProperty<IContentPart<? extends javafx.scene.Node>> selectionUnmodifiablePropertyReturns an unmodifiable read-only list property that represents the current selection.- See Also:
-
-
Field Details
-
SELECTION_PROPERTY
Name of theselectionUnmodifiableProperty().- See Also:
-
-
Constructor Details
-
SelectionModel
public SelectionModel()
-
-
Method Details
-
appendToSelection
Updates the current selection by adding the givenIContentPartto it, preserving already selected elements.If the given content part is not already selected, it will be added to the back of the given selection, otherwise it will be moved to the back. A member of the current selection that is not contained in the given list, will remain selected.
- Parameters:
toBeAppended- TheIContentPartto add to/move to the back of the current selection.
-
appendToSelection
public void appendToSelection(List<? extends IContentPart<? extends javafx.scene.Node>> toBeAppended) Updates the current selection by adding the givenIContentParts to it, preserving already selected elements.A member of the given list that is not contained in the current selection, will be added to it. A member of the current selection that is not contained in the given list, will remain selected.
The selection order will be adjusted, so that the members of the given list are added at the back (in the order they are given), preceded by the already selected elements not contained in the given list (preserving their relative order).
- Parameters:
toBeAppended- TheIContentParts to add to/move to the back of the current selection.
-
clearSelection
public void clearSelection()Clears the current selection. -
dispose
public void dispose()- Specified by:
disposein interfaceIDisposable- Since:
- 1.1
-
getSelectionUnmodifiable
public javafx.collections.ObservableList<IContentPart<? extends javafx.scene.Node>> getSelectionUnmodifiable()Returns an unmodifiable observable list of the currently selectedIContentParts.- Returns:
- An unmodifiable observable list of the currently selected
IContentParts.
-
isSelected
Returns whether the givenIContentPartis part of the current selection.- Parameters:
contentPart- TheIContentPartwhich is checked for containment.- Returns:
trueif theIContentPartis contained by the current selection.
-
prependToSelection
Updates the current selection by adding the givenIContentPartto it, preserving already selected elements.If the given content part is not already selected, it will be added to the front of the given selection, otherwise it will be moved to the front. A member of the current selection that is not contained in the given list, will remain selected.
- Parameters:
toBePrepended- TheIContentPartto add to/move to the front of the current selection.
-
prependToSelection
public void prependToSelection(List<? extends IContentPart<? extends javafx.scene.Node>> toBePrepended) Updates the current selection by adding the givenIContentParts to it, preserving already selected elements.A member of the given list that is not contained in the current selection, will be added to it. A member of the current selection that is not contained in the given list, will remain selected.
The selection order will be adjusted, so that the members of the given list are added in front (in the order they are given), followed by the already selected elements not contained in the given list (preserving their relative order).
- Parameters:
toBePrepended- TheIContentParts to add to/move to the front of the current selection.
-
removeFromSelection
public void removeFromSelection(Collection<? extends IContentPart<? extends javafx.scene.Node>> contentParts) Removes the givenIContentParts from the current selection if they are contained. Ignores those that are not part of the current selection.- Parameters:
contentParts- TheIContentParts which are removed from the selection.
-
removeFromSelection
Removes the givenIContentPartfrom the current selection if it is currently selected. Will not change the current selection otherwise.- Parameters:
contentPart- TheIContentPartthat is to be removed from the selection.
-
selectionUnmodifiableProperty
public javafx.beans.property.ReadOnlyListProperty<IContentPart<? extends javafx.scene.Node>> selectionUnmodifiableProperty()Returns an unmodifiable read-only list property that represents the current selection.- See Also:
-
setAdaptable
- Specified by:
setAdaptablein interfaceIAdaptable.Bound<IViewer>- Overrides:
setAdaptablein classIAdaptable.Bound.Impl<IViewer>
-
setSelection
Replaces the current selection with the givenIContentPart.- Parameters:
newSelection- TheIContentPartconstituting the new selection.
-
setSelection
Replaces the current selection with the given list ofIContentParts.- Parameters:
selection- The list ofIContentParts constituting the new selection.
-