glimmer-dsl-libui 0.2.8 → 0.2.9
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 +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +5 -5
- data/VERSION +1 -1
- data/examples/basic_table_progress_bar.rb +1 -1
- data/glimmer-dsl-libui.gemspec +0 -0
- data/lib/glimmer/libui/control_proxy/table_proxy.rb +12 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7aaaa95f0efdd3c1dd3dcc5ceb961e6f643d3df62a7145fce68da5dee977bcc6
|
4
|
+
data.tar.gz: 410b8273b462a9ad76dc7485d4183c0be08be62c60bd64f92a7b7aa974692e5d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f04981d43dc57f873da61bd77166d16b519b408a4b11b3695a1f82670e8502eab328d19c4bef60cab5549eae25b6a813ec0ca40342c65b2597c1a9b315ce3014
|
7
|
+
data.tar.gz: f714acf1968782069530c9ebce6c260080a12bb664d5218e84ec10f86250152e2e0abbc0b48e98c435da46e8915f858ff6e16a241009b0564cb8ebbb8f018c65
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## 0.2.9
|
4
|
+
|
5
|
+
- Upgrade to glimmer 2.3.0
|
6
|
+
- Use glimmer 2.3.0 to support automatic table row change when performing a direct deep row/column update in `cell_rows` (e.g. `data[3][0] = 'new value'`) as opposed to a general shallow row update (e.g. `data[3] = ['new value', 'other new value']` <- already supported)
|
7
|
+
|
3
8
|
## 0.2.8
|
4
9
|
|
5
10
|
- Support `table` `on_changed` listener to report all changes (of operation type `:deleted`, `:changed`, `:inserted`)
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# [<img src="https://raw.githubusercontent.com/AndyObtiva/glimmer/master/images/glimmer-logo-hi-res.png" height=85 />](https://github.com/AndyObtiva/glimmer) Glimmer DSL for LibUI 0.2.
|
1
|
+
# [<img src="https://raw.githubusercontent.com/AndyObtiva/glimmer/master/images/glimmer-logo-hi-res.png" height=85 />](https://github.com/AndyObtiva/glimmer) Glimmer DSL for LibUI 0.2.9
|
2
2
|
## Prerequisite-Free Ruby Desktop Development GUI Library
|
3
3
|
[](http://badge.fury.io/rb/glimmer-dsl-libui)
|
4
4
|
[](https://codeclimate.com/github/AndyObtiva/glimmer-dsl-libui/maintainability)
|
@@ -61,7 +61,7 @@ window('Task Progress', 300, 200) {
|
|
61
61
|
|
62
62
|
on_clicked do
|
63
63
|
data.each_with_index do |row_data, row|
|
64
|
-
data[row] =
|
64
|
+
data[row][1] = 100 # automatically updates table due to implicit data-binding
|
65
65
|
end
|
66
66
|
end
|
67
67
|
}
|
@@ -197,7 +197,7 @@ Other [Glimmer](https://rubygems.org/gems/glimmer) DSL gems you might be interes
|
|
197
197
|
|
198
198
|
## Table of Contents
|
199
199
|
|
200
|
-
- [Glimmer DSL for LibUI 0.2.
|
200
|
+
- [Glimmer DSL for LibUI 0.2.9](#-glimmer-dsl-for-libui-029)
|
201
201
|
- [Glimmer GUI DSL Concepts](#glimmer-gui-dsl-concepts)
|
202
202
|
- [Usage](#usage)
|
203
203
|
- [Girb (Glimmer IRB)](#girb-glimmer-irb)
|
@@ -334,7 +334,7 @@ gem install glimmer-dsl-libui
|
|
334
334
|
Or install via Bundler `Gemfile`:
|
335
335
|
|
336
336
|
```ruby
|
337
|
-
gem 'glimmer-dsl-libui', '~> 0.2.
|
337
|
+
gem 'glimmer-dsl-libui', '~> 0.2.9'
|
338
338
|
```
|
339
339
|
|
340
340
|
Add `require 'glimmer-dsl-libui'` at the top, and then `include Glimmer` into the top-level main object for testing or into an actual class for serious usage.
|
@@ -3056,7 +3056,7 @@ window('Task Progress', 300, 200) {
|
|
3056
3056
|
|
3057
3057
|
on_clicked do
|
3058
3058
|
data.each_with_index do |row_data, row|
|
3059
|
-
data[row] =
|
3059
|
+
data[row][1] = 100 # automatically updates table due to implicit data-binding
|
3060
3060
|
end
|
3061
3061
|
end
|
3062
3062
|
}
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.9
|
@@ -26,7 +26,7 @@ window('Task Progress', 300, 200) {
|
|
26
26
|
|
27
27
|
on_clicked do
|
28
28
|
data.each_with_index do |row_data, row|
|
29
|
-
data[row] =
|
29
|
+
data[row][1] = 100 # automatically updates table due to implicit data-binding
|
30
30
|
end
|
31
31
|
end
|
32
32
|
}
|
data/glimmer-dsl-libui.gemspec
CHANGED
Binary file
|
@@ -83,7 +83,7 @@ module Glimmer
|
|
83
83
|
else
|
84
84
|
@cell_rows = rows
|
85
85
|
@cell_rows.tap do
|
86
|
-
@last_cell_rows = @cell_rows
|
86
|
+
@last_cell_rows = array_deep_clone(@cell_rows)
|
87
87
|
Glimmer::DataBinding::Observer.proc do
|
88
88
|
if @cell_rows.size < @last_cell_rows.size && @last_cell_rows.include_all?(*@cell_rows)
|
89
89
|
@last_cell_rows.array_diff_indexes(@cell_rows).reverse.each do |row|
|
@@ -103,7 +103,7 @@ module Glimmer
|
|
103
103
|
end
|
104
104
|
end
|
105
105
|
end
|
106
|
-
@last_cell_rows = @cell_rows
|
106
|
+
@last_cell_rows = array_deep_clone(@cell_rows)
|
107
107
|
end.observe(self, :cell_rows)
|
108
108
|
end
|
109
109
|
end
|
@@ -205,6 +205,16 @@ module Glimmer
|
|
205
205
|
@next_column_index ||= -1
|
206
206
|
@next_column_index += 1
|
207
207
|
end
|
208
|
+
|
209
|
+
def array_deep_clone(array_or_object)
|
210
|
+
if array_or_object.is_a?(Array)
|
211
|
+
array_or_object.map do |element|
|
212
|
+
array_deep_clone(element)
|
213
|
+
end
|
214
|
+
else
|
215
|
+
array_or_object.clone
|
216
|
+
end
|
217
|
+
end
|
208
218
|
end
|
209
219
|
end
|
210
220
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: glimmer-dsl-libui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Maleh
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.3.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.
|
26
|
+
version: 2.3.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: os
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|