Class JWFileChooserConfiguration.Builder

java.lang.Object
com.io7m.jwheatsheaf.api.JWFileChooserConfiguration.Builder
Enclosing class:
JWFileChooserConfiguration

public static final class JWFileChooserConfiguration.Builder
extends java.lang.Object
Builds instances of type JWFileChooserConfiguration. Initialize attributes and then invoke the build() method to create an immutable instance.

Builder is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

  • Method Details

    • from

      Fill a builder with attribute values from the provided JWFileChooserConfigurationType instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • addRecentFiles

      public final JWFileChooserConfiguration.Builder addRecentFiles​(java.nio.file.Path element)
      Adds one element to recentFiles list.
      Parameters:
      element - A recentFiles element
      Returns:
      this builder for use in a chained invocation
    • addRecentFiles

      public final JWFileChooserConfiguration.Builder addRecentFiles​(java.nio.file.Path... elements)
      Adds elements to recentFiles list.
      Parameters:
      elements - An array of recentFiles elements
      Returns:
      this builder for use in a chained invocation
    • setRecentFiles

      public final JWFileChooserConfiguration.Builder setRecentFiles​(java.lang.Iterable<? extends java.nio.file.Path> elements)
      Sets or replaces all elements for recentFiles list.
      Parameters:
      elements - An iterable of recentFiles elements
      Returns:
      this builder for use in a chained invocation
    • addAllRecentFiles

      public final JWFileChooserConfiguration.Builder addAllRecentFiles​(java.lang.Iterable<? extends java.nio.file.Path> elements)
      Adds elements to recentFiles list.
      Parameters:
      elements - An iterable of recentFiles elements
      Returns:
      this builder for use in a chained invocation
    • setFileSystem

      public final JWFileChooserConfiguration.Builder setFileSystem​(java.nio.file.FileSystem fileSystem)
      Initializes the value for the fileSystem attribute.

      If not set, this attribute will have a default value as returned by the initializer of fileSystem.

      Parameters:
      fileSystem - The value for fileSystem
      Returns:
      this builder for use in a chained invocation
    • setInitialDirectory

      public final JWFileChooserConfiguration.Builder setInitialDirectory​(java.nio.file.Path initialDirectory)
      Initializes the optional value initialDirectory to initialDirectory.
      Parameters:
      initialDirectory - The value for initialDirectory
      Returns:
      this builder for chained invocation
    • setInitialDirectory

      public final JWFileChooserConfiguration.Builder setInitialDirectory​(java.util.Optional<? extends java.nio.file.Path> initialDirectory)
      Initializes the optional value initialDirectory to initialDirectory.
      Parameters:
      initialDirectory - The value for initialDirectory
      Returns:
      this builder for use in a chained invocation
    • setHomeDirectory

      public final JWFileChooserConfiguration.Builder setHomeDirectory​(java.nio.file.Path homeDirectory)
      Initializes the optional value homeDirectory to homeDirectory.
      Parameters:
      homeDirectory - The value for homeDirectory
      Returns:
      this builder for chained invocation
    • setHomeDirectory

      public final JWFileChooserConfiguration.Builder setHomeDirectory​(java.util.Optional<? extends java.nio.file.Path> homeDirectory)
      Initializes the optional value homeDirectory to homeDirectory.
      Parameters:
      homeDirectory - The value for homeDirectory
      Returns:
      this builder for use in a chained invocation
    • setInitialFileName

      public final JWFileChooserConfiguration.Builder setInitialFileName​(java.lang.String initialFileName)
      Initializes the optional value initialFileName to initialFileName.
      Parameters:
      initialFileName - The value for initialFileName
      Returns:
      this builder for chained invocation
    • setInitialFileName

      public final JWFileChooserConfiguration.Builder setInitialFileName​(java.util.Optional<java.lang.String> initialFileName)
      Initializes the optional value initialFileName to initialFileName.
      Parameters:
      initialFileName - The value for initialFileName
      Returns:
      this builder for use in a chained invocation
    • setTitle

      public final JWFileChooserConfiguration.Builder setTitle​(java.lang.String title)
      Initializes the optional value title to title.
      Parameters:
      title - The value for title
      Returns:
      this builder for chained invocation
    • setTitle

      public final JWFileChooserConfiguration.Builder setTitle​(java.util.Optional<java.lang.String> title)
      Initializes the optional value title to title.
      Parameters:
      title - The value for title
      Returns:
      this builder for use in a chained invocation
    • setFileImageSet

      public final JWFileChooserConfiguration.Builder setFileImageSet​(JWFileImageSetType fileImageSet)
      Initializes the optional value fileImageSet to fileImageSet.
      Parameters:
      fileImageSet - The value for fileImageSet
      Returns:
      this builder for chained invocation
    • setFileImageSet

      public final JWFileChooserConfiguration.Builder setFileImageSet​(java.util.Optional<? extends JWFileImageSetType> fileImageSet)
      Initializes the optional value fileImageSet to fileImageSet.
      Parameters:
      fileImageSet - The value for fileImageSet
      Returns:
      this builder for use in a chained invocation
    • setCssStylesheet

      public final JWFileChooserConfiguration.Builder setCssStylesheet​(java.net.URL cssStylesheet)
      Initializes the optional value cssStylesheet to cssStylesheet.
      Parameters:
      cssStylesheet - The value for cssStylesheet
      Returns:
      this builder for chained invocation
    • setCssStylesheet

      public final JWFileChooserConfiguration.Builder setCssStylesheet​(java.util.Optional<? extends java.net.URL> cssStylesheet)
      Initializes the optional value cssStylesheet to cssStylesheet.
      Parameters:
      cssStylesheet - The value for cssStylesheet
      Returns:
      this builder for use in a chained invocation
    • addFileFilters

      public final JWFileChooserConfiguration.Builder addFileFilters​(JWFileChooserFilterType element)
      Adds one element to fileFilters list.
      Parameters:
      element - A fileFilters element
      Returns:
      this builder for use in a chained invocation
    • addFileFilters

      public final JWFileChooserConfiguration.Builder addFileFilters​(JWFileChooserFilterType... elements)
      Adds elements to fileFilters list.
      Parameters:
      elements - An array of fileFilters elements
      Returns:
      this builder for use in a chained invocation
    • setFileFilters

      public final JWFileChooserConfiguration.Builder setFileFilters​(java.lang.Iterable<? extends JWFileChooserFilterType> elements)
      Sets or replaces all elements for fileFilters list.
      Parameters:
      elements - An iterable of fileFilters elements
      Returns:
      this builder for use in a chained invocation
    • addAllFileFilters

      public final JWFileChooserConfiguration.Builder addAllFileFilters​(java.lang.Iterable<? extends JWFileChooserFilterType> elements)
      Adds elements to fileFilters list.
      Parameters:
      elements - An iterable of fileFilters elements
      Returns:
      this builder for use in a chained invocation
    • setFileFilterDefault

      public final JWFileChooserConfiguration.Builder setFileFilterDefault​(JWFileChooserFilterType fileFilterDefault)
      Initializes the optional value fileFilterDefault to fileFilterDefault.
      Parameters:
      fileFilterDefault - The value for fileFilterDefault
      Returns:
      this builder for chained invocation
    • setFileFilterDefault

      public final JWFileChooserConfiguration.Builder setFileFilterDefault​(java.util.Optional<? extends JWFileChooserFilterType> fileFilterDefault)
      Initializes the optional value fileFilterDefault to fileFilterDefault.
      Parameters:
      fileFilterDefault - The value for fileFilterDefault
      Returns:
      this builder for use in a chained invocation
    • setFileSelectionMode

      public final JWFileChooserConfiguration.Builder setFileSelectionMode​(java.util.function.Function<java.nio.file.Path,​java.lang.Boolean> fileSelectionMode)
      Initializes the value for the fileSelectionMode attribute.

      If not set, this attribute will have a default value as returned by the initializer of fileSelectionMode.

      Parameters:
      fileSelectionMode - The value for fileSelectionMode
      Returns:
      this builder for use in a chained invocation
    • setAllowDirectoryCreation

      public final JWFileChooserConfiguration.Builder setAllowDirectoryCreation​(boolean allowDirectoryCreation)
      Initializes the value for the allowDirectoryCreation attribute.

      If not set, this attribute will have a default value as returned by the initializer of allowDirectoryCreation.

      Parameters:
      allowDirectoryCreation - The value for allowDirectoryCreation
      Returns:
      this builder for use in a chained invocation
    • setShowParentDirectory

      public final JWFileChooserConfiguration.Builder setShowParentDirectory​(boolean showParentDirectory)
      Initializes the value for the showParentDirectory attribute.

      If not set, this attribute will have a default value as returned by the initializer of showParentDirectory.

      Parameters:
      showParentDirectory - The value for showParentDirectory
      Returns:
      this builder for use in a chained invocation
    • setFileTimeFormatter

      public final JWFileChooserConfiguration.Builder setFileTimeFormatter​(java.time.format.DateTimeFormatter fileTimeFormatter)
      Initializes the value for the fileTimeFormatter attribute.

      If not set, this attribute will have a default value as returned by the initializer of fileTimeFormatter.

      Parameters:
      fileTimeFormatter - The value for fileTimeFormatter
      Returns:
      this builder for use in a chained invocation
    • setFileSizeFormatter

      public final JWFileChooserConfiguration.Builder setFileSizeFormatter​(JWFileSizeFormatterType fileSizeFormatter)
      Initializes the value for the fileSizeFormatter attribute.

      If not set, this attribute will have a default value as returned by the initializer of fileSizeFormatter.

      Parameters:
      fileSizeFormatter - The value for fileSizeFormatter
      Returns:
      this builder for use in a chained invocation
    • setAction

      public final JWFileChooserConfiguration.Builder setAction​(JWFileChooserAction action)
      Initializes the value for the action attribute.

      If not set, this attribute will have a default value as returned by the initializer of action.

      Parameters:
      action - The value for action
      Returns:
      this builder for use in a chained invocation
    • setConfirmFileSelection

      public final JWFileChooserConfiguration.Builder setConfirmFileSelection​(boolean confirmFileSelection)
      Initializes the value for the confirmFileSelection attribute.

      If not set, this attribute will have a default value as returned by the initializer of confirmFileSelection.

      Parameters:
      confirmFileSelection - The value for confirmFileSelection
      Returns:
      this builder for use in a chained invocation
    • setStringOverrides

      public final JWFileChooserConfiguration.Builder setStringOverrides​(JWFileChooserStringOverridesType stringOverrides)
      Initializes the value for the stringOverrides attribute.

      If not set, this attribute will have a default value as returned by the initializer of stringOverrides.

      Parameters:
      stringOverrides - The value for stringOverrides
      Returns:
      this builder for use in a chained invocation
    • build

      Returns:
      An immutable instance of JWFileChooserConfiguration
      Throws:
      java.lang.IllegalStateException - if any required attributes are missing