glimmer-dsl-libui 0.12.7 → 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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/LICENSE.txt +1 -1
- data/README.md +8 -6
- data/VERSION +1 -1
- data/bin/girb +1 -1
- data/bin/girb_runner.rb +1 -1
- data/bin/glimmer +1 -1
- data/docs/examples/GLIMMER-DSL-LIBUI-ADVANCED-EXAMPLES.md +1 -1
- data/examples/button_counter.rb +8 -10
- data/examples/snake/model/game.rb +12 -12
- data/examples/tetris/model/block.rb +1 -1
- data/examples/tetris/model/game.rb +1 -1
- data/examples/tetris/model/past_game.rb +1 -1
- data/examples/tetris/model/tetromino.rb +1 -1
- data/examples/tetris.rb +1 -1
- data/examples/tic_tac_toe/board.rb +1 -1
- data/examples/tic_tac_toe/cell.rb +1 -1
- data/glimmer-dsl-libui.gemspec +0 -0
- data/lib/glimmer/dsl/libui/bind_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/content_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/control_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/custom_control_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/custom_control_slot_content_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/custom_shape_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/data_binding_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/dsl.rb +1 -1
- data/lib/glimmer/dsl/libui/file_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/listener_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/observe_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/open_file_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/open_folder_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/operation_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/property_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/save_file_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/shape_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/shine_data_binding_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/string_expression.rb +1 -1
- data/lib/glimmer/dsl/libui/tab_item_expression.rb +1 -1
- data/lib/glimmer/fiddle_consumer.rb +1 -1
- data/lib/glimmer/libui/attributed_string.rb +1 -1
- data/lib/glimmer/libui/control_proxy/area_proxy/scrolling_area_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/area_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/box/horizontal_box_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/box/vertical_box_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/box.rb +1 -1
- data/lib/glimmer/libui/control_proxy/button_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/checkbox_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/color_button_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/background_color_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/button_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/checkbox_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/checkbox_text_color_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/checkbox_text_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/image_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/image_text_color_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/image_text_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/progress_bar_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/text_color_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column/text_column_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/column.rb +1 -1
- data/lib/glimmer/libui/control_proxy/combobox_proxy.rb +16 -11
- data/lib/glimmer/libui/control_proxy/date_time_picker_proxy/date_picker_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/date_time_picker_proxy/time_picker_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/date_time_picker_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/dual_column.rb +1 -1
- data/lib/glimmer/libui/control_proxy/editable_column.rb +1 -1
- data/lib/glimmer/libui/control_proxy/editable_combobox_proxy.rb +10 -10
- data/lib/glimmer/libui/control_proxy/enableable_column.rb +1 -1
- data/lib/glimmer/libui/control_proxy/entry_proxy/password_entry_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/entry_proxy/search_entry_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/entry_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/font_button_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/form_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/grid_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/group_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/image_part_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/image_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/label_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/matrix_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy/about_menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy/check_menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy/preferences_menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy/quit_menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy/radio_menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy/separator_menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/menu_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/message_box/msg_box_error_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/message_box/msg_box_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/message_box.rb +1 -1
- data/lib/glimmer/libui/control_proxy/multiline_entry_proxy/non_wrapping_multiline_entry_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/multiline_entry_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/open_type_features_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/open_type_tag_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/path_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/radio_buttons_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/slider_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/spinbox_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/tab_item_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/table_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/text_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy/transformable.rb +1 -1
- data/lib/glimmer/libui/control_proxy/triple_column.rb +1 -1
- data/lib/glimmer/libui/control_proxy/window_proxy.rb +1 -1
- data/lib/glimmer/libui/control_proxy.rb +1 -1
- data/lib/glimmer/libui/custom_control/code_area.rb +1 -1
- data/lib/glimmer/libui/custom_control/code_entry.rb +1 -1
- data/lib/glimmer/libui/custom_control/refined_table.rb +2 -2
- data/lib/glimmer/libui/custom_control.rb +1 -1
- data/lib/glimmer/libui/custom_shape.rb +1 -1
- data/lib/glimmer/libui/custom_window.rb +1 -1
- data/lib/glimmer/libui/data_bindable.rb +1 -1
- data/lib/glimmer/libui/parent.rb +1 -1
- data/lib/glimmer/libui/shape/arc.rb +1 -1
- data/lib/glimmer/libui/shape/bezier.rb +1 -1
- data/lib/glimmer/libui/shape/circle.rb +1 -1
- data/lib/glimmer/libui/shape/figure.rb +1 -1
- data/lib/glimmer/libui/shape/line.rb +1 -1
- data/lib/glimmer/libui/shape/polybezier.rb +1 -1
- data/lib/glimmer/libui/shape/polygon.rb +1 -1
- data/lib/glimmer/libui/shape/polyline.rb +1 -1
- data/lib/glimmer/libui/shape/rectangle.rb +1 -1
- data/lib/glimmer/libui/shape/square.rb +1 -1
- data/lib/glimmer/libui/shape.rb +1 -1
- data/lib/glimmer/libui.rb +2 -2
- data/lib/glimmer/rake_task/package.rb +1 -1
- data/lib/glimmer/rake_task/scaffold.rb +1 -1
- data/lib/glimmer/rake_task.rb +1 -1
- data/lib/glimmer-dsl-libui.rb +1 -1
- metadata +20 -17
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2021-
|
|
1
|
+
# Copyright (c) 2021-2025 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
|
|
@@ -28,19 +28,19 @@ module Glimmer
|
|
|
28
28
|
#
|
|
29
29
|
# Follows the Proxy Design Pattern
|
|
30
30
|
class EditableComboboxProxy < ControlProxy
|
|
31
|
-
def items(*
|
|
32
|
-
|
|
33
|
-
if
|
|
34
|
-
@
|
|
31
|
+
def items(*item_values)
|
|
32
|
+
item_values = item_values.first if item_values.first.is_a?(Array)
|
|
33
|
+
if item_values.empty?
|
|
34
|
+
@items
|
|
35
35
|
else
|
|
36
|
-
@
|
|
37
|
-
|
|
38
|
-
unless @
|
|
36
|
+
@items ||= []
|
|
37
|
+
item_values.each do |value|
|
|
38
|
+
unless @items.include?(value)
|
|
39
39
|
append(value)
|
|
40
|
-
@
|
|
40
|
+
@items << value
|
|
41
41
|
end
|
|
42
42
|
end
|
|
43
|
-
@
|
|
43
|
+
@items
|
|
44
44
|
end
|
|
45
45
|
end
|
|
46
46
|
alias set_items items
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2021-
|
|
1
|
+
# Copyright (c) 2021-2025 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
|
|
@@ -61,7 +61,7 @@ module Glimmer
|
|
|
61
61
|
table_column_name.underscore.start_with?(column_name.underscore)
|
|
62
62
|
end
|
|
63
63
|
if column_human_name
|
|
64
|
-
row_hash[column_human_name]
|
|
64
|
+
row_hash[column_human_name]&.downcase&.include?(column_value.downcase)
|
|
65
65
|
else
|
|
66
66
|
text.downcase.include?(word.downcase)
|
|
67
67
|
end
|
data/lib/glimmer/libui/parent.rb
CHANGED
data/lib/glimmer/libui/shape.rb
CHANGED
data/lib/glimmer/libui.rb
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright (c) 2021-
|
|
1
|
+
# Copyright (c) 2021-2025 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
|
|
@@ -195,7 +195,7 @@ module Glimmer
|
|
|
195
195
|
end
|
|
196
196
|
|
|
197
197
|
def x11_colors
|
|
198
|
-
require 'color'
|
|
198
|
+
require 'color/rgb/colors'
|
|
199
199
|
Color::RGB.constants.reject {|c| c.to_s.upcase == c.to_s}.map(&:to_s).map(&:underscore).map(&:to_sym)
|
|
200
200
|
end
|
|
201
201
|
|
data/lib/glimmer/rake_task.rb
CHANGED
data/lib/glimmer-dsl-libui.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: glimmer-dsl-libui
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.13.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Andy Maleh
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: glimmer
|
|
@@ -116,16 +115,22 @@ dependencies:
|
|
|
116
115
|
name: color
|
|
117
116
|
requirement: !ruby/object:Gem::Requirement
|
|
118
117
|
requirements:
|
|
119
|
-
- - "
|
|
118
|
+
- - ">="
|
|
120
119
|
- !ruby/object:Gem::Version
|
|
121
|
-
version:
|
|
120
|
+
version: 2.0.0
|
|
121
|
+
- - "<"
|
|
122
|
+
- !ruby/object:Gem::Version
|
|
123
|
+
version: 3.0.0
|
|
122
124
|
type: :runtime
|
|
123
125
|
prerelease: false
|
|
124
126
|
version_requirements: !ruby/object:Gem::Requirement
|
|
125
127
|
requirements:
|
|
126
|
-
- - "
|
|
128
|
+
- - ">="
|
|
129
|
+
- !ruby/object:Gem::Version
|
|
130
|
+
version: 2.0.0
|
|
131
|
+
- - "<"
|
|
127
132
|
- !ruby/object:Gem::Version
|
|
128
|
-
version:
|
|
133
|
+
version: 3.0.0
|
|
129
134
|
- !ruby/object:Gem::Dependency
|
|
130
135
|
name: rake
|
|
131
136
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -348,18 +353,18 @@ dependencies:
|
|
|
348
353
|
version: 0.7.0
|
|
349
354
|
description: Glimmer DSL for LibUI (Fukuoka Award Winning Prerequisite-Free Ruby Desktop
|
|
350
355
|
Development Cross-Platform Native GUI Library) - Winner of Fukuoka Ruby Award Competition
|
|
351
|
-
2022 Special Award (
|
|
352
|
-
to pre-install any prerequisites. Just install the gem and have cross-platform
|
|
353
|
-
GUI that just works on Mac, Windows, and Linux! Glimmer DSL for LibUI aims
|
|
354
|
-
declarative DSL syntax that visually maps to GUI control hierarchy, convention
|
|
355
|
-
configuration via smart defaults, automation of low-level details, requiring
|
|
356
|
-
least amount of syntax possible to build GUI, bidirectional data-binding, custom
|
|
356
|
+
2022 Special Award (https://andymaleh.blogspot.com/2022/02/glimmer-dsl-for-libui-wins-fukuoka-ruby.html)
|
|
357
|
+
- No need to pre-install any prerequisites. Just install the gem and have cross-platform
|
|
358
|
+
native GUI that just works on Mac, Windows, and Linux! Glimmer DSL for LibUI aims
|
|
359
|
+
to provide declarative DSL syntax that visually maps to GUI control hierarchy, convention
|
|
360
|
+
over configuration via smart defaults, automation of low-level details, requiring
|
|
361
|
+
the least amount of syntax possible to build GUI, bidirectional data-binding, custom
|
|
357
362
|
control/window support, and application/gem/window/control scaffolding. If you liked
|
|
358
363
|
Shoes, You'll love Glimmer!
|
|
359
364
|
email: andy.am@gmail.com
|
|
360
365
|
executables:
|
|
361
|
-
- glimmer
|
|
362
366
|
- girb
|
|
367
|
+
- glimmer
|
|
363
368
|
extensions: []
|
|
364
369
|
extra_rdoc_files:
|
|
365
370
|
- CHANGELOG.md
|
|
@@ -630,7 +635,6 @@ homepage: http://github.com/AndyObtiva/glimmer-dsl-libui
|
|
|
630
635
|
licenses:
|
|
631
636
|
- MIT
|
|
632
637
|
metadata: {}
|
|
633
|
-
post_install_message:
|
|
634
638
|
rdoc_options: []
|
|
635
639
|
require_paths:
|
|
636
640
|
- lib
|
|
@@ -646,8 +650,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
646
650
|
- !ruby/object:Gem::Version
|
|
647
651
|
version: '0'
|
|
648
652
|
requirements: []
|
|
649
|
-
rubygems_version: 3.
|
|
650
|
-
signing_key:
|
|
653
|
+
rubygems_version: 3.6.7
|
|
651
654
|
specification_version: 4
|
|
652
655
|
summary: Glimmer DSL for LibUI (Fukuoka Award Winning Prerequisite-Free Ruby Desktop
|
|
653
656
|
Development Cross-Platform Native GUI Library)
|