glimmer-dsl-libui 0.2.18 → 0.2.22
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +25 -0
- data/README.md +510 -35
- data/VERSION +1 -1
- data/examples/meta_example.rb +1 -1
- data/examples/snake/model/apple.rb +33 -0
- data/examples/snake/model/game.rb +52 -0
- data/examples/snake/model/snake.rb +95 -0
- data/examples/snake/model/vertebra.rb +22 -0
- data/examples/snake/presenter/cell.rb +27 -0
- data/examples/snake/presenter/grid.rb +47 -0
- data/examples/snake.rb +90 -0
- data/examples/tetris/model/game.rb +3 -1
- data/examples/tetris.rb +222 -23
- data/examples/tic_tac_toe/board.rb +145 -0
- data/examples/tic_tac_toe/cell.rb +48 -0
- data/examples/tic_tac_toe.rb +85 -0
- data/glimmer-dsl-libui.gemspec +0 -0
- data/lib/glimmer/libui/control_proxy/window_proxy.rb +40 -1
- data/lib/glimmer/libui.rb +29 -1
- metadata +12 -2
data/lib/glimmer/libui.rb
CHANGED
@@ -100,11 +100,39 @@ module Glimmer
|
|
100
100
|
enum_symbol_values(enum_name).keys
|
101
101
|
end
|
102
102
|
|
103
|
+
def enum_names
|
104
|
+
[
|
105
|
+
:align,
|
106
|
+
:at,
|
107
|
+
:attribute_type,
|
108
|
+
:draw_brush_type,
|
109
|
+
:draw_fill_mode,
|
110
|
+
:draw_line_cap,
|
111
|
+
:draw_line_join,
|
112
|
+
:draw_text_align,
|
113
|
+
:ext_key,
|
114
|
+
:modifier,
|
115
|
+
:table_model_column,
|
116
|
+
:table_value_type,
|
117
|
+
:text_italic,
|
118
|
+
:text_stretch,
|
119
|
+
:text_weight,
|
120
|
+
:underline,
|
121
|
+
:underline_color
|
122
|
+
]
|
123
|
+
end
|
124
|
+
|
103
125
|
# Returns ruby underscored symbols for enum values starting with enum name (camelcase, e.g. 'ext_key')
|
104
126
|
def enum_symbol_values(enum_name)
|
105
127
|
enum_name = enum_name.to_s.underscore.to_sym
|
106
128
|
@enum_symbols ||= {}
|
107
|
-
@enum_symbols[enum_name] ||= ::LibUI.constants.select
|
129
|
+
@enum_symbols[enum_name] ||= ::LibUI.constants.select do |c|
|
130
|
+
c.to_s.match(/#{enum_name.to_s.camelcase(:upper)}[A-Z]/)
|
131
|
+
end.map do |c|
|
132
|
+
[c.to_s.underscore.sub("#{enum_name}_", '').to_sym, ::LibUI.const_get(c)]
|
133
|
+
end.reject do |key, value|
|
134
|
+
enum_name == :underline && key.to_s.start_with?('color')
|
135
|
+
end.to_h
|
108
136
|
end
|
109
137
|
|
110
138
|
def enum_value_to_symbol(enum_name, enum_value)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: glimmer-dsl-libui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.22
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Maleh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-11-
|
11
|
+
date: 2021-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: glimmer
|
@@ -252,11 +252,21 @@ files:
|
|
252
252
|
- examples/method_based_custom_keyword.rb
|
253
253
|
- examples/midi_player.rb
|
254
254
|
- examples/simple_notepad.rb
|
255
|
+
- examples/snake.rb
|
256
|
+
- examples/snake/model/apple.rb
|
257
|
+
- examples/snake/model/game.rb
|
258
|
+
- examples/snake/model/snake.rb
|
259
|
+
- examples/snake/model/vertebra.rb
|
260
|
+
- examples/snake/presenter/cell.rb
|
261
|
+
- examples/snake/presenter/grid.rb
|
255
262
|
- examples/tetris.rb
|
256
263
|
- examples/tetris/model/block.rb
|
257
264
|
- examples/tetris/model/game.rb
|
258
265
|
- examples/tetris/model/past_game.rb
|
259
266
|
- examples/tetris/model/tetromino.rb
|
267
|
+
- examples/tic_tac_toe.rb
|
268
|
+
- examples/tic_tac_toe/board.rb
|
269
|
+
- examples/tic_tac_toe/cell.rb
|
260
270
|
- examples/timer.rb
|
261
271
|
- glimmer-dsl-libui.gemspec
|
262
272
|
- icons/glimmer.png
|