Module javafx.graphics
Package javafx.css

Class PseudoClass



  • public abstract class PseudoClass
    extends Object 
    PseudoClass represents one unique pseudo-class state. Introducing a pseudo-class into a JavaFX class only requires that the method Node.pseudoClassStateChanged(javafx.css.PseudoClass, boolean) be called when the pseudo-class state changes. Typically, the pseudoClassStateChanged method is called from the protected void invalidated() method of one of the property base classes in the javafx.beans.property package.

    Note that if a node has a default pseudo-class state, a horizontal orientation for example, pseudoClassStateChanged should be called from the constructor to set the initial state.

    The following example would allow "xyzzy" to be used as a pseudo-class in a CSS selector.

    
     public boolean isMagic() {
     return magic.get();
     }
     public BooleanProperty magicProperty() {
     return magic;
     }
     public BooleanProperty magic =
     new BooleanPropertyBase(false) {
     @Override protected void invalidated() {
     pseudoClassStateChanged(MAGIC_PSEUDO_CLASS. get());
     }
     @Override public Object getBean() {
     return MyControl.this;
     }
     @Override public String getName() {
     return "magic";
     }
     }
     private static final PseudoClass
     MAGIC_PSEUDO_CLASS = PseudoClass.getPseudoClass("xyzzy");
     
    Since:
    JavaFX 8.0
    • Constructor Detail

      • PseudoClass

        public PseudoClass​()
    • Method Detail

      • getPseudoClass

        public static PseudoClass getPseudoClass​(String pseudoClass)
        There is only one PseudoClass instance for a given pseudoClass.
        Parameters:
        pseudoClass - the pseudo-class
        Returns:
        The PseudoClass for the given pseudoClass. Will not return null.
        Throws:
        IllegalArgumentException - if pseudoClass parameter is null or an empty String
      • getPseudoClassName

        public abstract String getPseudoClassName​()
        Returns:
        the pseudo-class state