glimmer-dsl-libui 0.0.4 → 0.0.8

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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +41 -0
  3. data/README.md +540 -41
  4. data/VERSION +1 -1
  5. data/examples/basic_button.rb +1 -1
  6. data/examples/basic_entry.rb +3 -3
  7. data/examples/basic_window.rb +1 -1
  8. data/examples/basic_window2.rb +14 -0
  9. data/examples/control_gallery.rb +168 -0
  10. data/examples/midi_player.rb +2 -2
  11. data/examples/simple_notepad.rb +1 -1
  12. data/glimmer-dsl-libui.gemspec +0 -0
  13. data/lib/glimmer/dsl/libui/dsl.rb +1 -1
  14. data/lib/glimmer/dsl/libui/file_expression.rb +33 -0
  15. data/lib/glimmer/dsl/libui/open_file_expression.rb +33 -0
  16. data/lib/glimmer/dsl/libui/save_file_expression.rb +33 -0
  17. data/lib/glimmer/dsl/libui/tab_item_expression.rb +35 -0
  18. data/lib/glimmer/libui/about_menu_item_proxy.rb +37 -0
  19. data/lib/glimmer/libui/box.rb +16 -2
  20. data/lib/glimmer/libui/check_menu_item_proxy.rb +37 -0
  21. data/lib/glimmer/libui/combobox_proxy.rb +4 -3
  22. data/lib/glimmer/libui/control_proxy.rb +135 -29
  23. data/lib/glimmer/libui/date_picker_proxy.rb +32 -0
  24. data/lib/glimmer/libui/date_time_picker_proxy.rb +35 -0
  25. data/lib/glimmer/libui/editable_combobox_proxy.rb +43 -0
  26. data/lib/glimmer/libui/group_proxy.rb +43 -0
  27. data/lib/glimmer/libui/menu_item_proxy.rb +4 -1
  28. data/lib/glimmer/libui/multiline_entry_proxy.rb +35 -0
  29. data/lib/glimmer/libui/non_wrapping_multiline_entry_proxy.rb +32 -0
  30. data/lib/glimmer/libui/preferences_menu_item_proxy.rb +37 -0
  31. data/lib/glimmer/libui/quit_menu_item_proxy.rb +62 -0
  32. data/lib/glimmer/libui/radio_buttons_proxy.rb +43 -0
  33. data/lib/glimmer/libui/separator_menu_item_proxy.rb +37 -0
  34. data/lib/glimmer/libui/tab_item_proxy.rb +67 -0
  35. data/lib/glimmer/libui/time_picker_proxy.rb +32 -0
  36. data/lib/glimmer/libui/window_proxy.rb +15 -3
  37. metadata +25 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 98ea45093e4fa24ad49e896ca02a090c6900f1ddf80e8e592726914746b8c4e0
4
- data.tar.gz: 8106d3f232fea6048c38b9ee0c3f93dda9cdaf3cffc7f3c68ac9a1dcf82e9f24
3
+ metadata.gz: 5098a4f3a6ab5f314440a317cc77cc4d1c7fc65f2f190261d83710ffa9554dea
4
+ data.tar.gz: 7387058961fb36e05c598d8ef5c5e6ef109ce06eebac3626bed0628bc37511af
5
5
  SHA512:
6
- metadata.gz: 637a28709c22c93d817b7b59375844d9540253957ae3a236ab802b404d02c939f1fdf01606fd0bc86cb224b8cd424ba9483da87daf30a83daa58d374ea02956c
7
- data.tar.gz: b35754ad0c266f931fcf77dca37026a7bd309083835f662f9c5549b43b2d21bbb08d57af3c676bd82b6d1490071c1d86d7f0c8ba3f1416b861919738a67cea6d
6
+ metadata.gz: 40f5597274951ddcf6b96d26923d2012b2a5d59cacbb53e384b14e2bf619609b11f3d9c035768dcf9a4e38fe2608106eee15e91e0b5f72f282d7e009f05ebacd
7
+ data.tar.gz: b8bfe79a0acb9def38d25682c04f17c8fcfebc44af81c12e20368654381e81ac902e29329470d2888d69fca0d1ebdd9ee505898164ef7dcc168281c349a06724
data/CHANGELOG.md CHANGED
@@ -1,5 +1,46 @@
1
1
  # Change Log
2
2
 
3
+ ## 0.0.8
4
+
5
+ - Add `?` suffixed aliases to all boolean property methods
6
+ - Make C bool properties return boolean in Ruby (not `1` or `0`)
7
+ - Support passing boolean values to C bool properties in addition to `1` or `0`
8
+ - Support passing boolean values to C bool constructor args in addition to `1` or `0`
9
+ - Update all examples to utilize booleans
10
+ - Make `window` properties `title`=`'Glimmer'`, `content_size`=`150`,`150` & `has_menubar`=`1` if not specified as args in constructor
11
+ - Have string properties (e.g. `text` and `title`) return `String` not fiddle pointer
12
+
13
+ ## 0.0.7
14
+
15
+ - Make `padded 1` the default in `horizontal_box` and `vertical_box` to achieve nicer looking GUI by default
16
+ - Make `margined 1` the default in `group` to achieve nicer looking GUI by default
17
+ - Destroy main window upon hitting quit on quit menu item
18
+ - Rename `ControlProxy::all_controls` to `ControlProxy::all_control_proxies` to more accurately describe its contents
19
+ - Add `ControlProxy::main_window_proxy` method to retrieve main window proxy
20
+ - Define a `#window_proxy` method on `ControlProxy` to retrieve `window` control proxy for any control
21
+
22
+ ## 0.0.6
23
+
24
+ - Make listener block provide Ruby proxy object as optional argument (not Fiddle pointer)
25
+ - Handle `tab_item` scenario where it has an empty block or no block (auto-generate empty `horizontal_box` content as a smart default to avoid crashing)
26
+ - Support `non_wrapping_multiline_entry` propeties/operations via `LibUI.multiline_entry_*` methods (enhancing them to accept Ruby objects in addition to pointers)
27
+ - Support splatting `items` array for `radio_buttons`, `editable_combobox`, and `combobox` items
28
+ - Fix issue with `menu_item` `on_clicked` listeners crashing in examples/control_gallery.rb due to garbage collection
29
+
30
+ ## 0.0.5
31
+
32
+ - Support examples/control_gallery.rb
33
+ - Support `open_file` and `save_file`
34
+ - Support `quit_menu_item` with `on_clicked` listener
35
+ - Support `preferences_menu_item` and `about_menu_item`
36
+ - Support `check_menu_item` and `separator_menu_item`
37
+ - Support `enabled=` & `set_enabled` on all controls (making `enabled` property read/write by relying on `enable`/`disable` operations)
38
+ - Support `visible=` & `set_visible` on all controls (making `visible` property read/write by relying on `show`/`hide` operations)
39
+ - Support `horizontal_box` and `vertical_box` propeties (`padded`) & operations (`append`, `delete`) via `LibUI.box_*` methods
40
+ - Support `editable_combobox`, `radio_buttons`, and `group`
41
+ - Support `tab` and `tab_item`
42
+ - Fix issue with always setting menu item text to 'Version' (correctly set to passed argument instead)
43
+
3
44
  ## 0.0.4
4
45
 
5
46
  - Support examples/midi_player.rb