glimmer-dsl-opal 0.6.0 → 0.7.3
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 +51 -0
- data/README.md +428 -18
- data/VERSION +1 -1
- data/app/assets/stylesheets/{glimmer.css → glimmer/glimmer.css} +1 -1
- data/lib/display.rb +31 -0
- data/lib/file.rb +29 -0
- data/lib/glimmer-dsl-opal.rb +33 -5
- data/lib/glimmer-dsl-opal/ext/date.rb +11 -0
- data/lib/glimmer-dsl-opal/ext/struct.rb +37 -0
- data/lib/glimmer-dsl-opal/samples/elaborate/tic_tac_toe.rb +23 -0
- data/lib/glimmer-dsl-opal/samples/hello/hello_table.rb +283 -0
- data/lib/glimmer-dsl-swt.rb +20 -35
- data/lib/glimmer/data_binding/table_items_binding.rb +32 -19
- data/lib/glimmer/dsl/opal/block_property_expression.rb +41 -0
- data/lib/glimmer/dsl/opal/custom_widget_expression.rb +1 -1
- data/lib/glimmer/dsl/opal/dsl.rb +2 -0
- data/lib/glimmer/dsl/opal/widget_expression.rb +7 -3
- data/lib/glimmer/engine.rb +1 -1
- data/lib/glimmer/swt/button_proxy.rb +5 -5
- data/lib/glimmer/swt/color_proxy.rb +45 -45
- data/lib/glimmer/swt/combo_proxy.rb +42 -3
- data/lib/glimmer/swt/composite_proxy.rb +7 -3
- data/lib/glimmer/swt/control_editor.rb +54 -0
- data/lib/glimmer/swt/date_time_proxy.rb +71 -5
- data/lib/glimmer/swt/display_proxy.rb +6 -2
- data/lib/glimmer/swt/fill_layout_proxy.rb +1 -1
- data/lib/glimmer/swt/font_proxy.rb +4 -4
- data/lib/glimmer/swt/label_proxy.rb +2 -2
- data/lib/glimmer/swt/layout_data_proxy.rb +13 -10
- data/lib/glimmer/swt/layout_proxy.rb +5 -5
- data/lib/glimmer/swt/list_proxy.rb +2 -2
- data/lib/glimmer/swt/message_box_proxy.rb +4 -2
- data/lib/glimmer/swt/property_owner.rb +2 -2
- data/lib/glimmer/swt/shell_proxy.rb +8 -0
- data/lib/glimmer/swt/tab_folder_proxy.rb +2 -2
- data/lib/glimmer/swt/tab_item_proxy.rb +7 -7
- data/lib/glimmer/swt/table_column_proxy.rb +71 -12
- data/lib/glimmer/swt/table_editor.rb +65 -0
- data/lib/glimmer/swt/table_item_proxy.rb +50 -7
- data/lib/glimmer/swt/table_proxy.rb +581 -14
- data/lib/glimmer/swt/text_proxy.rb +49 -1
- data/lib/glimmer/swt/widget_proxy.rb +120 -22
- data/lib/glimmer/ui/custom_widget.rb +8 -8
- data/lib/net/http.rb +1 -5
- data/lib/os.rb +36 -0
- data/lib/uri.rb +3 -3
- metadata +31 -10
- data/lib/glimmer/data_binding/ext/observable_model.rb +0 -40
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: glimmer-dsl-opal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- AndyMaleh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: glimmer
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.0.
|
19
|
+
version: 1.0.5
|
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: 1.0.
|
26
|
+
version: 1.0.5
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: glimmer-dsl-xml
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,19 +67,33 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 1.2.0
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: to_collection
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.
|
76
|
-
type: :
|
75
|
+
version: 2.0.1
|
76
|
+
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.
|
82
|
+
version: 2.0.1
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: puts_debuggerer
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rake
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -217,14 +231,17 @@ files:
|
|
217
231
|
- app/assets/images/glimmer/images/ui-icons_777777_256x240.png
|
218
232
|
- app/assets/images/glimmer/images/ui-icons_cc0000_256x240.png
|
219
233
|
- app/assets/images/glimmer/images/ui-icons_ffffff_256x240.png
|
220
|
-
- app/assets/stylesheets/glimmer.css
|
234
|
+
- app/assets/stylesheets/glimmer/glimmer.css
|
221
235
|
- app/assets/stylesheets/glimmer/jquery-ui.css
|
222
236
|
- app/assets/stylesheets/glimmer/jquery-ui.structure.css
|
223
237
|
- app/assets/stylesheets/glimmer/jquery-ui.theme.css
|
224
238
|
- app/assets/stylesheets/glimmer/jquery.ui.timepicker.css
|
239
|
+
- lib/display.rb
|
240
|
+
- lib/file.rb
|
225
241
|
- lib/glimmer-dsl-opal.rb
|
226
242
|
- lib/glimmer-dsl-opal/ext/date.rb
|
227
243
|
- lib/glimmer-dsl-opal/ext/exception.rb
|
244
|
+
- lib/glimmer-dsl-opal/ext/struct.rb
|
228
245
|
- lib/glimmer-dsl-opal/samples/elaborate/contact_manager.rb
|
229
246
|
- lib/glimmer-dsl-opal/samples/elaborate/contact_manager/contact.rb
|
230
247
|
- lib/glimmer-dsl-opal/samples/elaborate/contact_manager/contact_manager_presenter.rb
|
@@ -248,6 +265,7 @@ files:
|
|
248
265
|
- lib/glimmer-dsl-opal/samples/hello/hello_radio.rb
|
249
266
|
- lib/glimmer-dsl-opal/samples/hello/hello_radio_group.rb
|
250
267
|
- lib/glimmer-dsl-opal/samples/hello/hello_tab.rb
|
268
|
+
- lib/glimmer-dsl-opal/samples/hello/hello_table.rb
|
251
269
|
- lib/glimmer-dsl-opal/samples/hello/hello_world.rb
|
252
270
|
- lib/glimmer-dsl-opal/vendor/jquery-ui-timepicker/GPL-LICENSE.txt
|
253
271
|
- lib/glimmer-dsl-opal/vendor/jquery-ui-timepicker/MIT-LICENSE.txt
|
@@ -269,12 +287,12 @@ files:
|
|
269
287
|
- lib/glimmer-dsl-opal/vendor/jquery.js
|
270
288
|
- lib/glimmer-dsl-swt.rb
|
271
289
|
- lib/glimmer/data_binding/element_binding.rb
|
272
|
-
- lib/glimmer/data_binding/ext/observable_model.rb
|
273
290
|
- lib/glimmer/data_binding/list_selection_binding.rb
|
274
291
|
- lib/glimmer/data_binding/observable_element.rb
|
275
292
|
- lib/glimmer/data_binding/table_items_binding.rb
|
276
293
|
- lib/glimmer/dsl/opal/async_exec_expression.rb
|
277
294
|
- lib/glimmer/dsl/opal/bind_expression.rb
|
295
|
+
- lib/glimmer/dsl/opal/block_property_expression.rb
|
278
296
|
- lib/glimmer/dsl/opal/checkbox_group_selection_data_binding_expression.rb
|
279
297
|
- lib/glimmer/dsl/opal/color_expression.rb
|
280
298
|
- lib/glimmer/dsl/opal/column_properties_expression.rb
|
@@ -310,6 +328,7 @@ files:
|
|
310
328
|
- lib/glimmer/swt/color_proxy.rb
|
311
329
|
- lib/glimmer/swt/combo_proxy.rb
|
312
330
|
- lib/glimmer/swt/composite_proxy.rb
|
331
|
+
- lib/glimmer/swt/control_editor.rb
|
313
332
|
- lib/glimmer/swt/custom/checkbox_group.rb
|
314
333
|
- lib/glimmer/swt/custom/radio_group.rb
|
315
334
|
- lib/glimmer/swt/date_time_proxy.rb
|
@@ -337,6 +356,7 @@ files:
|
|
337
356
|
- lib/glimmer/swt/tab_folder_proxy.rb
|
338
357
|
- lib/glimmer/swt/tab_item_proxy.rb
|
339
358
|
- lib/glimmer/swt/table_column_proxy.rb
|
359
|
+
- lib/glimmer/swt/table_editor.rb
|
340
360
|
- lib/glimmer/swt/table_item_proxy.rb
|
341
361
|
- lib/glimmer/swt/table_proxy.rb
|
342
362
|
- lib/glimmer/swt/text_proxy.rb
|
@@ -345,6 +365,7 @@ files:
|
|
345
365
|
- lib/glimmer/ui/custom_widget.rb
|
346
366
|
- lib/glimmer/util/proc_tracker.rb
|
347
367
|
- lib/net/http.rb
|
368
|
+
- lib/os.rb
|
348
369
|
- lib/uri.rb
|
349
370
|
homepage: http://github.com/AndyObtiva/glimmer-dsl-opal
|
350
371
|
licenses:
|
@@ -1,40 +0,0 @@
|
|
1
|
-
require 'glimmer/data_binding/observable'
|
2
|
-
require 'glimmer/data_binding/observer'
|
3
|
-
require 'glimmer/swt/display_proxy'
|
4
|
-
|
5
|
-
# This ensures all data-binding events happen async and block on modal display
|
6
|
-
|
7
|
-
module Glimmer
|
8
|
-
module DataBinding
|
9
|
-
# TODO prefix utility methods with double-underscore
|
10
|
-
module ObservableModel
|
11
|
-
include Observable
|
12
|
-
# include Glimmer
|
13
|
-
|
14
|
-
def add_property_writer_observers(property_name)
|
15
|
-
property_writer_name = "#{property_name}="
|
16
|
-
method(property_writer_name)
|
17
|
-
ensure_array_object_observer(property_name, send(property_name))
|
18
|
-
begin
|
19
|
-
method("__original_#{property_writer_name}")
|
20
|
-
rescue
|
21
|
-
old_method = self.class.instance_method(property_writer_name)
|
22
|
-
define_singleton_method("__original_#{property_writer_name}", old_method)
|
23
|
-
define_singleton_method(property_writer_name) do |value|
|
24
|
-
old_value = self.send(property_name)
|
25
|
-
unregister_dependent_observers(property_name, old_value)
|
26
|
-
self.send("__original_#{property_writer_name}", value)
|
27
|
-
# Glimmer::Opal::DisplayProxy.instance.async_exec do
|
28
|
-
notify_observers(property_name)
|
29
|
-
ensure_array_object_observer(property_name, value, old_value)
|
30
|
-
# end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
rescue => e
|
34
|
-
# ignore writing if no property writer exists
|
35
|
-
Glimmer::Config.logger&.debug "No need to observe property writer: #{property_writer_name}\n#{e.message}\n#{e.backtrace.join("\n")}"
|
36
|
-
end
|
37
|
-
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|