Class CellSkinBaseBuilder<C extends Cell>

java.lang.Object
io.github.sosuisen.jfxbuilder.controls.CellSkinBaseBuilder<C>

public class CellSkinBaseBuilder<C extends Cell> extends Object
The CellSkinBaseBuilder class constructs instances of the CellSkinBase class and offers a fluent interface for creating and configuring it.

This class includes a static create method that accepts the same arguments as the original CellSkinBase constructor and returns an instance of the CellSkinBaseBuilder.

You can use method chaining to call the builder methods for configuring the CellSkinBase. Finally, invoke the build method to generate an instance of the CellSkinBase class.

Note that intermediate builder methods are not evaluated until the build method is called, meaning they are evaluated lazily.

Author:
Hidekazu Kubota <hidekazu.kubota@gmail.com>
  • Method Details

    • create

      public static <C extends Cell> CellSkinBaseBuilder<C> create(C control)
      Accepts the constructor arguments of CellSkinBase(C) and returns an instance of CellSkinBaseBuilder<C>.
      Returns:
      an instance of the CellSkinBaseBuilder<C>.
    • build

      public CellSkinBase<C> build()
      Builds and returns an instance of the CellSkinBase class.

      Intermediate builder methods are not evaluated until the build method is called; in other words, they are evaluated lazily.

      Returns:
      new instance of the CellSkinBase class
    • apply

      public CellSkinBaseBuilder<C> apply(Consumer<CellSkinBase<C>> func)
      Applies a function to the CellSkinBase instance being constructed. Most operations on the instance can be performed using this method.
      Returns:
      builder instance
    • addChildren

      public final CellSkinBaseBuilder<C> addChildren(Node... elements)
      Calls the addAll method on the ObservableList returned by the CellSkinBase#getChildren() method.
      Returns:
      builder instance
    • addChildren

      public final CellSkinBaseBuilder<C> addChildren(Collection<? extends Node> col)
      Calls the addAll method on the ObservableList returned by the CellSkinBase#getChildren() method.
      Returns:
      builder instance
    • cellSizePropertyApply

      public CellSkinBaseBuilder<C> cellSizePropertyApply(Consumer<ReadOnlyDoubleProperty> op)
      Applies a function to the cellSizeProperty of the instance being constructed. This serves as a shorthand form of the apply method.

      Example:

      // Use apply
      .apply(obj -> obj.cellSizeProperty().bind(anotherProperty))
      
      // Use shorthand form
      .cellSizePropertyApply(prop -> prop.bind(anotherProperty))
      
      Returns:
      builder instance