glimmer-dsl-swt 4.24.0.1 → 4.24.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/README.md +51 -12
- data/RUBY_VERSION +1 -1
- data/VERSION +1 -1
- data/docs/reference/GLIMMER_GUI_DSL_SYNTAX.md +704 -43
- data/docs/reference/GLIMMER_SAMPLES.md +3 -23
- data/glimmer-dsl-swt.gemspec +0 -0
- data/lib/glimmer/rake_task/scaffold.rb +11 -18
- data/lib/glimmer/swt/custom/shape/path_segment.rb +1 -0
- data/samples/elaborate/meta_sample/tutorials.yml +3 -0
- data/samples/hello/hello_canvas_data_binding.rb +695 -38
- data/samples/hello/hello_canvas_path.rb +94 -89
- data/samples/hello/hello_canvas_transform.rb +3 -0
- metadata +2 -2
@@ -82,7 +82,6 @@
|
|
82
82
|
- [Snake](#snake)
|
83
83
|
- [External Samples](#external-samples)
|
84
84
|
- [Glimmer Calculator](#glimmer-calculator)
|
85
|
-
- [Gladiator](#gladiator)
|
86
85
|
- [Timer](#timer)
|
87
86
|
- [Contact Manager App](#contact-manager-app)
|
88
87
|
- [License](#license)
|
@@ -101,7 +100,7 @@ This brings up the [Glimmer Meta-Sample (The Sample of Samples)](/samples/elabor
|
|
101
100
|
|
102
101
|
![Glimmer Meta-Sample](/images/glimmer-meta-sample.png)
|
103
102
|
|
104
|
-
You may edit the code of any sample before launching it by clicking on the "Launch" button. This helps you learn by experimenting with Glimmer GUI DSL syntax. To go back to original code, simply hit the "Reset" button.
|
103
|
+
You may edit the code of any sample before launching it by clicking on the "Launch" button. This helps you learn by experimenting with Glimmer GUI DSL syntax. To go back to original code, simply hit the "Reset" button. Also, for some samples, you can click the "Tutorial" button, and a YouTube video is played to guide you through learning the sample. The YouTube videos are played from the [Glimmer YouTube Channel](https://www.youtube.com/channel/UC5hzDE23HZXsZLAxYk2UJEw).
|
105
104
|
|
106
105
|
Note that if you fail to run any sample through the Glimmer Meta-Sample for whatever reason, you could always run directly by cloning the project, running `bundle`, and then this command (drop the "bin" if you install the glimmer-dsl-swt gem instead):
|
107
106
|
|
@@ -863,7 +862,7 @@ Hello, Canvas! Colors Changed
|
|
863
862
|
|
864
863
|
Hello, Canvas! Data-Binding (changing a `text` shape `string` via data-binding changes from another thread)
|
865
864
|
|
866
|
-
![Hello Canvas Data Binding](/images/glimmer-hello-canvas-data-binding.gif)
|
865
|
+
![Hello Canvas Text Data Binding](/images/glimmer-hello-canvas-text-data-binding.gif)
|
867
866
|
|
868
867
|
#### Hello, Canvas Animation!
|
869
868
|
|
@@ -923,9 +922,7 @@ Code:
|
|
923
922
|
|
924
923
|
Hello, Canvas Data Binding!
|
925
924
|
|
926
|
-
![Hello Canvas Data Binding](/images/glimmer-hello-canvas-data-binding.
|
927
|
-
|
928
|
-
![Hello Canvas Data Binding Line Changed](/images/glimmer-hello-canvas-data-binding-line-changed.png)
|
925
|
+
![Hello Canvas Data Binding](/images/glimmer-hello-canvas-data-binding.gif)
|
929
926
|
|
930
927
|
#### Hello, Canvas Shape Listeners!
|
931
928
|
|
@@ -1407,23 +1404,6 @@ Snake
|
|
1407
1404
|
|
1408
1405
|
[<img src="https://raw.githubusercontent.com/AndyObtiva/glimmer-cs-calculator/master/glimmer-cs-calculator-screenshot.png" />](https://github.com/AndyObtiva/glimmer-cs-calculator)
|
1409
1406
|
|
1410
|
-
#### Gladiator
|
1411
|
-
|
1412
|
-
[<img src='https://raw.githubusercontent.com/AndyObtiva/glimmer-cs-gladiator/master/images/glimmer-cs-gladiator-logo.png' height=40 /> Gladiator](https://github.com/AndyObtiva/glimmer-cs-gladiator) (short for Glimmer Editor) is a Glimmer sample project under on-going development.
|
1413
|
-
You may check it out to learn how to build a Glimmer Custom Shell gem.
|
1414
|
-
|
1415
|
-
[<img src="https://raw.githubusercontent.com/AndyObtiva/glimmer-cs-gladiator/master/images/glimmer-gladiator.png" />](https://github.com/AndyObtiva/glimmer-cs-gladiator)
|
1416
|
-
|
1417
|
-
Gladiator is a good demonstration of:
|
1418
|
-
- MVP Pattern
|
1419
|
-
- Tree data-binding
|
1420
|
-
- List data-binding
|
1421
|
-
- Text selection data-binding
|
1422
|
-
- Tabs
|
1423
|
-
- Context menus
|
1424
|
-
- Custom Shell
|
1425
|
-
- Custom widget
|
1426
|
-
|
1427
1407
|
#### Timer
|
1428
1408
|
|
1429
1409
|
[<img alt="Glimmer Timer Icon" src="https://raw.githubusercontent.com/AndyObtiva/glimmer-cs-timer/master/images/glimmer-timer-logo.png" height=40 /> Timer](https://github.com/AndyObtiva/glimmer-cs-timer) is a sample app demonstrating data-binding, multi-threading, and JSound (Java Sound) library integration in a desktop application.
|
data/glimmer-dsl-swt.gemspec
CHANGED
Binary file
|
@@ -125,6 +125,7 @@ module Glimmer
|
|
125
125
|
GEMFILE_SUFFIX = <<~MULTI_LINE_STRING
|
126
126
|
|
127
127
|
group :development do
|
128
|
+
gem 'jar-dependencies', '0.4.1'
|
128
129
|
gem 'rspec', '~> 3.5.0'
|
129
130
|
gem 'juwelier', '2.4.9'
|
130
131
|
gem 'warbler', '2.0.5'
|
@@ -195,16 +196,12 @@ module Glimmer
|
|
195
196
|
system "bash -c '#{RVM_FUNCTION}\n cd .\n bundle\n rspec --init\n'"
|
196
197
|
end
|
197
198
|
write 'spec/spec_helper.rb', spec_helper_file
|
198
|
-
if OS.
|
199
|
-
system "
|
200
|
-
|
199
|
+
if OS.mac?
|
200
|
+
system "bash -c '#{RVM_FUNCTION}\n cd .\n JRUBY_OPTS=\"$JRUBY_OPTS -J-XstartOnFirstThread\" glimmer run\n'"
|
201
|
+
elsif OS.linux?
|
202
|
+
system "bash -c '#{RVM_FUNCTION}\n cd .\n glimmer run\n'"
|
201
203
|
else
|
202
|
-
system "
|
203
|
-
if OS.mac?
|
204
|
-
system "bash -c '#{RVM_FUNCTION}\n cd .\n JRUBY_OPTS=\"$JRUBY_OPTS -J-XstartOnFirstThread\" glimmer run\n'"
|
205
|
-
else
|
206
|
-
system "bash -c '#{RVM_FUNCTION}\n cd .\n glimmer run\n'"
|
207
|
-
end
|
204
|
+
system "glimmer run"
|
208
205
|
end
|
209
206
|
end
|
210
207
|
|
@@ -294,16 +291,12 @@ module Glimmer
|
|
294
291
|
cp File.expand_path('../../../../icons/scaffold_app.png', __FILE__), icon_file
|
295
292
|
puts "Created #{current_dir_name}/#{icon_file}"
|
296
293
|
|
297
|
-
if OS.
|
298
|
-
system "
|
299
|
-
|
294
|
+
if OS.mac?
|
295
|
+
system "bash -c '#{RVM_FUNCTION}\n cd .\n JRUBY_OPTS=\"$JRUBY_OPTS -J-XstartOnFirstThread\" glimmer run\n'"
|
296
|
+
elsif OS.linux?
|
297
|
+
system "bash -c '#{RVM_FUNCTION}\n cd .\n glimmer run\n'"
|
300
298
|
else
|
301
|
-
system "
|
302
|
-
if OS.mac?
|
303
|
-
system "bash -c '#{RVM_FUNCTION}\n cd .\n JRUBY_OPTS=\"$JRUBY_OPTS -J-XstartOnFirstThread\" glimmer run\n'"
|
304
|
-
else
|
305
|
-
system "bash -c '#{RVM_FUNCTION}\n cd .\n glimmer run\n'"
|
306
|
-
end
|
299
|
+
system "glimmer run"
|
307
300
|
end
|
308
301
|
puts "Finished creating #{gem_name} Ruby gem."
|
309
302
|
puts 'Edit Rakefile to configure gem details.'
|
@@ -98,6 +98,7 @@ module Glimmer
|
|
98
98
|
|
99
99
|
def add_to_swt_path(swt_path)
|
100
100
|
the_path_segment_args = path_segment_args.dup
|
101
|
+
the_path_segment_args = the_path_segment_args.first if the_path_segment_args.size == 1 && the_path_segment_args.first.is_a?(Array)
|
101
102
|
if !is_a?(Point) && self.class != Path
|
102
103
|
if !previous_point_connected?
|
103
104
|
if the_path_segment_args.count == default_path_segment_arg_count
|