Class: Twterm::Screen
- Inherits:
-
Object
- Object
- Twterm::Screen
- Includes:
- Curses, Singleton
- Defined in:
- lib/twterm/screen.rb
Instance Method Summary collapse
-
#initialize ⇒ Screen
constructor
A new instance of Screen.
- #refresh ⇒ Object
- #resize ⇒ Object
- #respond_to_key(key) ⇒ Object
- #wait ⇒ Object
Constructor Details
#initialize ⇒ Screen
Returns a new instance of Screen.
6 7 8 9 10 11 12 13 14 |
# File 'lib/twterm/screen.rb', line 6 def initialize @screen = init_screen noecho cbreak curs_set(0) stdscr.keypad(true) start_color use_default_colors end |
Instance Method Details
#refresh ⇒ Object
16 17 18 19 20 |
# File 'lib/twterm/screen.rb', line 16 def refresh TabManager.instance.refresh_window TabManager.instance.current_tab.refresh Notifier.instance.show end |
#resize ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/twterm/screen.rb', line 22 def resize resizeterm(`tput lines`.to_i, `tput cols`.to_i) @screen.resize(`tput lines`.to_i, `tput cols`.to_i) TabManager.instance.resize TabManager.instance.each_tab(&:resize) Notifier.instance.resize FilterQueryWindow.instance.resize refresh end |
#respond_to_key(key) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/twterm/screen.rb', line 33 def respond_to_key(key) case key when ?n Tweetbox.instance.compose return when ?Q App.instance.quit when ?? tab = Tab::KeyAssignmentsCheatsheet.new TabManager.instance.add_and_show tab else return false end true end |
#wait ⇒ Object
50 51 52 53 54 55 |
# File 'lib/twterm/screen.rb', line 50 def wait @thread = Thread.new do loop { scan } end @thread.join end |