Module: CollectionClassMethods

Defined in:
lib/ProMotion/collection/collection_class_methods.rb

Instance Method Summary collapse

Instance Method Details

#cell_classes(options = {}) ⇒ Object



31
32
33
# File 'lib/ProMotion/collection/collection_class_methods.rb', line 31

def cell_classes(options={})
  @cell_classes = options
end

#collection_layout(klass, options = {}) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/ProMotion/collection/collection_class_methods.rb', line 3

def collection_layout(klass, options={})
  @layout                         = klass.new
  @layout.scrollDirection         = map_layout_direction(options.fetch(:direction, :vertical))

  @layout.minimumLineSpacing      = options[:minimum_line_spacing] if options.has_key?(:minimum_line_spacing)
  @layout.minimumInteritemSpacing = options[:minimum_interitem_spacing] if options.has_key?(:minimum_interitem_spacing)
  @layout.itemSize                = options[:item_size] if options.has_key?(:item_size)
  @layout.estimatedItemSize       = options[:estimated_item_size] if options.has_key?(:estimated_item_size) and @layout.respond_to?(:estimatedItemSize)
  @layout.sectionInset            = options[:section_inset] if options.has_key?(:section_inset)
  @layout
end

#get_cell_classesObject



35
36
37
# File 'lib/ProMotion/collection/collection_class_methods.rb', line 35

def get_cell_classes
  @cell_classes || nil
end

#get_collection_layoutObject



15
16
17
18
19
20
21
22
# File 'lib/ProMotion/collection/collection_class_methods.rb', line 15

def get_collection_layout
  @layout ||= begin
    layout                 = UICollectionViewFlowLayout.new
    layout.scrollDirection = UICollectionViewScrollDirectionHorizontal

    layout
  end
end

#map_layout_direction(symbol) ⇒ Object



24
25
26
27
28
29
# File 'lib/ProMotion/collection/collection_class_methods.rb', line 24

def map_layout_direction(symbol)
  {
      horizontal: UICollectionViewScrollDirectionHorizontal,
      vertical:   UICollectionViewScrollDirectionVertical
  }[symbol] || symbol || UICollectionViewScrollDirectionVertical
end