module ClientForPoslynx::FakePosTerminal::ConsoleUserInterface::IsUI_Component
This module is included by classes acting as components of the console UI, needing to perform console I/O interactions.
Private Instance Methods
clear_screen()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 138 def clear_screen print "\x1b[2J" end
clear_to_end_of_line()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 162 def clear_to_end_of_line print "\x1b[K" end
clear_to_end_of_screen()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 142 def clear_to_end_of_screen print "\x1b[J" end
content_fmt()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 134 def content_fmt ConsoleUserInterface::ContentFormatter end
cursor_to_top_left()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 158 def cursor_to_top_left print "\x1b[1;1H" end
display_content(content, options = {})
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 44 def display_content(content, options = {}) clear_first = options.fetch(:clear){ true } clear_screen if clear_first write_status_line write_top_border puts content write_bottom_border end
display_signature_entry_box()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 79 def display_signature_entry_box display_content content_fmt.signature_entry_box end
fetch_confirmation(result_listener)
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 83 def fetch_confirmation(result_listener) fetch_button_selection( %w[ OK Cancel ], ->(button_label) { result = case button_label when 'OK' then true when 'Cancel' then false else nil end result_listener.call result } ) end
idle!()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 34 def idle! term_manipulator.raw_mode! self.user_text_line_handler = nil end
reset(idle_prompt=nil)
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 39 def reset(idle_prompt=nil) self.idle_prompt = idle_prompt if idle_prompt display_content content_fmt.welcome_with_idle_prompt self.idle_prompt end
restore_cursor_position()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 150 def restore_cursor_position print "\x1b[u" end
save_cursor_position()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 146 def save_cursor_position print "\x1b[s" end
show_message(text_lines)
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 68 def show_message(text_lines) display_content content_fmt.multiline_message( text_lines ) end
to_start_of_line()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 154 def to_start_of_line print "\x1b[0G" end
ui_context()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 18 def ui_context raise NotImplementedError, "Inheriting-class responsibility" end
update_status_line(new_text=nil)
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 55 def update_status_line(new_text=nil) self.status_line = new_text unless new_text.nil? save_cursor_position write_status_line restore_cursor_position end
write_bottom_border()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 128 def write_bottom_border puts <<-EOS |__________________________________________________________________| EOS end
write_status_line()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 62 def write_status_line cursor_to_top_left clear_to_end_of_line puts " << #{status_line} >>" end
write_top_border()
click to toggle source
# File lib/client_for_poslynx/fake_pos_terminal/console_user_interface/is_ui_component.rb, line 121 def write_top_border puts <<-EOS __________________________________________________________________ | | EOS end