On Mon, 23 Oct 2023 23:11:53 GMT, Sai Pradeep Dandem <[email protected]> wrote:
>> **Issue:**
>> Using pseudo classes in programmatic query using Node.lookupAll() or
>> Node.lookup() gives unexpected results.
>>
>> **Cause:**
>> There is no check for checking the psuedo states matching in the applies()
>> method of SimpleSelector.java. So checking for "applies()" alone is not
>> sufficient in lookup() method.
>>
>> **Fix:**
>> Included an extra check for the psuedo states to match.
>
> Sai Pradeep Dandem has updated the pull request incrementally with two
> additional commits since the last revision:
>
> - Minor change
> - Updated documentation in regards with pseudo states lookup
modules/javafx.graphics/src/main/java/javafx/scene/Node.java line 1984:
> 1982: * a pseudo state "myPseudo", then to find all nodes with
> "myPseudo" state, the lookupAll method can be used as follows:
> 1983: * <code>scene.lookupAll(".myStyle:myPseudo");</code> or
> <code>scene.lookupAll(":myPseudo");</code>
> 1984: * </p>
Added explanation is very good! I would add one more thing - that if no pseudo
class is specified by the lookup selector, the result will contain nodes with
pseudo classes (that is, pseudo classes are ignored).
Minor note: should we be using {@code ... } instead of < code > ?
modules/javafx.graphics/src/main/java/javafx/scene/Node.java line 2005:
> 2003: * @param selector The Selector.
> 2004: * @param results The results.
> 2005: * @return List of matching nodes. The returned value can be null.
minor: I don't think we should capitalize text in @ param and @ return
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/1245#discussion_r1373630223
PR Review Comment: https://git.openjdk.org/jfx/pull/1245#discussion_r1373632086