glimmer-dsl-opal 0.25.2 → 0.25.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +2 -2
- data/VERSION +1 -1
- data/lib/glimmer-dsl-opal/samples/elaborate/login.rb +3 -5
- data/lib/glimmer/dsl/opal/combo_selection_data_binding_expression.rb +3 -3
- data/lib/glimmer/swt/c_combo_proxy.rb +30 -1
- data/lib/glimmer/swt/combo_proxy.rb +10 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7730a7073849e1cb3cf05073368a974a7cc493fa44621b3fd58d180e76c25c89
|
4
|
+
data.tar.gz: 7588d6730c8f81b27e8aff908bfe3c7f4daff093c004661abbb0c4fb0a2b4756
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f50d2e39e990b86392e4fc719737b19337083380c874e426186dbbfe9ad7b60445a76fa93a8f5cf6d5055576f60209423b940e5efce3fee28f5081a99a61c2a3
|
7
|
+
data.tar.gz: 70634d53b24b7a82fcc8ca50b6b502d8b8b4260d204e89682a953e9bdbae81c7688867c8552082f323b1526170cd40a7a85222f637f8d8fb765c2658ce306e29
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## 0.25.3
|
4
|
+
|
5
|
+
- Fix `c_combo`'s data-binding of selection receiving model changes
|
6
|
+
- Fix Hello, C Combo!'s reset button
|
7
|
+
- Fix Login sample by removing unnecessary require statement at the top
|
8
|
+
|
3
9
|
## 0.25.2
|
4
10
|
|
5
11
|
- Fix sizing of buttons with font height specified to fit text
|
data/README.md
CHANGED
@@ -143,7 +143,7 @@ Hello, Table! Game Booked
|
|
143
143
|
|
144
144
|
NOTE: Glimmer DSL for Opal is an alpha project. Please help make better by contributing, adopting for small or low risk projects, and providing feedback. It is still an early alpha, so the more feedback and issues you report the better.
|
145
145
|
|
146
|
-
**Alpha Version** 0.25.
|
146
|
+
**Alpha Version** 0.25.3 only supports bare-minimum capabilities for the included [samples](https://github.com/AndyObtiva/glimmer-dsl-opal#samples) (originally written for [glimmer-dsl-swt](https://github.com/AndyObtiva/glimmer-dsl-swt))
|
147
147
|
|
148
148
|
Other [Glimmer](https://github.com/AndyObtiva/glimmer) DSL gems:
|
149
149
|
- [glimmer-dsl-swt](https://github.com/AndyObtiva/glimmer-dsl-swt): Glimmer DSL for SWT (JRuby Desktop Development GUI Framework)
|
@@ -266,7 +266,7 @@ gem 'opal', '1.0.4'
|
|
266
266
|
gem 'opal-rails', '1.1.2'
|
267
267
|
gem 'opal-async', '~> 1.3.0'
|
268
268
|
gem 'opal-jquery', '~> 0.4.4'
|
269
|
-
gem 'glimmer-dsl-opal', '~> 0.25.
|
269
|
+
gem 'glimmer-dsl-opal', '~> 0.25.3'
|
270
270
|
gem 'glimmer-dsl-xml', '~> 1.2.0', require: false
|
271
271
|
gem 'glimmer-dsl-css', '~> 1.2.0', require: false
|
272
272
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.25.
|
1
|
+
0.25.3
|
@@ -19,8 +19,6 @@
|
|
19
19
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
20
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
21
21
|
|
22
|
-
require 'glimmer-dsl-swt'
|
23
|
-
|
24
22
|
class LoginPresenter
|
25
23
|
|
26
24
|
attr_accessor :user_name
|
@@ -64,10 +62,10 @@ end
|
|
64
62
|
|
65
63
|
class Login
|
66
64
|
include Glimmer::UI::CustomShell
|
67
|
-
|
68
|
-
before_body
|
65
|
+
|
66
|
+
before_body do
|
69
67
|
@presenter = LoginPresenter.new
|
70
|
-
|
68
|
+
end
|
71
69
|
|
72
70
|
body {
|
73
71
|
shell {
|
@@ -6,17 +6,17 @@ require 'glimmer/swt/combo_proxy'
|
|
6
6
|
module Glimmer
|
7
7
|
module DSL
|
8
8
|
module Opal
|
9
|
-
class ComboSelectionDataBindingExpression < Expression
|
9
|
+
class ComboSelectionDataBindingExpression < Expression
|
10
10
|
def can_interpret?(parent, keyword, *args, &block)
|
11
11
|
keyword == 'selection' and
|
12
12
|
block.nil? and
|
13
|
-
parent.is_a?(Glimmer::SWT::ComboProxy) and
|
13
|
+
(parent.is_a?(Glimmer::SWT::ComboProxy) || parent.is_a?(Glimmer::SWT::CComboProxy)) and
|
14
14
|
args.size == 1 and
|
15
15
|
args[0].is_a?(DataBinding::ModelBinding) and
|
16
16
|
args[0].evaluate_options_property.is_a?(Array)
|
17
17
|
end
|
18
18
|
|
19
|
-
def interpret(parent, keyword, *args, &block)
|
19
|
+
def interpret(parent, keyword, *args, &block)
|
20
20
|
model_binding = args[0]
|
21
21
|
|
22
22
|
#TODO make this options observer dependent and all similar observers in element specific data binding handlers
|
@@ -26,7 +26,7 @@ module Glimmer
|
|
26
26
|
module SWT
|
27
27
|
class CComboProxy < ComboProxy
|
28
28
|
def post_add_content
|
29
|
-
|
29
|
+
dom_element.selectmenu
|
30
30
|
c_combo_dom_element.css('width', 'initial')
|
31
31
|
end
|
32
32
|
|
@@ -38,6 +38,11 @@ module Glimmer
|
|
38
38
|
c_combo_dom_element.css('font-size', "#{@font.height}px") unless @font.nil?
|
39
39
|
end
|
40
40
|
|
41
|
+
def text=(value)
|
42
|
+
super(value)
|
43
|
+
c_combo_text_element.text(value)
|
44
|
+
end
|
45
|
+
|
41
46
|
def c_combo_path
|
42
47
|
"##{id}-button"
|
43
48
|
end
|
@@ -45,6 +50,30 @@ module Glimmer
|
|
45
50
|
def c_combo_dom_element
|
46
51
|
Document.find(c_combo_path)
|
47
52
|
end
|
53
|
+
|
54
|
+
def c_combo_text_path
|
55
|
+
c_combo_path + ' .ui-selectmenu-text'
|
56
|
+
end
|
57
|
+
|
58
|
+
def c_combo_text_element
|
59
|
+
Document.find(c_combo_text_path)
|
60
|
+
end
|
61
|
+
|
62
|
+
def observation_request_to_event_mapping
|
63
|
+
super.merge(
|
64
|
+
'on_widget_selected' => [
|
65
|
+
{
|
66
|
+
event: 'selectmenuchange',
|
67
|
+
event_handler: -> (event_listener) {
|
68
|
+
-> (event) {
|
69
|
+
self.text = event.target.value
|
70
|
+
event_listener.call(event)
|
71
|
+
}
|
72
|
+
}
|
73
|
+
},
|
74
|
+
],
|
75
|
+
)
|
76
|
+
end
|
48
77
|
end
|
49
78
|
end
|
50
79
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
|
1
2
|
require 'glimmer/data_binding/observable_element'
|
2
3
|
require 'glimmer/swt/widget_proxy'
|
3
4
|
|
@@ -6,7 +7,6 @@ module Glimmer
|
|
6
7
|
class ComboProxy < WidgetProxy
|
7
8
|
include Glimmer::DataBinding::ObservableElement
|
8
9
|
attr_reader :text, :items
|
9
|
-
attr_accessor :selection # virtual attribute just to pass the shine data-binding test (TODO THINK OF A BETTER WAY OF HANDLING THIS)
|
10
10
|
|
11
11
|
def initialize(parent, args, block)
|
12
12
|
super(parent, args, block)
|
@@ -19,7 +19,15 @@ module Glimmer
|
|
19
19
|
|
20
20
|
def text=(value)
|
21
21
|
@text = value
|
22
|
-
|
22
|
+
dom_element.val(value)
|
23
|
+
end
|
24
|
+
|
25
|
+
def selection
|
26
|
+
text
|
27
|
+
end
|
28
|
+
|
29
|
+
def selection=(value)
|
30
|
+
self.text = value
|
23
31
|
end
|
24
32
|
|
25
33
|
def items=(the_items)
|