Class ActionListDialogBuilder


public class ActionListDialogBuilder extends AbstractDialogBuilder<ActionListDialogBuilder,ActionListDialog>
Dialog builder for the ActionListDialog class, use this to create instances of that class and to customize them
  • Field Details

    • actions

      private final List<Runnable> actions
    • listBoxSize

      private TerminalSize listBoxSize
    • canCancel

      private boolean canCancel
    • closeAutomatically

      private boolean closeAutomatically
  • Constructor Details

    • ActionListDialogBuilder

      public ActionListDialogBuilder()
      Default constructor
  • Method Details

    • self

      protected ActionListDialogBuilder self()
      Description copied from class: AbstractDialogBuilder
      Helper method for casting this to type parameter B
      Specified by:
      self in class AbstractDialogBuilder<ActionListDialogBuilder,ActionListDialog>
      Returns:
      this as B
    • buildDialog

      protected ActionListDialog buildDialog()
      Description copied from class: AbstractDialogBuilder
      Builds the dialog according to the builder implementation
      Specified by:
      buildDialog in class AbstractDialogBuilder<ActionListDialogBuilder,ActionListDialog>
      Returns:
      New dialog object
    • setListBoxSize

      public ActionListDialogBuilder setListBoxSize(TerminalSize listBoxSize)
      Sets the size of the internal ActionListBox in columns and rows, forcing scrollbars to appear if the space isn't big enough to contain all the items
      Parameters:
      listBoxSize - Size of the ActionListBox
      Returns:
      Itself
    • getListBoxSize

      public TerminalSize getListBoxSize()
      Returns the specified size of the internal ActionListBox or null if there is no size and the list box will attempt to take up enough size to draw all items
      Returns:
      Specified size of the internal ActionListBox or null if there is no size
    • setCanCancel

      public ActionListDialogBuilder setCanCancel(boolean canCancel)
      Sets if the dialog can be cancelled or not (default: true)
      Parameters:
      canCancel - If true, the user has the option to cancel the dialog, if false there is no such button in the dialog
      Returns:
      Itself
    • isCanCancel

      public boolean isCanCancel()
      Returns true if the dialog can be cancelled once it's opened
      Returns:
      true if the dialog can be cancelled once it's opened
    • addAction

      public ActionListDialogBuilder addAction(String label, Runnable action)
      Adds an additional action to the ActionListBox that is to be displayed when the dialog is opened
      Parameters:
      label - Label of the new action
      action - Action to perform if the user selects this item
      Returns:
      Itself
    • addAction

      public ActionListDialogBuilder addAction(Runnable action)
      Adds an additional action to the ActionListBox that is to be displayed when the dialog is opened. The label of this item will be derived by calling toString() on the runnable
      Parameters:
      action - Action to perform if the user selects this item
      Returns:
      Itself
    • addActions

      public ActionListDialogBuilder addActions(Runnable... actions)
      Adds additional actions to the ActionListBox that is to be displayed when the dialog is opened. The label of the items will be derived by calling toString() on each runnable
      Parameters:
      actions - Items to add to the ActionListBox
      Returns:
      Itself
    • getActions

      public List<Runnable> getActions()
      Returns a copy of the internal list of actions currently inside this builder that will be assigned to the ActionListBox in the dialog when built
      Returns:
      Copy of the internal list of actions currently inside this builder
    • setCloseAutomaticallyOnAction

      public ActionListDialogBuilder setCloseAutomaticallyOnAction(boolean closeAutomatically)
      Sets if clicking on an action automatically closes the dialog after the action is finished (default: true)
      Parameters:
      closeAutomatically - if true dialog will be automatically closed after choosing and finish any of the action
      Returns:
      Itself