tuile 0.12.0 → 0.14.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 (65) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +116 -27
  3. data/COMPARISON.md +101 -0
  4. data/DECISIONS.md +2342 -158
  5. data/README.md +151 -505
  6. data/TERMINOLOGY.md +15 -5
  7. data/book/01-first-app.md +22 -17
  8. data/book/02-repaint.md +18 -5
  9. data/book/03-layout.md +28 -20
  10. data/book/05-focus.md +137 -19
  11. data/book/06-theming.md +103 -2
  12. data/book/07-components.md +567 -27
  13. data/book/08-testing.md +34 -4
  14. data/book/09-styled-text.md +3 -3
  15. data/book/README.md +7 -5
  16. data/examples/file_commander.rb +23 -17
  17. data/examples/hello_world.rb +17 -5
  18. data/examples/sampler.rb +527 -108
  19. data/ideas/arrow-key-navigation.md +17 -1
  20. data/ideas/modal-backdrop.md +24 -0
  21. data/ideas/new-components.md +28 -27
  22. data/lib/tuile/ansi.rb +10 -0
  23. data/lib/tuile/buffer.rb +51 -3
  24. data/lib/tuile/color.rb +143 -0
  25. data/lib/tuile/color_depth.rb +80 -0
  26. data/lib/tuile/component/abstract_string_field.rb +36 -0
  27. data/lib/tuile/component/button.rb +3 -3
  28. data/lib/tuile/component/checkbox.rb +3 -3
  29. data/lib/tuile/component/combo_box.rb +12 -3
  30. data/lib/tuile/component/confirm_window.rb +442 -0
  31. data/lib/tuile/component/has_content.rb +22 -9
  32. data/lib/tuile/component/has_value.rb +1 -1
  33. data/lib/tuile/component/info_window.rb +64 -16
  34. data/lib/tuile/component/layout.rb +0 -10
  35. data/lib/tuile/component/list.rb +22 -0
  36. data/lib/tuile/component/list_dropdown.rb +102 -11
  37. data/lib/tuile/component/log_text_view.rb +71 -0
  38. data/lib/tuile/component/log_window.rb +13 -48
  39. data/lib/tuile/component/menu_bar/cascade.rb +255 -0
  40. data/lib/tuile/component/menu_bar.rb +582 -0
  41. data/lib/tuile/component/notification.rb +24 -39
  42. data/lib/tuile/component/overlay.rb +192 -0
  43. data/lib/tuile/component/picker_window.rb +0 -5
  44. data/lib/tuile/component/popup.rb +61 -123
  45. data/lib/tuile/component/progress_bar.rb +1 -1
  46. data/lib/tuile/component/select.rb +17 -7
  47. data/lib/tuile/component/slot.rb +54 -0
  48. data/lib/tuile/component/tab_sheet.rb +231 -0
  49. data/lib/tuile/component/tabs.rb +528 -0
  50. data/lib/tuile/component/text_area.rb +5 -4
  51. data/lib/tuile/component/text_field.rb +23 -6
  52. data/lib/tuile/component/text_view.rb +8 -5
  53. data/lib/tuile/component/window.rb +22 -46
  54. data/lib/tuile/component.rb +186 -31
  55. data/lib/tuile/event_queue.rb +45 -1
  56. data/lib/tuile/fake_screen.rb +40 -2
  57. data/lib/tuile/keys.rb +72 -0
  58. data/lib/tuile/screen.rb +212 -113
  59. data/lib/tuile/screen_pane.rb +125 -41
  60. data/lib/tuile/styled_string.rb +80 -7
  61. data/lib/tuile/terminal_background.rb +74 -16
  62. data/lib/tuile/version.rb +1 -1
  63. data/sig/tuile.rbs +2527 -358
  64. metadata +13 -3
  65. 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.12.0
4
+ version: 0.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Vysny
@@ -113,6 +113,7 @@ extra_rdoc_files: []
113
113
  files:
114
114
  - CHANGELOG.md
115
115
  - CODE_OF_CONDUCT.md
116
+ - COMPARISON.md
116
117
  - DECISIONS.md
117
118
  - LICENSE.txt
118
119
  - README.md
@@ -131,12 +132,14 @@ files:
131
132
  - examples/hello_world.rb
132
133
  - examples/sampler.rb
133
134
  - ideas/arrow-key-navigation.md
135
+ - ideas/modal-backdrop.md
134
136
  - ideas/new-components.md
135
137
  - ideas/per-component-buffers.md
136
138
  - lib/tuile.rb
137
139
  - lib/tuile/ansi.rb
138
140
  - lib/tuile/buffer.rb
139
141
  - lib/tuile/color.rb
142
+ - lib/tuile/color_depth.rb
140
143
  - lib/tuile/component.rb
141
144
  - lib/tuile/component/abstract_string_field.rb
142
145
  - lib/tuile/component/big_decimal_field.rb
@@ -144,6 +147,7 @@ files:
144
147
  - lib/tuile/component/checkbox.rb
145
148
  - lib/tuile/component/checkbox_group.rb
146
149
  - lib/tuile/component/combo_box.rb
150
+ - lib/tuile/component/confirm_window.rb
147
151
  - lib/tuile/component/float_field.rb
148
152
  - lib/tuile/component/has_caption.rb
149
153
  - lib/tuile/component/has_content.rb
@@ -157,14 +161,21 @@ files:
157
161
  - lib/tuile/component/layout/vertical.rb
158
162
  - lib/tuile/component/list.rb
159
163
  - lib/tuile/component/list_dropdown.rb
164
+ - lib/tuile/component/log_text_view.rb
160
165
  - lib/tuile/component/log_window.rb
166
+ - lib/tuile/component/menu_bar.rb
167
+ - lib/tuile/component/menu_bar/cascade.rb
161
168
  - lib/tuile/component/notification.rb
169
+ - lib/tuile/component/overlay.rb
162
170
  - lib/tuile/component/password_field.rb
163
171
  - lib/tuile/component/picker_window.rb
164
172
  - lib/tuile/component/popup.rb
165
173
  - lib/tuile/component/progress_bar.rb
166
174
  - lib/tuile/component/radio_group.rb
167
175
  - lib/tuile/component/select.rb
176
+ - lib/tuile/component/slot.rb
177
+ - lib/tuile/component/tab_sheet.rb
178
+ - lib/tuile/component/tabs.rb
168
179
  - lib/tuile/component/text_area.rb
169
180
  - lib/tuile/component/text_area/wrapped_text.rb
170
181
  - lib/tuile/component/text_field.rb
@@ -187,7 +198,6 @@ files:
187
198
  - lib/tuile/theme_def.rb
188
199
  - lib/tuile/version.rb
189
200
  - lib/tuile/vertical_scroll_bar.rb
190
- - mise.toml
191
201
  - sig/tuile.rbs
192
202
  homepage: https://github.com/mvysny/tuile
193
203
  licenses:
@@ -210,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
210
220
  - !ruby/object:Gem::Version
211
221
  version: '0'
212
222
  requirements: []
213
- rubygems_version: 4.0.15
223
+ rubygems_version: 3.6.7
214
224
  specification_version: 4
215
225
  summary: A component-oriented terminal UI toolkit for Ruby.
216
226
  test_files: []
data/mise.toml DELETED
@@ -1,2 +0,0 @@
1
- [tools]
2
- ruby = "3.3"