tuile 0.11.0 → 0.13.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.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +77 -0
  3. data/DECISIONS.md +1970 -14
  4. data/README.md +136 -491
  5. data/TERMINOLOGY.md +70 -0
  6. data/book/01-first-app.md +22 -17
  7. data/book/02-repaint.md +19 -6
  8. data/book/03-layout.md +12 -11
  9. data/book/05-focus.md +133 -18
  10. data/book/06-theming.md +6 -3
  11. data/book/07-components.md +498 -38
  12. data/book/08-testing.md +18 -4
  13. data/book/README.md +7 -5
  14. data/examples/file_commander.rb +27 -20
  15. data/examples/hello_world.rb +17 -5
  16. data/examples/sampler.rb +422 -66
  17. data/ideas/arrow-key-navigation.md +16 -0
  18. data/ideas/new-components.md +16 -10
  19. data/lib/tuile/ansi.rb +10 -0
  20. data/lib/tuile/buffer.rb +7 -7
  21. data/lib/tuile/component/abstract_string_field.rb +36 -0
  22. data/lib/tuile/component/button.rb +1 -1
  23. data/lib/tuile/component/checkbox.rb +1 -1
  24. data/lib/tuile/component/checkbox_group.rb +31 -26
  25. data/lib/tuile/component/combo_box.rb +13 -8
  26. data/lib/tuile/component/info_window.rb +1 -1
  27. data/lib/tuile/component/label.rb +14 -14
  28. data/lib/tuile/component/list.rb +313 -216
  29. data/lib/tuile/component/list_dropdown.rb +100 -10
  30. data/lib/tuile/component/menu_bar/cascade.rb +255 -0
  31. data/lib/tuile/component/menu_bar.rb +582 -0
  32. data/lib/tuile/component/notification.rb +320 -0
  33. data/lib/tuile/component/picker_window.rb +3 -8
  34. data/lib/tuile/component/popup.rb +83 -19
  35. data/lib/tuile/component/progress_bar.rb +1 -1
  36. data/lib/tuile/component/radio_group.rb +32 -30
  37. data/lib/tuile/component/select.rb +10 -8
  38. data/lib/tuile/component/tab_sheet.rb +242 -0
  39. data/lib/tuile/component/tabs.rb +528 -0
  40. data/lib/tuile/component/text_area/wrapped_text.rb +320 -0
  41. data/lib/tuile/component/text_area.rb +84 -277
  42. data/lib/tuile/component/text_field.rb +24 -7
  43. data/lib/tuile/component/text_view.rb +197 -180
  44. data/lib/tuile/component/window.rb +8 -8
  45. data/lib/tuile/component.rb +43 -18
  46. data/lib/tuile/event_queue.rb +25 -1
  47. data/lib/tuile/fake_screen.rb +14 -0
  48. data/lib/tuile/keys.rb +65 -0
  49. data/lib/tuile/screen.rb +95 -78
  50. data/lib/tuile/screen_pane.rb +109 -27
  51. data/lib/tuile/styled_string.rb +52 -12
  52. data/lib/tuile/version.rb +1 -1
  53. data/lib/tuile/vertical_scroll_bar.rb +6 -6
  54. data/sig/tuile.rbs +2307 -516
  55. metadata +9 -3
  56. data/mise.toml +0 -2
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tuile
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Vysny
@@ -116,6 +116,7 @@ files:
116
116
  - DECISIONS.md
117
117
  - LICENSE.txt
118
118
  - README.md
119
+ - TERMINOLOGY.md
119
120
  - book/01-first-app.md
120
121
  - book/02-repaint.md
121
122
  - book/03-layout.md
@@ -157,13 +158,19 @@ files:
157
158
  - lib/tuile/component/list.rb
158
159
  - lib/tuile/component/list_dropdown.rb
159
160
  - lib/tuile/component/log_window.rb
161
+ - lib/tuile/component/menu_bar.rb
162
+ - lib/tuile/component/menu_bar/cascade.rb
163
+ - lib/tuile/component/notification.rb
160
164
  - lib/tuile/component/password_field.rb
161
165
  - lib/tuile/component/picker_window.rb
162
166
  - lib/tuile/component/popup.rb
163
167
  - lib/tuile/component/progress_bar.rb
164
168
  - lib/tuile/component/radio_group.rb
165
169
  - lib/tuile/component/select.rb
170
+ - lib/tuile/component/tab_sheet.rb
171
+ - lib/tuile/component/tabs.rb
166
172
  - lib/tuile/component/text_area.rb
173
+ - lib/tuile/component/text_area/wrapped_text.rb
167
174
  - lib/tuile/component/text_field.rb
168
175
  - lib/tuile/component/text_view.rb
169
176
  - lib/tuile/component/window.rb
@@ -184,7 +191,6 @@ files:
184
191
  - lib/tuile/theme_def.rb
185
192
  - lib/tuile/version.rb
186
193
  - lib/tuile/vertical_scroll_bar.rb
187
- - mise.toml
188
194
  - sig/tuile.rbs
189
195
  homepage: https://github.com/mvysny/tuile
190
196
  licenses:
@@ -207,7 +213,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
207
213
  - !ruby/object:Gem::Version
208
214
  version: '0'
209
215
  requirements: []
210
- rubygems_version: 4.0.15
216
+ rubygems_version: 3.6.7
211
217
  specification_version: 4
212
218
  summary: A component-oriented terminal UI toolkit for Ruby.
213
219
  test_files: []
data/mise.toml DELETED
@@ -1,2 +0,0 @@
1
- [tools]
2
- ruby = "3.3"