glimmer-dsl-swt 4.17.10.5 → 4.17.10.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 811cbe738d6049291f6f00f32234ebef5af6d334009136314a309bf96807d863
4
- data.tar.gz: f2618026dc2b90cd076a75ffde44334aac013dc412afd23368cc0f072c4b5ed5
3
+ metadata.gz: 527278f09cf48caee9d3cdcc5c5ed1c5a066ff822ea1828c17605aeb7e6f07a9
4
+ data.tar.gz: cd4ae35f2a0e7312c57eb3d998579793687d9240b51c70a76be07e50f5e700dc
5
5
  SHA512:
6
- metadata.gz: ad40ab20b33c48f575ac525b88e1c6c3fd38a5db937416afa748b6d4700f0b0930a3dbf000b69c3ac03cbdc092510762aeacc8a1588616679db6a783ce26fbfc
7
- data.tar.gz: 6bc20ea164c4fda7e35e5400ceb6e864205dc6be59eefc98a296f3df3fd795594b2f054988cbdd55ac6d0bbf555546dfdcad8231906a810ef099212420749aae
6
+ metadata.gz: 799ed5391c3d1e0a658d9f11a94b705bc96889648993a287560355daa0bd567fee8dade2118e2f232115938e5775a17a4500944cc4f1c693a19cfd3e2e452063
7
+ data.tar.gz: 1ca39bc3fa61931c2cf2b1b39caaca18938b2014ec73b0d8bcd47291f40895df0abe3b5d23158126ca457d2e9b27fce382c6216361d798fa928476d5625f7a97
@@ -1,5 +1,10 @@
1
1
  # Change Log
2
2
 
3
+ ### 4.17.10.6
4
+
5
+ - Hello, Link! Sample
6
+ - Refactor hello list samples
7
+
3
8
  ### 4.17.10.5
4
9
 
5
10
  - Hello, Button! Sample
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 SWT 4.17.10.5
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 SWT 4.17.10.6
2
2
 
3
3
  ## JRuby Desktop Development GUI Framework
4
4
  [![Gem Version](https://badge.fury.io/rb/glimmer-dsl-swt.svg)](http://badge.fury.io/rb/glimmer-dsl-swt)
@@ -33,7 +33,7 @@ Glimmer DSL gems:
33
33
 
34
34
  ### Hello, World!
35
35
 
36
- Glimmer code (from [samples/hello/hello_world.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_world.rb)):
36
+ Glimmer code (from [samples/hello/hello_world.rb](samples/hello/hello_world.rb)):
37
37
  ```ruby
38
38
  include Glimmer
39
39
 
@@ -57,7 +57,7 @@ Glimmer app:
57
57
 
58
58
  ### Tic Tac Toe
59
59
 
60
- Glimmer code (from [samples/elaborate/tic_tac_toe.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/elaborate/tic_tac_toe.rb)):
60
+ Glimmer code (from [samples/elaborate/tic_tac_toe.rb](samples/elaborate/tic_tac_toe.rb)):
61
61
 
62
62
  ```ruby
63
63
  # ...
@@ -96,7 +96,7 @@ Glimmer app:
96
96
 
97
97
  ### Contact Manager
98
98
 
99
- Glimmer code (from [samples/elaborate/contact_manager.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/elaborate/contact_manager.rb)):
99
+ Glimmer code (from [samples/elaborate/contact_manager.rb](samples/elaborate/contact_manager.rb)):
100
100
 
101
101
  ```ruby
102
102
  # ...
@@ -355,6 +355,7 @@ Glimmer App:
355
355
  - [Hello, Spinner!](#hello-spinner)
356
356
  - [Hello, Table!](#hello-table)
357
357
  - [Hello, Button!](#hello-button)
358
+ - [Hello, Link!](#hello-link)
358
359
  - [Elaborate Samples](#elaborate-samples)
359
360
  - [User Profile](#user-profile)
360
361
  - [Login](#login)
@@ -448,7 +449,7 @@ jgem install glimmer-dsl-swt
448
449
 
449
450
  Or this command if you want a specific version:
450
451
  ```
451
- jgem install glimmer-dsl-swt -v 4.17.10.5
452
+ jgem install glimmer-dsl-swt -v 4.17.10.6
452
453
 
453
454
  ```
454
455
 
@@ -525,7 +526,7 @@ bin/glimmer samples
525
526
  Below are the full usage instructions that come up when running `glimmer` without args.
526
527
 
527
528
  ```
528
- Glimmer (JRuby Desktop Development GUI Framework) - JRuby Gem: glimmer-dsl-swt v4.17.10.5
529
+ Glimmer (JRuby Desktop Development GUI Framework) - JRuby Gem: glimmer-dsl-swt v4.17.10.6
529
530
 
530
531
 
531
532
  Usage: glimmer [--bundler] [--pd] [--quiet] [--debug] [--log-level=VALUE] [[ENV_VAR=VALUE]...] [[-jruby-option]...] (application.rb or task[task_args]) [[application2.rb]...]
@@ -1003,7 +1004,7 @@ Output:
1003
1004
 
1004
1005
  Css glimmer-dsl-css 1.1.0 AndyMaleh Glimmer DSL for CSS
1005
1006
  Opal glimmer-dsl-opal 0.4.0 AndyMaleh Glimmer DSL for Opal
1006
- Swt glimmer-dsl-swt 4.17.10.5
1007
+ Swt glimmer-dsl-swt 4.17.10.6
1007
1008
  AndyMaleh Glimmer DSL for SWT
1008
1009
  Tk glimmer-dsl-tk 0.0.6 AndyMaleh Glimmer DSL for Tk
1009
1010
  Xml glimmer-dsl-xml 1.1.0 AndyMaleh Glimmer DSL for XML
@@ -3644,7 +3645,7 @@ For hello-type simple samples, check the following.
3644
3645
 
3645
3646
  Code:
3646
3647
 
3647
- [samples/hello/hello_world.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_world.rb)
3648
+ [samples/hello/hello_world.rb](samples/hello/hello_world.rb)
3648
3649
 
3649
3650
  ![Hello World](images/glimmer-hello-world.png)
3650
3651
 
@@ -3652,7 +3653,7 @@ Code:
3652
3653
 
3653
3654
  Code:
3654
3655
 
3655
- [samples/hello/hello_tab.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_tab.rb)
3656
+ [samples/hello/hello_tab.rb](samples/hello/hello_tab.rb)
3656
3657
 
3657
3658
  ![Hello Tab English](images/glimmer-hello-tab-english.png)
3658
3659
  ![Hello Tab French](images/glimmer-hello-tab-french.png)
@@ -3663,7 +3664,7 @@ This sample demonstrates combo data-binding.
3663
3664
 
3664
3665
  Code:
3665
3666
 
3666
- [samples/hello/hello_combo.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_combo.rb)
3667
+ [samples/hello/hello_combo.rb](samples/hello/hello_combo.rb)
3667
3668
 
3668
3669
  ![Hello Combo](images/glimmer-hello-combo.png)
3669
3670
  ![Hello Combo Expanded](images/glimmer-hello-combo-expanded.png)
@@ -3674,7 +3675,7 @@ This sample demonstrates list single-selection data-binding.
3674
3675
 
3675
3676
  Code:
3676
3677
 
3677
- [samples/hello/hello_list_single_selection.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_list_single_selection.rb)
3678
+ [samples/hello/hello_list_single_selection.rb](samples/hello/hello_list_single_selection.rb)
3678
3679
 
3679
3680
  ![Hello List Single Selection](images/glimmer-hello-list-single-selection.png)
3680
3681
 
@@ -3684,7 +3685,7 @@ This sample demonstrates list multi-selection data-binding.
3684
3685
 
3685
3686
  Code:
3686
3687
 
3687
- [samples/hello/hello_list_multi_selection.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_list_multi_selection.rb)
3688
+ [samples/hello/hello_list_multi_selection.rb](samples/hello/hello_list_multi_selection.rb)
3688
3689
 
3689
3690
  ![Hello List Multi Selection](images/glimmer-hello-list-multi-selection.png)
3690
3691
 
@@ -3694,7 +3695,7 @@ This sample demonstrates computed data-binding.
3694
3695
 
3695
3696
  Code:
3696
3697
 
3697
- [samples/hello/hello_computed.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_computed.rb)
3698
+ [samples/hello/hello_computed.rb](samples/hello/hello_computed.rb)
3698
3699
 
3699
3700
  ![Hello Browser](images/glimmer-hello-computed.png)
3700
3701
 
@@ -3704,7 +3705,7 @@ This sample demonstrates a `message_box` dialog.
3704
3705
 
3705
3706
  Code:
3706
3707
 
3707
- [samples/hello/hello_message_box.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_message_box.rb)
3708
+ [samples/hello/hello_message_box.rb](samples/hello/hello_message_box.rb)
3708
3709
 
3709
3710
  ![Hello Message Box](images/glimmer-hello-message-box.png)
3710
3711
  ![Hello Message Box Dialog](images/glimmer-hello-message-box-dialog.png)
@@ -3715,7 +3716,7 @@ This sample demonstrates the `browser` widget.
3715
3716
 
3716
3717
  Code:
3717
3718
 
3718
- [samples/hello/hello_browser.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_browser.rb)
3719
+ [samples/hello/hello_browser.rb](samples/hello/hello_browser.rb)
3719
3720
 
3720
3721
  ![Hello Browser](images/glimmer-hello-browser.png)
3721
3722
 
@@ -3725,7 +3726,7 @@ This sample demonstrates drag and drop in Glimmer.
3725
3726
 
3726
3727
  Code:
3727
3728
 
3728
- [samples/hello/hello_drag_and_drop.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_drag_and_drop.rb)
3729
+ [samples/hello/hello_drag_and_drop.rb](samples/hello/hello_drag_and_drop.rb)
3729
3730
 
3730
3731
  ![Hello Drag and Drop](images/glimmer-hello-drag-and-drop.gif)
3731
3732
 
@@ -3735,7 +3736,7 @@ This sample demonstrates menus in Glimmer.
3735
3736
 
3736
3737
  Code:
3737
3738
 
3738
- [samples/hello/hello_menu_bar.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_menu_bar.rb)
3739
+ [samples/hello/hello_menu_bar.rb](samples/hello/hello_menu_bar.rb)
3739
3740
 
3740
3741
  ![Hello Menu Bar](images/glimmer-hello-menu-bar.png)
3741
3742
  ![Hello Menu Bar File Menu](images/glimmer-hello-menu-bar-file-menu.png)
@@ -3747,7 +3748,7 @@ This sample demonstrates pop up context menus in Glimmer.
3747
3748
 
3748
3749
  Code:
3749
3750
 
3750
- [samples/hello/hello_pop_up_context_menu.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_pop_up_context_menu.rb)
3751
+ [samples/hello/hello_pop_up_context_menu.rb](samples/hello/hello_pop_up_context_menu.rb)
3751
3752
 
3752
3753
  ![Hello Pop Up Context Menu](images/glimmer-hello-pop-up-context-menu.png)
3753
3754
  ![Hello Pop Up Context Menu Popped Up](images/glimmer-hello-pop-up-context-menu-popped-up.png)
@@ -3758,7 +3759,7 @@ This sample demonstrates the use of a custom widget in Glimmer.
3758
3759
 
3759
3760
  Code:
3760
3761
 
3761
- [samples/hello/hello_custom_widget.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_custom_widget.rb)
3762
+ [samples/hello/hello_custom_widget.rb](samples/hello/hello_custom_widget.rb)
3762
3763
 
3763
3764
  ![Hello Custom Widget](images/glimmer-hello-custom-widget.gif)
3764
3765
 
@@ -3768,7 +3769,7 @@ This sample demonstrates the use of a custom shell (aka custom window) in Glimme
3768
3769
 
3769
3770
  Code:
3770
3771
 
3771
- [samples/hello/hello_custom_shell.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_custom_shell.rb)
3772
+ [samples/hello/hello_custom_shell.rb](samples/hello/hello_custom_shell.rb)
3772
3773
 
3773
3774
  ![Hello Custom Shell](images/glimmer-hello-custom-shell.png)
3774
3775
  ![Hello Custom Shell Email1](images/glimmer-hello-custom-shell-email1.png)
@@ -3781,7 +3782,7 @@ This sample demonstrates the use of a `sash_form` in Glimmer.
3781
3782
 
3782
3783
  Code:
3783
3784
 
3784
- [samples/hello/hello_sash_form.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_sash_form.rb)
3785
+ [samples/hello/hello_sash_form.rb](samples/hello/hello_sash_form.rb)
3785
3786
 
3786
3787
  Hello, Sash Form! Horizontal Orientation
3787
3788
 
@@ -3813,7 +3814,7 @@ This sample demonstrates the use of a `styled_text` in Glimmer.
3813
3814
 
3814
3815
  Code:
3815
3816
 
3816
- [samples/hello/hello_styled_text.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_styled_text.rb)
3817
+ [samples/hello/hello_styled_text.rb](samples/hello/hello_styled_text.rb)
3817
3818
 
3818
3819
  Hello, Styled Text!
3819
3820
 
@@ -3825,7 +3826,7 @@ This sample demonstrates the use of a `expand_bar` and `expand_item` in Glimmer.
3825
3826
 
3826
3827
  Code:
3827
3828
 
3828
- [samples/hello/hello_expand_bar.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_expand_bar.rb)
3829
+ [samples/hello/hello_expand_bar.rb](samples/hello/hello_expand_bar.rb)
3829
3830
 
3830
3831
  Hello, Expand Bar! All Expanded
3831
3832
 
@@ -3849,7 +3850,7 @@ This sample demonstrates the use of a `radio` (aka `button(:radio)`) in Glimmer.
3849
3850
 
3850
3851
  Code:
3851
3852
 
3852
- [samples/hello/hello_radio.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_radio.rb)
3853
+ [samples/hello/hello_radio.rb](samples/hello/hello_radio.rb)
3853
3854
 
3854
3855
  Hello, Radio!
3855
3856
 
@@ -3861,7 +3862,7 @@ This sample demonstrates the use of a `radio_group` in Glimmer, which provides t
3861
3862
 
3862
3863
  Code:
3863
3864
 
3864
- [samples/hello/hello_radio_group.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_radio_group.rb)
3865
+ [samples/hello/hello_radio_group.rb](samples/hello/hello_radio_group.rb)
3865
3866
 
3866
3867
  Hello, Radio Group!
3867
3868
 
@@ -3873,7 +3874,7 @@ This sample demonstrates the use of a `group` in Glimmer (not to be confused wit
3873
3874
 
3874
3875
  Code:
3875
3876
 
3876
- [samples/hello/hello_group.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_group.rb)
3877
+ [samples/hello/hello_group.rb](samples/hello/hello_group.rb)
3877
3878
 
3878
3879
  Hello, Group!
3879
3880
 
@@ -3885,7 +3886,7 @@ This sample demonstrates the use of a `checkbox` (aka `check` or `button(:check)
3885
3886
 
3886
3887
  Code:
3887
3888
 
3888
- [samples/hello/hello_checkbox.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_checkbox.rb)
3889
+ [samples/hello/hello_checkbox.rb](samples/hello/hello_checkbox.rb)
3889
3890
 
3890
3891
  Hello, Checkbox!
3891
3892
 
@@ -3897,7 +3898,7 @@ This sample demonstrates the use of a `checkbox_group` (aka `check_group`) in Gl
3897
3898
 
3898
3899
  Code:
3899
3900
 
3900
- [samples/hello/hello_checkbox_group.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_checkbox_group.rb)
3901
+ [samples/hello/hello_checkbox_group.rb](samples/hello/hello_checkbox_group.rb)
3901
3902
 
3902
3903
  Hello, Checkbox Group!
3903
3904
 
@@ -3909,7 +3910,7 @@ This sample demonstrates the use of a `directory_dialog` in Glimmer.
3909
3910
 
3910
3911
  Code:
3911
3912
 
3912
- [samples/hello/hello_directory_dialog.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_directory_dialog.rb)
3913
+ [samples/hello/hello_directory_dialog.rb](samples/hello/hello_directory_dialog.rb)
3913
3914
 
3914
3915
  Hello, Directory Dialog!
3915
3916
 
@@ -3929,7 +3930,7 @@ This sample demonstrates the use of a `file_dialog` in Glimmer.
3929
3930
 
3930
3931
  Code:
3931
3932
 
3932
- [samples/hello/hello_file_dialog.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_file_dialog.rb)
3933
+ [samples/hello/hello_file_dialog.rb](samples/hello/hello_file_dialog.rb)
3933
3934
 
3934
3935
  Hello, File Dialog!
3935
3936
 
@@ -3949,7 +3950,7 @@ This sample demonstrates the use of [date_time](#datetime) widget keywords in Gl
3949
3950
 
3950
3951
  Code:
3951
3952
 
3952
- [samples/hello/hello_date_time.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_date_time.rb)
3953
+ [samples/hello/hello_date_time.rb](samples/hello/hello_date_time.rb)
3953
3954
 
3954
3955
  Hello, Date Time!
3955
3956
 
@@ -3961,7 +3962,7 @@ This sample demonstrates the use of `spinner` widget in Glimmer
3961
3962
 
3962
3963
  Code:
3963
3964
 
3964
- [samples/hello/hello_spinner.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_spinner.rb)
3965
+ [samples/hello/hello_spinner.rb](samples/hello/hello_spinner.rb)
3965
3966
 
3966
3967
  Hello, Spinner!
3967
3968
 
@@ -3973,7 +3974,7 @@ This sample demonstrates the use of [table](#table) widget in Glimmer, including
3973
3974
 
3974
3975
  Code:
3975
3976
 
3976
- [samples/hello/hello_table.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_table.rb)
3977
+ [samples/hello/hello_table.rb](samples/hello/hello_table.rb)
3977
3978
 
3978
3979
  Hello, Table!
3979
3980
 
@@ -4017,11 +4018,11 @@ Hello, Table! Context Menu
4017
4018
 
4018
4019
  #### Hello, Button!
4019
4020
 
4020
- This sample demonstrates the use of `button` widget in Glimmer, including data-binding and click event triggering via `on_widget_selected`.
4021
+ This sample demonstrates the use of the `button` widget in Glimmer, including data-binding and click event triggering via `on_widget_selected`.
4021
4022
 
4022
4023
  Code:
4023
4024
 
4024
- [samples/hello/hello_button.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/hello/hello_button.rb)
4025
+ [samples/hello/hello_button.rb](samples/hello/hello_button.rb)
4025
4026
 
4026
4027
  Hello, Button!
4027
4028
 
@@ -4031,6 +4032,22 @@ Hello, Button! Incremented 7 times!
4031
4032
 
4032
4033
  ![Hello Button Incremented](images/glimmer-hello-button-incremented.png)
4033
4034
 
4035
+ #### Hello, Link!
4036
+
4037
+ This sample demonstrates the use of the `link` widget in Glimmer, including identifying which link was clicked and performing an action (displaying help) based on its location.
4038
+
4039
+ Code:
4040
+
4041
+ [samples/hello/hello_link.rb](samples/hello/hello_link.rb)
4042
+
4043
+ Hello, Link!
4044
+
4045
+ ![Hello Link](images/glimmer-hello-link.png)
4046
+
4047
+ Hello, Link! Clicked
4048
+
4049
+ ![Hello Link Clicked](images/glimmer-hello-link-clicked.png)
4050
+
4034
4051
  ### Elaborate Samples
4035
4052
 
4036
4053
  For more elaborate samples, check the following:
@@ -4043,7 +4060,7 @@ Please note that the code has changed since that article was written (the GUI DS
4043
4060
 
4044
4061
  Code:
4045
4062
 
4046
- [samples/elaborate/user_profile.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/elaborate/user_profile.rb)
4063
+ [samples/elaborate/user_profile.rb](samples/elaborate/user_profile.rb)
4047
4064
 
4048
4065
  ![User Profile](images/glimmer-user-profile.png)
4049
4066
 
@@ -4053,7 +4070,7 @@ This sample demonstrates basic data-binding, password and text fields, and field
4053
4070
 
4054
4071
  Code:
4055
4072
 
4056
- [samples/elaborate/login.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/elaborate/login.rb)
4073
+ [samples/elaborate/login.rb](samples/elaborate/login.rb)
4057
4074
 
4058
4075
  ![Login](images/glimmer-login.png)
4059
4076
  ![Login Filled In](images/glimmer-login-filled-in.png)
@@ -4067,7 +4084,7 @@ Code:
4067
4084
 
4068
4085
  (Please note that on some Linux instances where the display x-axis is set to double-scale, you need to set the `shell` `minimum_size` to `300, 178` instead of `150, 178`)
4069
4086
 
4070
- [samples/elaborate/tic_tac_toe.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/elaborate/tic_tac_toe.rb)
4087
+ [samples/elaborate/tic_tac_toe.rb](samples/elaborate/tic_tac_toe.rb)
4071
4088
 
4072
4089
  ![Tic Tac Toe](images/glimmer-tic-tac-toe.png)
4073
4090
  ![Tic Tac Toe In Progress](images/glimmer-tic-tac-toe-in-progress.png)
@@ -4079,7 +4096,7 @@ This sample demonstrates table data-binding, sorting, filtering, GUI layout, MVP
4079
4096
 
4080
4097
  Code:
4081
4098
 
4082
- [samples/elaborate/contact_manager.rb](https://github.com/AndyObtiva/glimmer-dsl-swt/blob/master/samples/elaborate/contact_manager.rb)
4099
+ [samples/elaborate/contact_manager.rb](samples/elaborate/contact_manager.rb)
4083
4100
 
4084
4101
  Contact Manager
4085
4102
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 4.17.10.5
1
+ 4.17.10.6
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: glimmer-dsl-swt 4.17.10.5 ruby lib
5
+ # stub: glimmer-dsl-swt 4.17.10.6 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "glimmer-dsl-swt".freeze
9
- s.version = "4.17.10.5"
9
+ s.version = "4.17.10.6"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["AndyMaleh".freeze]
14
- s.date = "2020-12-09"
14
+ s.date = "2020-12-11"
15
15
  s.description = "Glimmer DSL for SWT (JRuby Desktop Development GUI Framework)".freeze
16
16
  s.email = "andy.am@gmail.com".freeze
17
17
  s.executables = ["glimmer".freeze, "girb".freeze]
@@ -145,6 +145,7 @@ Gem::Specification.new do |s|
145
145
  "samples/hello/hello_expand_bar.rb",
146
146
  "samples/hello/hello_file_dialog.rb",
147
147
  "samples/hello/hello_group.rb",
148
+ "samples/hello/hello_link.rb",
148
149
  "samples/hello/hello_list_multi_selection.rb",
149
150
  "samples/hello/hello_list_single_selection.rb",
150
151
  "samples/hello/hello_menu_bar.rb",
@@ -857,6 +857,7 @@ module Glimmer
857
857
  !!value
858
858
  end,
859
859
  :foreground => color_converter,
860
+ :link_foreground => color_converter,
860
861
  :font => lambda do |value|
861
862
  if value.is_a?(Hash)
862
863
  font_properties = value
@@ -1,5 +1,5 @@
1
1
  # Copyright (c) 2007-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
@@ -19,7 +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
- #Presents login screen data
23
22
  class LoginPresenter
24
23
 
25
24
  attr_accessor :user_name
@@ -35,7 +34,6 @@ class LoginPresenter
35
34
  def status=(status)
36
35
  @status = status
37
36
 
38
- #TODO add feature to bind dependent properties to master property (2017-07-25 nested data binding)
39
37
  notify_observers("logged_in")
40
38
  notify_observers("logged_out")
41
39
  end
@@ -65,7 +63,6 @@ class LoginPresenter
65
63
 
66
64
  end
67
65
 
68
- #Login screen
69
66
  class Login
70
67
  include Glimmer
71
68
 
@@ -77,10 +74,10 @@ class Login
77
74
  grid_layout 2, false #two columns with differing widths
78
75
 
79
76
  label { text "Username:" } # goes in column 1
80
- @user_name_text = text { # goes in column 2
77
+ @user_name_text = text { # goes in column 2
81
78
  text bind(presenter, :user_name)
82
79
  enabled bind(presenter, :logged_out)
83
- on_key_pressed { |event|
80
+ on_key_pressed { |event|
84
81
  @password_text.set_focus if event.keyCode == swt(:cr)
85
82
  }
86
83
  }
@@ -89,7 +86,7 @@ class Login
89
86
  @password_text = text(:password, :border) {
90
87
  text bind(presenter, :password)
91
88
  enabled bind(presenter, :logged_out)
92
- on_key_pressed { |event|
89
+ on_key_pressed { |event|
93
90
  presenter.login if event.keyCode == swt(:cr)
94
91
  }
95
92
  }
@@ -101,21 +98,21 @@ class Login
101
98
  text "Login"
102
99
  enabled bind(presenter, :logged_out)
103
100
  on_widget_selected { presenter.login }
104
- on_key_pressed { |event|
101
+ on_key_pressed { |event|
105
102
  presenter.login if event.keyCode == swt(:cr)
106
- }
103
+ }
107
104
  }
108
105
 
109
106
  button {
110
107
  text "Logout"
111
108
  enabled bind(presenter, :logged_in)
112
109
  on_widget_selected { presenter.logout }
113
- on_key_pressed { |event|
110
+ on_key_pressed { |event|
114
111
  if event.keyCode == swt(:cr)
115
112
  presenter.logout
116
113
  @user_name_text.set_focus
117
114
  end
118
- }
115
+ }
119
116
  }
120
117
  }
121
118
  }
@@ -0,0 +1,82 @@
1
+ # Copyright (c) 2007-2020 Andy Maleh
2
+ #
3
+ # Permission is hereby granted, free of charge, to any person obtaining
4
+ # a copy of this software and associated documentation files (the
5
+ # "Software"), to deal in the Software without restriction, including
6
+ # without limitation the rights to use, copy, modify, merge, publish,
7
+ # distribute, sublicense, and/or sell copies of the Software, and to
8
+ # permit persons to whom the Software is furnished to do so, subject to
9
+ # the following conditions:
10
+ #
11
+ # The above copyright notice and this permission notice shall be
12
+ # included in all copies or substantial portions of the Software.
13
+ #
14
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
+
22
+ include Glimmer
23
+
24
+ shell { |main_shell|
25
+ grid_layout {
26
+ margin_width 20
27
+ margin_height 10
28
+ }
29
+
30
+ background :white
31
+ text 'Hello, Link!'
32
+
33
+ @link = link {
34
+ background :white
35
+ link_foreground :dark_green
36
+ font height: 16
37
+ text <<~MULTI_LINE_STRING
38
+
39
+ You may click on any <a>link</a> to get help.
40
+
41
+ How do you know <a href="href">which link</a> you clicked?
42
+
43
+ Just keep clicking <a href="all-links">links</a> to find out!
44
+ MULTI_LINE_STRING
45
+
46
+ on_widget_selected { |selection_event|
47
+ # This retrieves the clicked link href (or contained text if no href is set)
48
+ @selected_link = selection_event.text
49
+ }
50
+ on_mouse_up { |mouse_event|
51
+ unless @selected_link.nil?
52
+ @help_shell.close unless @help_shell.nil? || @help_shell.is_disposed
53
+ @help_shell = shell(:no_trim) {
54
+ grid_layout {
55
+ margin_width 10
56
+ margin_height 10
57
+ }
58
+
59
+ background :yellow
60
+
61
+ label {
62
+ background :yellow
63
+ text "Did someone ask for help about \"#{@selected_link}\"?\nYou don't really need help. You did it!"
64
+ }
65
+
66
+ on_swt_show {
67
+ x = main_shell.location.x + @link.location.x + mouse_event.x
68
+ y = main_shell.location.y + @link.location.y + mouse_event.y + 20
69
+ @help_shell.location = Point.new(x, y)
70
+ }
71
+ on_focus_lost {
72
+ @help_shell.close
73
+ }
74
+ on_shell_closed {
75
+ @selected_link = nil
76
+ }
77
+ }
78
+ @help_shell.open
79
+ end
80
+ }
81
+ }
82
+ }.open
@@ -1,5 +1,5 @@
1
1
  # Copyright (c) 2007-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
@@ -24,22 +24,27 @@ class HelloListMultiSelection
24
24
  attr_accessor :provinces, :provinces_options
25
25
 
26
26
  def initialize
27
- self.provinces_options=[
28
- "",
29
- "Quebec",
30
- "Ontario",
31
- "Manitoba",
32
- "Saskatchewan",
33
- "Alberta",
34
- "British Columbia",
35
- "Nova Skotia",
36
- "Newfoundland"
27
+ self.provinces_options = [
28
+ '',
29
+ 'Alberta',
30
+ 'British Columbia',
31
+ 'Manitoba',
32
+ 'New Brunswick',
33
+ 'Newfoundland and Labrador',
34
+ 'Northwest Territories',
35
+ 'Nova Scotia',
36
+ 'Nunavut',
37
+ 'Ontario',
38
+ 'Prince Edward Island',
39
+ 'Quebec',
40
+ 'Saskatchewan',
41
+ 'Yukon'
37
42
  ]
38
- self.provinces = ["Quebec", "Manitoba", "Alberta"]
43
+ reset_provinces
39
44
  end
40
45
 
41
46
  def reset_provinces
42
- self.provinces = ["Quebec", "Manitoba", "Alberta"]
47
+ self.provinces = ['Quebec', 'Manitoba', 'Alberta']
43
48
  end
44
49
  end
45
50
 
@@ -49,7 +54,7 @@ class HelloListMultiSelection
49
54
  person = Person.new
50
55
 
51
56
  shell {
52
- grid_layout
57
+ grid_layout
53
58
 
54
59
  text 'Hello, List Multi Selection!'
55
60
 
@@ -58,7 +63,7 @@ class HelloListMultiSelection
58
63
  }
59
64
 
60
65
  button {
61
- text "Reset Selection To Defaults"
66
+ text 'Reset Selections To Default Values'
62
67
 
63
68
  on_widget_selected { person.reset_provinces }
64
69
  }
@@ -24,12 +24,12 @@ class HelloListSingleSelection
24
24
  attr_accessor :country, :country_options
25
25
 
26
26
  def initialize
27
- self.country_options=["", "Canada", "US", "Mexico"]
28
- self.country = "Canada"
27
+ self.country_options = ['', 'Canada', 'US', 'Mexico']
28
+ reset_country
29
29
  end
30
30
 
31
31
  def reset_country
32
- self.country = "Canada"
32
+ self.country = 'Canada'
33
33
  end
34
34
  end
35
35
 
@@ -48,7 +48,7 @@ class HelloListSingleSelection
48
48
  }
49
49
 
50
50
  button {
51
- text "Reset Selection To Default Value"
51
+ text 'Reset Selection To Default Value'
52
52
 
53
53
  on_widget_selected { person.reset_country }
54
54
  }
@@ -56,4 +56,4 @@ class HelloListSingleSelection
56
56
  end
57
57
  end
58
58
 
59
- HelloListSingleSelection.new.launch
59
+ HelloListSingleSelection.new.launch
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glimmer-dsl-swt
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.17.10.5
4
+ version: 4.17.10.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - AndyMaleh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-12-09 00:00:00.000000000 Z
11
+ date: 2020-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
@@ -445,6 +445,7 @@ files:
445
445
  - samples/hello/hello_expand_bar.rb
446
446
  - samples/hello/hello_file_dialog.rb
447
447
  - samples/hello/hello_group.rb
448
+ - samples/hello/hello_link.rb
448
449
  - samples/hello/hello_list_multi_selection.rb
449
450
  - samples/hello/hello_list_single_selection.rb
450
451
  - samples/hello/hello_menu_bar.rb