Module: Twterm::FilterableList

Extended by:
Forwardable
Included in:
Tab::New::List, Tab::New::Search, Tab::Statuses::Base, Tab::Users::Base
Defined in:
lib/twterm/filterable_list.rb

Instance Method Summary collapse

Instance Method Details

#filterObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/twterm/filterable_list.rb', line 5

def filter
  @filter_query = FilterQueryWindow.instance.input

  if filter_query.empty?
    reset_filter
  elsif items.count == 0
    query = filter_query
    reset_filter
    Notifier.instance.show_error "No matches found: \"#{query}\""
  else
    Notifier.instance.show_message "#{total_item_count} items found: \"#{filter_query}\""
    scroller.move_to_top
  end

  refresh
end

#filter_queryObject



22
23
24
# File 'lib/twterm/filterable_list.rb', line 22

def filter_query
  @filter_query ||= ''
end

#itemsObject



26
27
28
# File 'lib/twterm/filterable_list.rb', line 26

def items
  fail NotImplementedError, 'items method must be implemented'
end

#reset_filterObject



30
31
32
33
34
# File 'lib/twterm/filterable_list.rb', line 30

def reset_filter
  FilterQueryWindow.instance.clear
  @filter_query = ''
  refresh
end