class Remedy::Interaction
Attributes
message[RW]
Public Class Methods
new(message = nil)
click to toggle source
# File lib/remedy/interaction.rb, line 6 def initialize message = nil @message = message end
Public Instance Methods
confirm(message = 'Confirm?') { || ... }
click to toggle source
# File lib/remedy/interaction.rb, line 12 def confirm message = 'Confirm?' ANSI.cursor.home! ANSI.command.clear_line! print message, ' y/n ' if Keyboard.get === :y then yield if block_given? true else false end end
debug!()
click to toggle source
# File lib/remedy/interaction.rb, line 36 def debug! require 'pry' binding.pry end
display(key)
click to toggle source
# File lib/remedy/interaction.rb, line 41 def display key ANSI.command.clear_line! print " -- You pressed: #{key.inspect}" end
get_key()
click to toggle source
# File lib/remedy/interaction.rb, line 67 def get_key print " -- #{message}" if message ANSI.cursor.hide! key = Keyboard.get end
loop() { |key| ... }
click to toggle source
Calls superclass method
# File lib/remedy/interaction.rb, line 46 def loop Keyboard.raise_on_control_c! super do print " -- #{message}" if message ANSI.cursor.hide! key = Keyboard.get if key == ?\C-q then display key quit! elsif key == ?\C-d and defined? Pry then display key debug! end yield key end end
quit!()
click to toggle source
# File lib/remedy/interaction.rb, line 25 def quit! confirm 'Are you sure you want to quit? You will lose everything. :(' do ANSI.cursor.home! ANSI.command.clear_down! ANSI.cursor.show! puts " -- Bye!" exit end end