class TTY::Prompt::MultiList
A class responsible for rendering multi select list menu. Used by {Prompt} to display interactive choice menu.
@api private
Constants
- HELP
Public Class Methods
new(prompt, options)
click to toggle source
Create instance of TTY::Prompt::MultiList menu.
@param [Prompt] :prompt @param [Hash] options
@api public
Calls superclass method
TTY::Prompt::List.new
# File lib/tty/prompt/multi_list.rb, line 19 def initialize(prompt, options) super @selected = [] @help = options[:help] @default = Array(options[:default]) @echo = options.fetch(:echo, true) end
Public Instance Methods
keyspace(*)
click to toggle source
Callback fired when space key is pressed
@api private
# File lib/tty/prompt/multi_list.rb, line 30 def keyspace(*) active_choice = choices[@active - 1] if @selected.include?(active_choice) @selected.delete(active_choice) else @selected << active_choice end end