java.lang.Object
javafx.css.Selector
javafx.css.CompoundSelector
A compound selector which behaves according to the CSS standard. The selector is
composed of one or more
Selectors
, along with an array of
CompoundSelectorRelationships
indicating the required relationship at each
stage. There must be exactly one less Combinator
than
there are selectors.
For example, the parameters [selector1, selector2, selector3]
and [Combinator.CHILD, Combinator.DESCENDANT]
will match
a component when all of the following conditions hold:
- The component itself is matched by selector3
- The component has an ancestor which is matched by selector2
- The ancestor matched in step 2 is a direct CHILD of a component matched by selector1
selector1 > selector2 selector3
. The greater-than (>)
between selector1 and selector2 specifies a direct CHILD, whereas the
whitespace between selector2 and selector3 corresponds to
Combinator.DESCENDANT
.- Since:
- 9
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Gets whether thisSelector
applies to the givenStyleable
.boolean
applies
(Styleable styleable, Set<PseudoClass>[] triggerStates, int depth) Gets whether thisSelector
applies to the givenStyleable
.Creates aMatch
.The selectors that make up this compound selectorboolean
stateMatches
(Styleable styleable, Set<PseudoClass> states) Determines whether the current state of theNode
and its parents matches the pseudo-classes defined (if any) for this selector.protected final void
writeBinary
(DataOutputStream os, StyleConverter.StringStore stringStore) WritesSelector
data in binary form to givenDataOutputStream
.Methods declared in class javafx.css.Selector
createSelector, getOrdinal, getRule, setOrdinal
-
Method Details
-
getSelectors
The selectors that make up this compound selector- Returns:
- Immutable List<SimpleSelector>
-
createMatch
Description copied from class:Selector
Creates aMatch
.- Specified by:
createMatch
in classSelector
- Returns:
- a match, never
null
-
applies
Description copied from class:Selector
Gets whether thisSelector
applies to the givenStyleable
. -
applies
Description copied from class:Selector
Gets whether thisSelector
applies to the givenStyleable
. It is the same as theSelector.applies(javafx.css.Styleable)
method except it also returnsPseudoClass
state that it finds along the way. -
stateMatches
Description copied from class:Selector
Determines whether the current state of theNode
and its parents matches the pseudo-classes defined (if any) for this selector.- Specified by:
stateMatches
in classSelector
- Parameters:
styleable
- the styleablestates
- the state- Returns:
true
if the current state of the node and its parents matches the pseudo-classes defined (if any) for this selector
-
writeBinary
protected final void writeBinary(DataOutputStream os, StyleConverter.StringStore stringStore) throws IOException Description copied from class:Selector
WritesSelector
data in binary form to givenDataOutputStream
.- Overrides:
writeBinary
in classSelector
- Parameters:
os
-DataOutputStream
to writeSelector
data tostringStore
- unused- Throws:
IOException
- if writing toDataOutputStream
fails
-