Class: RubyApp::Elements::Mobile::Default::Features::ListsPage

Inherits:
Page show all
Defined in:
lib/ruby_app/elements/mobile/default/features/lists_page.rb

Instance Attribute Summary

Attributes inherited from RubyApp::Element

#attributes

Instance Method Summary collapse

Methods inherited from Page

#hide, #show

Methods inherited from RubyApp::Element

#element_id, get_element

Methods included from Mixins::ConfigurationMixin

#configuration

Methods included from Mixins::TranslateMixin

#localize, #translate

Methods included from Mixins::TemplateMixin

#exclude_parent_template, #exclude_parent_template?, #get_cache, #get_default_template, #get_template, #get_template_name, #get_templates, #template_path

Methods included from Mixins::RenderMixin

#content_for, #get_cache, #get_default_template, #get_templates, #render

Constructor Details

#initializeListsPage

Returns a new instance of ListsPage.



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/ruby_app/elements/mobile/default/features/lists_page.rb', line 19

def initialize
  super

  @back_button = RubyApp::Elements::Mobile::Navigation::BackButton.new

  @list = RubyApp::Elements::Mobile::List.new
  @list.attributes.merge!('autofocus'               => true,
                          'data-filter'             => 'true',
                          'data-filter-placeholder' => 'search')
  @list.items += [  RubyApp::Elements::Mobile::List::ListDivider.new('List') ]
  @list.items += [  'Item 01',
                    'Item 02',
                    'Item 03' ].collect { |item| RubyApp::Elements::Mobile::List::ListItem.new(item) }

  item = RubyApp::Elements::Mobile::List::ListItem.new('Item 04')
  item.attributes.merge!('disabled' => true)
  @list.items += [ item ]

  @list.items += [  'Item 05',
                    'Item 06',
                    'Item 07' ].collect { |item| RubyApp::Elements::Mobile::List::ListSplitItem.new(item) }

  item = RubyApp::Elements::Mobile::List::ListSplitItem.new('Item 08')
  item.attributes.merge!('disabled' => true)
  @list.items += [ item ]

  (0..91).each do |index|
    @list.items += [ RubyApp::Elements::Mobile::List::ListItem.new('Filler') ]
  end

  item = RubyApp::Elements::Mobile::List::ListItem.new('Item 09')
  item.attributes.merge!('class' => 'hidden')
  @list.items += [ item ]

  @list.searched do |element, event|
    RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You input #{event.value}."))
    event.update_element(@list)
  end
  @list.item_clicked do |element, event|
    RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the item #{event.item.item}."))
  end
  @list.link_clicked do |element, event|
    RubyApp::Elements::Mobile::Dialog.show(event, RubyApp::Elements::Mobile::Dialogs::AcknowledgementDialog.new('List', "You clicked the link #{event.item.item}."))
  end

end