module Confirm
Public Instance Methods
prompt(opts = {})
click to toggle source
# File lib/inquirer/prompts/confirm.rb, line 9 def prompt opts = {} @question = opts[:message] @default = opts[:default] @value = nil render_prompt IOHelper.read_char do |char| key = IOChar.char_to_key(char) if key.casecmp( Inquirer::Style::Confirm.option_true[0] ) == 0 @value = true false elsif key.casecmp( Inquirer::Style::Confirm.option_false[0] ) == 0 @value = false false elsif key == 'return' && !@default.nil? @value = @default false else true end end render_result @value end
render_prompt()
click to toggle source
# File lib/inquirer/prompts/confirm.rb, line 39 def render_prompt options = [ Inquirer::Style::Confirm.option_true[0].downcase, Inquirer::Style::Confirm.option_false[0].downcase ] if !@default.nil? if @default options[0].capitalize! else options[1].capitalize! end end # start with the question prefix prompt = Inquirer::Style.question_prefix prompt += Inquirer::Style::Confirm.question % @question prompt += Inquirer::Style::Confirm.options % options prompt += ' ' IOHelper.render( prompt ) end
render_result()
click to toggle source
# File lib/inquirer/prompts/confirm.rb, line 65 def render_result # start with the question prefix result = Inquirer::Style.question_prefix result += Inquirer::Style::Confirm.question % @question response = nil if !@value.nil? if @value response = Inquirer::Style::Confirm.option_true else response = Inquirer::Style::Confirm.option_false end result += Inquirer::Style::Confirm.response % response end result += IOChar.newline # flush previous data IOHelper.clear # rerender result IOHelper.render( result ) end