Class: Cura::Termbox::Adapter
- Inherits:
-
Adapter
- Object
- Adapter
- Cura::Termbox::Adapter
- Defined in:
- lib/cura/termbox/adapter.rb
Overview
Cura adapter for Termbox.
Instance Method Summary collapse
- #cleanup ⇒ Object
- #clear ⇒ Object
- #hide_cursor ⇒ Object
- #peek_event(milliseconds) ⇒ Object
- #poll_event ⇒ Object
- #present ⇒ Object
- #set_cursor(x, y) ⇒ Object
- #setup ⇒ Object
Instance Method Details
#cleanup ⇒ Object
67 68 69 70 71 |
# File 'lib/cura/termbox/adapter.rb', line 67 def cleanup ::Termbox.tb_shutdown super end |
#clear ⇒ Object
59 60 61 |
# File 'lib/cura/termbox/adapter.rb', line 59 def clear ::Termbox.tb_clear end |
#hide_cursor ⇒ Object
77 78 79 |
# File 'lib/cura/termbox/adapter.rb', line 77 def hide_cursor ::Termbox.tb_set_cursor(::Termbox::TB_HIDE_CURSOR, ::Termbox::TB_HIDE_CURSOR) end |
#peek_event(milliseconds) ⇒ Object
88 89 90 91 92 93 |
# File 'lib/cura/termbox/adapter.rb', line 88 def peek_event(milliseconds) event = ::Termbox::Event.new ::Termbox.tb_peek_event(event, milliseconds) convert_termbox_event_to_cura_event(event) end |
#poll_event ⇒ Object
81 82 83 84 85 86 |
# File 'lib/cura/termbox/adapter.rb', line 81 def poll_event event = ::Termbox::Event.new ::Termbox.tb_poll_event(event) convert_termbox_event_to_cura_event(event) end |
#present ⇒ Object
63 64 65 |
# File 'lib/cura/termbox/adapter.rb', line 63 def present ::Termbox.tb_present end |
#set_cursor(x, y) ⇒ Object
73 74 75 |
# File 'lib/cura/termbox/adapter.rb', line 73 def set_cursor(x, y) ::Termbox.tb_set_cursor(x, y) end |
#setup ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/cura/termbox/adapter.rb', line 41 def setup case ::Termbox.tb_init when ::Termbox::TB_EUNSUPPORTED_TERMINAL then raise Termbox::Error::UnsupportedTerminal when ::Termbox::TB_EFAILED_TO_OPEN_TTY then raise Termbox::Error::FailedToOpenTTY when ::Termbox::TB_EPIPE_TRAP_ERROR then raise Termbox::Error::PipeTrapError end if defined?(::Termbox::TB_INPUT_MOUSE) # TODO: I don't like this =[ ::Termbox.tb_select_input_mode(::Termbox::TB_INPUT_ESC | ::Termbox::TB_INPUT_MOUSE) else ::Termbox.tb_select_input_mode(::Termbox::TB_INPUT_ESC) end # ::Termbox.tb_select_output_mode(::Termbox::TB_OUTPUT_216) ::Termbox.tb_select_output_mode(::Termbox::TB_OUTPUT_256) super end |