tgios 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YjI5MWRlNTljZWVjMDM1MDA2OWVmNDU2Y2ZmNDM5ODUxZGRkNzMzZQ==
4
+ MzU2M2M5Y2I2NjI2NzQzZmRlMTEyMWFlOTE0MmRkNDRhZjdmOThjZg==
5
5
  data.tar.gz: !binary |-
6
- MmMxNThkMTNkOWZmNzZjN2ZmMTZkYmM1MGMwMjAxMmY2OTIzNjBkYw==
6
+ ZGQzMDljMDBhNDMxOTZkY2UyNzM4OTJmNTE1ZDM2ZTFhOThiOGU3MQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NThhMzYwNmYxODQ0MjliYTVkNWVkMWU5NWY1YTZmMDQ5OGFjMGM0YmIyZTZl
10
- NDI0YzE0YzZkMzg2ODg4OTQ1YmE0Mzg2N2EyNGI0ODQ5MDlkNTk1Zjk5Njgy
11
- MjM1YjRiOWVlYWZhYTJlZGVkYTgxYzhhMzZkYjNlMzk0OTg1Mjg=
9
+ NDdkZjU2Y2E3YmFhMzViNGQ3Yzc5YzE4YmQ4NWI4ODE0YWE1OWJjOWQ0Nzdl
10
+ MWU1OGJkNjkzMTNjNTgzMjk5MWRlZjA0NGY0ZDEyOTU1MjA2ZmJlMGU0M2Q2
11
+ MjdkYTBkODY2N2UwZTAyNjllZDk1MDNkZWUzNGFiZWY1OGEyMGM=
12
12
  data.tar.gz: !binary |-
13
- MmJkMzUzYTMyNWI4ZTg4M2IwMzRjNjQwMjU3NjM2ZTUzZTZkYzRiODQzMDUy
14
- MWM4ZDc5MzMwOWIxMDZkYTYwZmZmZWI5NmU3OWMyZmM1OTIxYWQ2MTIwYzI2
15
- MzMzNmRkYWMxMDIzZThiZGEwMDEwY2Y0ZDI5NWE3YjYzOWZkMTY=
13
+ ZjM3ZjE1YWU4NTk3MGJhMWI0ZTk0ODk4NDQ3NTZhZTcyYWQ0OWRiYWZlNjU4
14
+ MzYxNzAzNTEyODEyMTgyYTgwODY1NTdhMGQyMTJhY2U4NjRmZTcwOWE3YjZh
15
+ NzRjNzg0MzM3ZjE3ZWNhNTI0NzBjNDhiNDRjNjg2YjhlMjkwODc=
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tgios (0.0.10)
4
+ tgios (0.0.11)
5
5
  awesome_print_motion
6
6
  motion-layout
7
7
  plastic_cup (>= 0.1.1)
@@ -1,7 +1,7 @@
1
1
  module Tgios
2
2
  class SearchController < ExtendedUIViewController
3
3
  include ExtendedUITableView
4
- Events=[:record_selected, :search, :after_layout]
4
+ Events=[:record_selected, :search, :after_layout, :load_more]
5
5
  attr_accessor :table_list_binding_options, :pop_after_selected, :field_name
6
6
 
7
7
  def on(event_name, &block)
@@ -26,6 +26,8 @@ module Tgios
26
26
  @search_result_table_binding=UITableViewListBinding.new.bind(@search_result_table, @result, @field_name, @table_list_binding_options)
27
27
  @search_result_table_binding.on(:touch_row) do |record, event|
28
28
  select_record(record)
29
+ end.on(:load_more) do |page, index_path, &block|
30
+ @events[:load_more].call(@search_bar.text, page, index_path, &block) unless @events[:load_more].nil?
29
31
  end
30
32
 
31
33
  @search_bar=UISearchBar.alloc.init
@@ -43,11 +45,13 @@ module Tgios
43
45
 
44
46
  unless @events.nil? || @events[:search].nil?
45
47
  @events[:search].call(searchBar.text) do |success, result|
46
- @result=result
47
- if @result.count == 1
48
- select_record(@result.first)
49
- else
50
- @search_result_table_binding.reload(@result) unless @search_result_table_binding.nil?
48
+ if success
49
+ @result=result
50
+ if @result.count == 1
51
+ select_record(@result.first)
52
+ else
53
+ @search_result_table_binding.reload(@result) unless @search_result_table_binding.nil?
54
+ end
51
55
  end
52
56
  end
53
57
  end
@@ -11,7 +11,7 @@ module Tgios
11
11
  @tableView.dataSource=self
12
12
  @tableView.delegate=self
13
13
  @display_field=display_field
14
- @list=WeakRef.new(list)
14
+ set_list(list)
15
15
  @options=(options || {})
16
16
  return self
17
17
  end
@@ -22,10 +22,16 @@ module Tgios
22
22
  end
23
23
 
24
24
  def reload(list)
25
- @list=list
25
+ set_list(list)
26
26
  @tableView.reloadData()
27
27
  end
28
28
 
29
+ def set_list(list)
30
+ @list=WeakRef.new(list)
31
+ @page = 1
32
+ @total = nil
33
+ end
34
+
29
35
  def build_cell(cell_identifier)
30
36
  cell=UITableViewCell.alloc.initWithStyle(UITableViewCellStyleDefault, reuseIdentifier: cell_identifier)
31
37
  cell.textLabel.adjustsFontSizeToFitWidth = true
@@ -67,7 +73,18 @@ module Tgios
67
73
  end
68
74
 
69
75
  def tableView(tableView, willDisplayCell:cell, forRowAtIndexPath:indexPath)
70
- @events[:reach_bottom].call unless @events[:reach_bottom].nil? || indexPath.row < @list.length - 1
76
+ unless @events[:load_more].nil? || indexPath.row < @list.length - 1 || !@total.nil? && @total <= @list.count || @loading
77
+ @loading = true
78
+ @events[:load_more].call(@page+1, indexPath) do |success, results, total|
79
+ if success
80
+ @total = total
81
+ @page += 1
82
+ @list += results
83
+ @tableView.reloadData
84
+ end
85
+ @loading = false
86
+ end
87
+ end
71
88
  end
72
89
 
73
90
  def onPrepareForRelease
data/lib/tgios/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Tgios
2
- VERSION = '0.0.10'
2
+ VERSION = '0.0.11'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tgios
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - April Tsang
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-02-20 00:00:00.000000000 Z
12
+ date: 2014-02-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sugarcube