tgios 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
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