Class: KafoWizards::HighLine::SelectorRenderer

Inherits:
StringRenderer show all
Defined in:
lib/kafo_wizards/highline/selector_renderer.rb

Instance Method Summary collapse

Instance Method Details

#render_action(entry) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/kafo_wizards/highline/selector_renderer.rb', line 14

def render_action(entry)
  choose do |sel|
    sel.header = ::HighLine.color("Available options", :white)
    sel.prompt = "Select #{entry.label}: "
    sel.select_by = :index
    entry.options.each_pair do |opt, label|
      sel.choice(label) do
        entry.update(opt)
        nil
      end
    end
  end
end

#render_entry(entry) ⇒ Object



10
11
12
# File 'lib/kafo_wizards/highline/selector_renderer.rb', line 10

def render_entry(entry)
  "Select #{entry.label}"
end

#render_value(entry) ⇒ Object



5
6
7
8
# File 'lib/kafo_wizards/highline/selector_renderer.rb', line 5

def render_value(entry)
  value = entry.options[entry.value].to_s
  "'#{::HighLine.color(value, :blue)}'"
end