glimmer-dsl-opal 0.4.0 → 0.5.0
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 +18 -0
- data/README.md +530 -13
- data/VERSION +1 -1
- data/lib/glimmer-dsl-opal/samples/hello/hello_checkbox.rb +85 -0
- data/lib/glimmer-dsl-opal/samples/hello/hello_checkbox_group.rb +68 -0
- data/lib/glimmer-dsl-opal/samples/hello/hello_custom_widget.rb +3 -3
- data/lib/glimmer-dsl-opal/samples/hello/hello_group.rb +104 -0
- data/lib/glimmer-dsl-opal/samples/hello/hello_radio.rb +108 -0
- data/lib/glimmer-dsl-opal/samples/hello/hello_radio_group.rb +84 -0
- data/lib/glimmer-dsl-swt.rb +1 -0
- data/lib/glimmer/data_binding/element_binding.rb +2 -1
- data/lib/glimmer/dsl/opal/checkbox_group_selection_data_binding_expression.rb +61 -0
- data/lib/glimmer/dsl/opal/custom_widget_expression.rb +7 -5
- data/lib/glimmer/dsl/opal/dsl.rb +4 -0
- data/lib/glimmer/dsl/opal/property_expression.rb +4 -3
- data/lib/glimmer/dsl/opal/radio_group_selection_data_binding_expression.rb +61 -0
- data/lib/glimmer/swt/button_proxy.rb +15 -1
- data/lib/glimmer/swt/checkbox_proxy.rb +80 -0
- data/lib/glimmer/swt/combo_proxy.rb +4 -4
- data/lib/glimmer/swt/custom/checkbox_group.rb +142 -0
- data/lib/glimmer/swt/custom/radio_group.rb +143 -0
- data/lib/glimmer/swt/grid_layout_proxy.rb +19 -8
- data/lib/glimmer/swt/group_proxy.rb +38 -0
- data/lib/glimmer/swt/label_proxy.rb +27 -7
- data/lib/glimmer/swt/layout_data_proxy.rb +31 -13
- data/lib/glimmer/swt/list_proxy.rb +2 -2
- data/lib/glimmer/swt/radio_proxy.rb +81 -0
- data/lib/glimmer/swt/row_layout_proxy.rb +32 -9
- data/lib/glimmer/swt/scrolled_composite_proxy.rb +20 -0
- data/lib/glimmer/swt/shell_proxy.rb +21 -9
- data/lib/glimmer/swt/widget_proxy.rb +46 -30
- metadata +15 -2
@@ -8,9 +8,10 @@ module Glimmer
|
|
8
8
|
STYLE = <<~CSS
|
9
9
|
.row-layout {
|
10
10
|
display: flex;
|
11
|
+
align-items: flex-start;
|
11
12
|
}
|
12
13
|
|
13
|
-
.row-layout-pack {
|
14
|
+
.row-layout-pack-false {
|
14
15
|
display: initial;
|
15
16
|
}
|
16
17
|
|
@@ -18,8 +19,8 @@ module Glimmer
|
|
18
19
|
flex-direction: row;
|
19
20
|
}
|
20
21
|
|
21
|
-
.row-layout-horizontal.row-layout-pack {
|
22
|
-
flex-direction:
|
22
|
+
.row-layout-horizontal.row-layout-pack-false {
|
23
|
+
flex-direction: unset;
|
23
24
|
}
|
24
25
|
|
25
26
|
.row-layout-vertical {
|
@@ -27,11 +28,11 @@ module Glimmer
|
|
27
28
|
}
|
28
29
|
|
29
30
|
.row-layout-vertical.row-layout-pack {
|
30
|
-
flex-direction: none;
|
31
|
+
flex-direction: none;
|
31
32
|
}
|
32
33
|
CSS
|
33
34
|
|
34
|
-
attr_reader :type, :margin_width, :margin_height, :spacing, :pack
|
35
|
+
attr_reader :type, :margin_width, :margin_height, :margin_top, :margin_right, :margin_bottom, :margin_left, :spacing, :pack
|
35
36
|
|
36
37
|
def initialize(parent, args)
|
37
38
|
super(parent, args)
|
@@ -51,7 +52,7 @@ module Glimmer
|
|
51
52
|
@type == :vertical
|
52
53
|
end
|
53
54
|
|
54
|
-
def dom(widget_dom)
|
55
|
+
def dom(widget_dom)
|
55
56
|
dom_result = widget_dom
|
56
57
|
dom_result += '<br />' if vertical? && @pack
|
57
58
|
dom_result
|
@@ -60,9 +61,9 @@ module Glimmer
|
|
60
61
|
def pack=(value)
|
61
62
|
@pack = value
|
62
63
|
if @pack
|
63
|
-
@parent.dom_element.
|
64
|
+
@parent.dom_element.remove_class('row-layout-pack-false')
|
64
65
|
else
|
65
|
-
@parent.dom_element.
|
66
|
+
@parent.dom_element.add_class('row-layout-pack-false')
|
66
67
|
end
|
67
68
|
end
|
68
69
|
|
@@ -79,6 +80,28 @@ module Glimmer
|
|
79
80
|
@parent.dom_element.css('padding-bottom', @margin_height)
|
80
81
|
end
|
81
82
|
|
83
|
+
def margin_top=(pixels)
|
84
|
+
@margin_top = pixels
|
85
|
+
# Using padding for width since margin-right isn't getting respected with width 100%
|
86
|
+
@parent.dom_element.css('padding-top', @margin_top)
|
87
|
+
end
|
88
|
+
|
89
|
+
def margin_right=(pixels)
|
90
|
+
@margin_right = pixels
|
91
|
+
@parent.dom_element.css('padding-right', @margin_right)
|
92
|
+
end
|
93
|
+
|
94
|
+
def margin_bottom=(pixels)
|
95
|
+
@margin_bottom = pixels
|
96
|
+
# Using padding for width since margin-right isn't getting respected with width 100%
|
97
|
+
@parent.dom_element.css('padding-bottom', @margin_bottom)
|
98
|
+
end
|
99
|
+
|
100
|
+
def margin_left=(pixels)
|
101
|
+
@margin_left = pixels
|
102
|
+
@parent.dom_element.css('padding-left', @margin_left)
|
103
|
+
end
|
104
|
+
|
82
105
|
def spacing=(spacing)
|
83
106
|
@spacing = spacing.to_i
|
84
107
|
# TODO implement changes to accomodate layout_data in the future
|
@@ -89,7 +112,7 @@ module Glimmer
|
|
89
112
|
elsif vertical?
|
90
113
|
margin_bottom "#{@spacing}px"
|
91
114
|
end
|
92
|
-
}
|
115
|
+
}
|
93
116
|
s("##{@parent.id} > :last-child") {
|
94
117
|
if horizontal?
|
95
118
|
margin_right 0
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'glimmer/swt/grid_layout_proxy'
|
2
|
+
require 'glimmer/swt/widget_proxy'
|
3
|
+
|
4
|
+
module Glimmer
|
5
|
+
module SWT
|
6
|
+
class ScrolledCompositeProxy < CompositeProxy
|
7
|
+
STYLE = <<~CSS
|
8
|
+
.scrolled-composite {
|
9
|
+
}
|
10
|
+
CSS
|
11
|
+
|
12
|
+
# TODO set overflow-y and overflow-x based on :v_scroll and :h_scroll styles.... though consider also that it might not be needed in web browsers where scrollbars are always present
|
13
|
+
# height: 100px;
|
14
|
+
# overflow-y: auto;
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
|
20
|
+
end
|
@@ -54,7 +54,7 @@ module Glimmer
|
|
54
54
|
.selected, .tabs .tab.selected {
|
55
55
|
background: rgb(80, 116, 211);
|
56
56
|
color: white;
|
57
|
-
}
|
57
|
+
}
|
58
58
|
CSS
|
59
59
|
end
|
60
60
|
|
@@ -122,11 +122,11 @@ module Glimmer
|
|
122
122
|
/* Create an selected/current tablink class */
|
123
123
|
.tabs .tab.selected {
|
124
124
|
background-color: #ccc;
|
125
|
-
}
|
125
|
+
}
|
126
126
|
/* Change background color of buttons on hover */
|
127
127
|
.tabs .tab:hover {
|
128
128
|
background-color: #ddd;
|
129
|
-
}
|
129
|
+
}
|
130
130
|
/* Style the tab content */
|
131
131
|
.tab-item {
|
132
132
|
padding: 6px 12px;
|
@@ -190,14 +190,14 @@ module Glimmer
|
|
190
190
|
end
|
191
191
|
|
192
192
|
def style_dom_table_css
|
193
|
-
<<~CSS
|
193
|
+
<<~CSS
|
194
194
|
table {
|
195
195
|
border-spacing: 0;
|
196
196
|
}
|
197
197
|
|
198
198
|
table tr th,td {
|
199
199
|
cursor: default;
|
200
|
-
}
|
200
|
+
}
|
201
201
|
CSS
|
202
202
|
end
|
203
203
|
|
@@ -218,14 +218,14 @@ module Glimmer
|
|
218
218
|
}
|
219
219
|
style(class: 'tab-style') {
|
220
220
|
style_dom_tab_css
|
221
|
-
}
|
221
|
+
}
|
222
222
|
# style(class: 'tab-item-style') {
|
223
223
|
# style_dom_tab_item_css
|
224
|
-
# }
|
224
|
+
# }
|
225
225
|
# style(class: 'modal-style') {
|
226
226
|
# style_dom_modal_css
|
227
|
-
# }
|
228
|
-
style(class: 'table-style') {
|
227
|
+
# }
|
228
|
+
style(class: 'table-style') {
|
229
229
|
style_dom_table_css
|
230
230
|
}
|
231
231
|
style(class: 'fill-layout-style') {
|
@@ -234,6 +234,18 @@ module Glimmer
|
|
234
234
|
style(class: 'row-layout-style') {
|
235
235
|
Glimmer::SWT::RowLayoutProxy::STYLE
|
236
236
|
}
|
237
|
+
style(class: 'grid-layout-style') {
|
238
|
+
Glimmer::SWT::GridLayoutProxy::STYLE
|
239
|
+
}
|
240
|
+
style(class: 'checkbox-style') {
|
241
|
+
Glimmer::SWT::CheckboxProxy::STYLE
|
242
|
+
}
|
243
|
+
style(class: 'radio-style') {
|
244
|
+
Glimmer::SWT::RadioProxy::STYLE
|
245
|
+
}
|
246
|
+
style(class: 'scrolled-composite-style') {
|
247
|
+
Glimmer::SWT::ScrolledCompositeProxy::STYLE
|
248
|
+
}
|
237
249
|
}
|
238
250
|
}.to_s
|
239
251
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
# Copyright (c) 2020 Andy Maleh
|
2
|
-
#
|
2
|
+
#
|
3
3
|
# Permission is hereby granted, free of charge, to any person obtaining
|
4
4
|
# a copy of this software and associated documentation files (the
|
5
5
|
# "Software"), to deal in the Software without restriction, including
|
@@ -7,10 +7,10 @@
|
|
7
7
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
8
8
|
# permit persons to whom the Software is furnished to do so, subject to
|
9
9
|
# the following conditions:
|
10
|
-
#
|
10
|
+
#
|
11
11
|
# The above copyright notice and this permission notice shall be
|
12
12
|
# included in all copies or substantial portions of the Software.
|
13
|
-
#
|
13
|
+
#
|
14
14
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
15
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
16
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
@@ -29,13 +29,13 @@ module Glimmer
|
|
29
29
|
include Glimmer
|
30
30
|
include PropertyOwner
|
31
31
|
|
32
|
-
attr_reader :parent, :args, :path, :children, :enabled, :foreground, :background, :font
|
32
|
+
attr_reader :parent, :args, :path, :children, :enabled, :foreground, :background, :font, :focus
|
33
33
|
|
34
34
|
class << self
|
35
35
|
# Factory Method that translates a Glimmer DSL keyword into a WidgetProxy object
|
36
36
|
def for(keyword, parent, args)
|
37
37
|
the_widget_class = widget_class(keyword)
|
38
|
-
the_widget_class.new(parent, args)
|
38
|
+
the_widget_class.respond_to?(:create) ? the_widget_class.create(parent, args) : the_widget_class.new(parent, args)
|
39
39
|
end
|
40
40
|
|
41
41
|
def widget_class(keyword)
|
@@ -69,7 +69,7 @@ module Glimmer
|
|
69
69
|
|
70
70
|
def underscored_widget_name(widget_proxy)
|
71
71
|
widget_proxy.class.name.split(/::|\./).last.sub(/Proxy$/, '').underscore
|
72
|
-
end
|
72
|
+
end
|
73
73
|
end
|
74
74
|
|
75
75
|
DEFAULT_INITIALIZERS = {
|
@@ -95,27 +95,27 @@ module Glimmer
|
|
95
95
|
# "group" => lambda do |group_proxy|
|
96
96
|
# group_proxy.layout = GridLayoutProxy.new(group_proxy, []) if group.layout.nil?
|
97
97
|
# end,
|
98
|
-
}
|
98
|
+
}
|
99
99
|
|
100
100
|
def initialize(parent, args)
|
101
|
-
@parent = parent
|
101
|
+
@parent = parent
|
102
102
|
@args = args
|
103
103
|
@children = Set.new # TODO consider moving to composite
|
104
104
|
@enabled = true
|
105
105
|
DEFAULT_INITIALIZERS[self.class.underscored_widget_name(self)]&.call(self)
|
106
|
-
@parent.add_child(self) # TODO rename to post_initialize_child to be closer to glimmer-dsl-swt terminology
|
106
|
+
@parent.add_child(self) # TODO rename to post_initialize_child to be closer to glimmer-dsl-swt terminology
|
107
107
|
end
|
108
108
|
|
109
109
|
def css_classes
|
110
110
|
dom_element.attr('class').to_s.split
|
111
|
-
end
|
111
|
+
end
|
112
112
|
|
113
113
|
def dispose
|
114
114
|
Document.find(path).remove
|
115
115
|
end
|
116
116
|
|
117
117
|
def path
|
118
|
-
"#{parent_path}
|
118
|
+
"#{parent_path} #{element}##{id}.#{name}"
|
119
119
|
end
|
120
120
|
|
121
121
|
# Root element representing widget. Must be overridden by subclasses if different from div
|
@@ -151,6 +151,16 @@ module Glimmer
|
|
151
151
|
dom_element.css('font-size', "#{@font.height}px") unless @font.nil?
|
152
152
|
end
|
153
153
|
|
154
|
+
def focus=(value)
|
155
|
+
@focus = value
|
156
|
+
dom_element.focus # TODO consider if a delay or async_exec is needed here
|
157
|
+
end
|
158
|
+
|
159
|
+
def set_focus
|
160
|
+
self.focus = true
|
161
|
+
end
|
162
|
+
alias setFocus set_focus
|
163
|
+
|
154
164
|
def parent_path
|
155
165
|
@parent.path
|
156
166
|
end
|
@@ -172,14 +182,14 @@ module Glimmer
|
|
172
182
|
end
|
173
183
|
children.each do |child|
|
174
184
|
child.render
|
175
|
-
end
|
185
|
+
end
|
176
186
|
end
|
177
187
|
alias redraw render
|
178
188
|
|
179
189
|
def build_dom
|
180
190
|
@dom = nil
|
181
191
|
@dom = dom
|
182
|
-
@dom = @parent.layout.dom(@dom) if @parent.respond_to?(:layout) && @parent.layout
|
192
|
+
@dom = @parent.layout.dom(@dom) if @parent.respond_to?(:layout) && @parent.layout
|
183
193
|
end
|
184
194
|
|
185
195
|
def content(&block)
|
@@ -234,6 +244,7 @@ module Glimmer
|
|
234
244
|
end
|
235
245
|
|
236
246
|
def dom_element
|
247
|
+
# TODO consider making this pick an element in relation to its parent, allowing unhooked dom elements to be built if needed (unhooked to the visible page dom)
|
237
248
|
Document.find(path)
|
238
249
|
end
|
239
250
|
|
@@ -260,10 +271,10 @@ module Glimmer
|
|
260
271
|
end
|
261
272
|
|
262
273
|
def listener_dom_element
|
263
|
-
Document.find(listener_path)
|
274
|
+
Document.find(listener_path)
|
264
275
|
end
|
265
276
|
|
266
|
-
def can_handle_observation_request?(observation_request)
|
277
|
+
def can_handle_observation_request?(observation_request)
|
267
278
|
# TODO sort this out for Opal
|
268
279
|
observation_request = observation_request.to_s
|
269
280
|
if observation_request.start_with?('on_swt_')
|
@@ -274,15 +285,15 @@ module Glimmer
|
|
274
285
|
# can_add_listener?(event) || can_handle_drag_observation_request?(observation_request) || can_handle_drop_observation_request?(observation_request)
|
275
286
|
true # TODO filter by valid listeners only in the future
|
276
287
|
end
|
277
|
-
end
|
288
|
+
end
|
278
289
|
|
279
|
-
def handle_observation_request(keyword, &event_listener)
|
290
|
+
def handle_observation_request(keyword, &event_listener)
|
280
291
|
return unless observation_request_to_event_mapping.keys.include?(keyword)
|
281
292
|
@observation_requests ||= {}
|
282
293
|
@observation_requests[keyword] ||= Set.new
|
283
294
|
event = nil
|
284
295
|
delegate = nil
|
285
|
-
[observation_request_to_event_mapping[keyword]].flatten.each do |mapping|
|
296
|
+
[observation_request_to_event_mapping[keyword]].flatten.each do |mapping|
|
286
297
|
@observation_requests[keyword] << event_listener
|
287
298
|
event = mapping[:event]
|
288
299
|
event_handler = mapping[:event_handler]
|
@@ -357,9 +368,9 @@ module Glimmer
|
|
357
368
|
# value
|
358
369
|
# end
|
359
370
|
# end,
|
360
|
-
|
361
|
-
|
362
|
-
|
371
|
+
:items => lambda do |value|
|
372
|
+
value.to_java :string
|
373
|
+
end,
|
363
374
|
:text => lambda do |value|
|
364
375
|
# if swt_widget.is_a?(Browser)
|
365
376
|
# value.to_s
|
@@ -370,8 +381,8 @@ module Glimmer
|
|
370
381
|
# :visible => lambda do |value|
|
371
382
|
# !!value
|
372
383
|
# end,
|
373
|
-
}
|
374
|
-
end
|
384
|
+
}
|
385
|
+
end
|
375
386
|
|
376
387
|
def widget_property_listener_installers
|
377
388
|
@swt_widget_property_listener_installers ||= {
|
@@ -450,13 +461,13 @@ module Glimmer
|
|
450
461
|
# }
|
451
462
|
# end,
|
452
463
|
# },
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
464
|
+
RadioProxy => { #radio?
|
465
|
+
:selection => lambda do |observer|
|
466
|
+
on_widget_selected { |selection_event|
|
467
|
+
observer.call(selection)
|
468
|
+
}
|
469
|
+
end
|
470
|
+
},
|
460
471
|
# Java::OrgEclipseSwtWidgets::MenuItem => {
|
461
472
|
# :selection => lambda do |observer|
|
462
473
|
# on_widget_selected { |selection_event|
|
@@ -481,15 +492,20 @@ end
|
|
481
492
|
require 'glimmer/swt/browser_proxy'
|
482
493
|
require 'glimmer/swt/button_proxy'
|
483
494
|
require 'glimmer/swt/combo_proxy'
|
495
|
+
require 'glimmer/swt/checkbox_proxy'
|
484
496
|
require 'glimmer/swt/composite_proxy'
|
497
|
+
require 'glimmer/swt/group_proxy'
|
485
498
|
require 'glimmer/swt/label_proxy'
|
486
499
|
require 'glimmer/swt/list_proxy'
|
500
|
+
require 'glimmer/swt/radio_proxy'
|
487
501
|
require 'glimmer/swt/tab_folder_proxy'
|
488
502
|
require 'glimmer/swt/tab_item_proxy'
|
489
503
|
require 'glimmer/swt/table_column_proxy'
|
490
504
|
require 'glimmer/swt/table_item_proxy'
|
491
505
|
require 'glimmer/swt/table_proxy'
|
492
506
|
require 'glimmer/swt/text_proxy'
|
507
|
+
require 'glimmer/swt/radio_proxy'
|
508
|
+
require 'glimmer/swt/scrolled_composite_proxy'
|
493
509
|
require 'glimmer/swt/styled_text_proxy'
|
494
510
|
|
495
511
|
require 'glimmer/dsl/opal/widget_expression'
|
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.5.0
|
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-11-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: glimmer
|
@@ -221,13 +221,18 @@ files:
|
|
221
221
|
- lib/glimmer-dsl-opal/samples/elaborate/tic_tac_toe/board.rb
|
222
222
|
- lib/glimmer-dsl-opal/samples/elaborate/tic_tac_toe/cell.rb
|
223
223
|
- lib/glimmer-dsl-opal/samples/hello/hello_browser.rb
|
224
|
+
- lib/glimmer-dsl-opal/samples/hello/hello_checkbox.rb
|
225
|
+
- lib/glimmer-dsl-opal/samples/hello/hello_checkbox_group.rb
|
224
226
|
- lib/glimmer-dsl-opal/samples/hello/hello_combo.rb
|
225
227
|
- lib/glimmer-dsl-opal/samples/hello/hello_computed.rb
|
226
228
|
- lib/glimmer-dsl-opal/samples/hello/hello_computed/contact.rb
|
227
229
|
- lib/glimmer-dsl-opal/samples/hello/hello_custom_shell.rb
|
228
230
|
- lib/glimmer-dsl-opal/samples/hello/hello_custom_widget.rb
|
231
|
+
- lib/glimmer-dsl-opal/samples/hello/hello_group.rb
|
229
232
|
- lib/glimmer-dsl-opal/samples/hello/hello_list_multi_selection.rb
|
230
233
|
- lib/glimmer-dsl-opal/samples/hello/hello_list_single_selection.rb
|
234
|
+
- lib/glimmer-dsl-opal/samples/hello/hello_radio.rb
|
235
|
+
- lib/glimmer-dsl-opal/samples/hello/hello_radio_group.rb
|
231
236
|
- lib/glimmer-dsl-opal/samples/hello/hello_tab.rb
|
232
237
|
- lib/glimmer-dsl-opal/samples/hello/hello_world.rb
|
233
238
|
- lib/glimmer-dsl-opal/vendor/jquery.js
|
@@ -239,6 +244,7 @@ files:
|
|
239
244
|
- lib/glimmer/data_binding/table_items_binding.rb
|
240
245
|
- lib/glimmer/dsl/opal/async_exec_expression.rb
|
241
246
|
- lib/glimmer/dsl/opal/bind_expression.rb
|
247
|
+
- lib/glimmer/dsl/opal/checkbox_group_selection_data_binding_expression.rb
|
242
248
|
- lib/glimmer/dsl/opal/color_expression.rb
|
243
249
|
- lib/glimmer/dsl/opal/column_properties_expression.rb
|
244
250
|
- lib/glimmer/dsl/opal/combo_selection_data_binding_expression.rb
|
@@ -254,6 +260,7 @@ files:
|
|
254
260
|
- lib/glimmer/dsl/opal/message_box_expression.rb
|
255
261
|
- lib/glimmer/dsl/opal/observe_expression.rb
|
256
262
|
- lib/glimmer/dsl/opal/property_expression.rb
|
263
|
+
- lib/glimmer/dsl/opal/radio_group_selection_data_binding_expression.rb
|
257
264
|
- lib/glimmer/dsl/opal/rgb_expression.rb
|
258
265
|
- lib/glimmer/dsl/opal/rgba_expression.rb
|
259
266
|
- lib/glimmer/dsl/opal/shell_expression.rb
|
@@ -267,14 +274,18 @@ files:
|
|
267
274
|
- lib/glimmer/swt.rb
|
268
275
|
- lib/glimmer/swt/browser_proxy.rb
|
269
276
|
- lib/glimmer/swt/button_proxy.rb
|
277
|
+
- lib/glimmer/swt/checkbox_proxy.rb
|
270
278
|
- lib/glimmer/swt/color_proxy.rb
|
271
279
|
- lib/glimmer/swt/combo_proxy.rb
|
272
280
|
- lib/glimmer/swt/composite_proxy.rb
|
281
|
+
- lib/glimmer/swt/custom/checkbox_group.rb
|
282
|
+
- lib/glimmer/swt/custom/radio_group.rb
|
273
283
|
- lib/glimmer/swt/display_proxy.rb
|
274
284
|
- lib/glimmer/swt/event_listener_proxy.rb
|
275
285
|
- lib/glimmer/swt/fill_layout_proxy.rb
|
276
286
|
- lib/glimmer/swt/font_proxy.rb
|
277
287
|
- lib/glimmer/swt/grid_layout_proxy.rb
|
288
|
+
- lib/glimmer/swt/group_proxy.rb
|
278
289
|
- lib/glimmer/swt/label_proxy.rb
|
279
290
|
- lib/glimmer/swt/layout_data_proxy.rb
|
280
291
|
- lib/glimmer/swt/layout_proxy.rb
|
@@ -283,7 +294,9 @@ files:
|
|
283
294
|
- lib/glimmer/swt/message_box_proxy.rb
|
284
295
|
- lib/glimmer/swt/point.rb
|
285
296
|
- lib/glimmer/swt/property_owner.rb
|
297
|
+
- lib/glimmer/swt/radio_proxy.rb
|
286
298
|
- lib/glimmer/swt/row_layout_proxy.rb
|
299
|
+
- lib/glimmer/swt/scrolled_composite_proxy.rb
|
287
300
|
- lib/glimmer/swt/shell_proxy.rb
|
288
301
|
- lib/glimmer/swt/style_constantizable.rb
|
289
302
|
- lib/glimmer/swt/styled_text_proxy.rb
|