Class: Twterm::App
Constant Summary collapse
- DATA_DIR =
"#{ENV['HOME']}/.twterm"
Instance Method Summary collapse
-
#initialize ⇒ App
constructor
A new instance of App.
- #quit ⇒ Object
- #register_interruption_handler(&block) ⇒ Object
- #reset_interruption_handler ⇒ Object
- #run ⇒ Object
Constructor Details
#initialize ⇒ App
Returns a new instance of App.
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/twterm/app.rb', line 7 def initialize Dir.mkdir(DATA_DIR, 0700) unless File.directory?(DATA_DIR) Auth.authenticate_user(config) if config[:screen_name].nil? Screen.instance FilterQueryWindow.instance timeline = Tab::Statuses::Home.new(client) TabManager.instance.add_and_show(timeline) mentions_tab = Tab::Statuses::Mentions.new(client) TabManager.instance.add(mentions_tab) TabManager.instance.recover_tabs Screen.instance.refresh client.user_stream reset_interruption_handler Signal.trap(:WINCH) { Screen.instance.resize } end |
Instance Method Details
#quit ⇒ Object
47 48 49 50 51 |
# File 'lib/twterm/app.rb', line 47 def quit Curses.close_screen TabManager.instance.dump_tabs exit end |
#register_interruption_handler(&block) ⇒ Object
38 39 40 41 |
# File 'lib/twterm/app.rb', line 38 def register_interruption_handler(&block) fail ArgumentError, 'no block given' unless block_given? Signal.trap(:INT) { block.call } end |
#reset_interruption_handler ⇒ Object
43 44 45 |
# File 'lib/twterm/app.rb', line 43 def reset_interruption_handler Signal.trap(:INT) { App.instance.quit } end |