white_gold 0.0.4 → 0.1.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/ext/dll/tgui.dll +0 -0
- data/ext/so/libtgui.so +0 -0
- data/lib/white_gold/abi/extern_object.rb +2 -2
- data/lib/white_gold/convention/container_widgets.rb +2 -2
- data/lib/white_gold/convention/page.rb +8 -4
- data/lib/white_gold/convention/theme/theme_attributed.rb +1 -1
- data/lib/white_gold/convention/theme/theme_component.rb +1 -1
- data/lib/white_gold/convention/widget_like.rb +1 -4
- data/lib/white_gold/dsl/backend_gui.rb +5 -4
- data/lib/white_gold/dsl/child_window.rb +1 -1
- data/lib/white_gold/dsl/color.rb +35 -27
- data/lib/white_gold/dsl/edit_box.rb +1 -2
- data/lib/white_gold/dsl/font.rb +4 -0
- data/lib/white_gold/dsl/gui.rb +5 -1
- data/lib/white_gold/dsl/label.rb +0 -2
- data/lib/white_gold/dsl/list_view.rb +6 -6
- data/lib/white_gold/dsl/outline.rb +4 -0
- data/lib/white_gold/dsl/picture.rb +0 -2
- data/lib/white_gold/dsl/radio_button.rb +1 -1
- data/lib/white_gold/dsl/sfml/shape.rb +3 -2
- data/lib/white_gold/dsl/sfml/text.rb +3 -1
- data/lib/white_gold/dsl/signal/signal_bool.rb +3 -3
- data/lib/white_gold/dsl/texture.rb +6 -1
- data/lib/white_gold/dsl/theme.rb +1 -2
- data/lib/white_gold/dsl/util.rb +3 -1
- data/lib/white_gold/dsl/widget.rb +10 -8
- data/lib/white_gold/dsl/window.rb +7 -4
- data/lib/white_gold/generated/tgui-abi-loader.gf.rb +30 -14
- data/lib/white_gold/master.rb +60 -47
- data/lib/white_gold/path/array.path.rb +0 -7
- data/lib/white_gold/path/object.path.rb +0 -6
- data/lib/white_gold/tgui-abi.rb +8 -13
- data/lib/white_gold/version.rb +1 -1
- data/lib/white_gold.rb +6 -6
- metadata +33 -8
- data/lib/white_gold/convention/bang_def.rb +0 -19
- data/lib/white_gold/convention/bang_nest.rb +0 -26
- data/lib/white_gold/convention/bang_nested_caller.rb +0 -81
- data/lib/white_gold/convention/proc_method_factory.rb +0 -22
@@ -1,81 +0,0 @@
|
|
1
|
-
module BangNestedCaller
|
2
|
-
API_BANG_PREFIX = "api_bang_".freeze
|
3
|
-
|
4
|
-
@@bang_stack = []
|
5
|
-
@@bang_roots = []
|
6
|
-
|
7
|
-
class << self
|
8
|
-
def stack
|
9
|
-
@@bang_stack
|
10
|
-
end
|
11
|
-
|
12
|
-
def roots
|
13
|
-
@@bang_roots
|
14
|
-
end
|
15
|
-
|
16
|
-
def current root
|
17
|
-
@@bang_roots.include?(root) ? @@bang_stack.last : root
|
18
|
-
end
|
19
|
-
|
20
|
-
def push object
|
21
|
-
@@bang_stack.push object
|
22
|
-
end
|
23
|
-
|
24
|
-
def pop
|
25
|
-
@@bang_stack.pop
|
26
|
-
end
|
27
|
-
|
28
|
-
def open_scope object
|
29
|
-
@@bang_roots << object
|
30
|
-
end
|
31
|
-
|
32
|
-
def close_scope object
|
33
|
-
@@bang_roots.delete_at @@bang_roots.index(object)
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
def self!
|
38
|
-
BangNestedCaller.current self
|
39
|
-
end
|
40
|
-
|
41
|
-
def bang_respond_to? name
|
42
|
-
top = BangNestedCaller.current self
|
43
|
-
top.respond_to?("#{name}=") || top.respond_to?("#{API_BANG_PREFIX}#{name}")
|
44
|
-
end
|
45
|
-
|
46
|
-
def bang_method_missing name, *a, **na, &b
|
47
|
-
top = BangNestedCaller.current self
|
48
|
-
api_bang_name = "#{API_BANG_PREFIX}#{name}".to_sym
|
49
|
-
return top.send(api_bang_name, *a, **na, &b) if top.respond_to? api_bang_name
|
50
|
-
setter = "#{name}=".to_sym
|
51
|
-
if top.respond_to? setter
|
52
|
-
return top.send(setter, a) if !a.empty?
|
53
|
-
return top.send(setter, na) if !na.empty?
|
54
|
-
return top.send(setter, b) if block_given?
|
55
|
-
return top.send(setter)
|
56
|
-
end
|
57
|
-
no_method_error = NoMethodError.new("bang method missing `#{name}!` for #{top.class}")
|
58
|
-
raise no_method_error
|
59
|
-
end
|
60
|
-
|
61
|
-
def send! method, *a, **na, &b
|
62
|
-
send "api_bang_#{method}", *a, **na, &b
|
63
|
-
end
|
64
|
-
|
65
|
-
def host! &b
|
66
|
-
return self if !b
|
67
|
-
BangNestedCaller.push self
|
68
|
-
result = b.call self
|
69
|
-
BangNestedCaller.pop
|
70
|
-
result
|
71
|
-
end
|
72
|
-
|
73
|
-
def scope! scoped = nil, *a, **na, &b
|
74
|
-
scoped ||= self
|
75
|
-
BangNestedCaller.open_scope self
|
76
|
-
scoped.host! *a, **na, &b
|
77
|
-
BangNestedCaller.close_scope self
|
78
|
-
scoped
|
79
|
-
end
|
80
|
-
|
81
|
-
end
|
@@ -1,22 +0,0 @@
|
|
1
|
-
class ProcMethodFactory
|
2
|
-
def initialize source
|
3
|
-
@source = source
|
4
|
-
end
|
5
|
-
|
6
|
-
def method_missing name, *curry
|
7
|
-
proc do |*a, **na, &b|
|
8
|
-
method = @source.method name
|
9
|
-
arity = method.arity
|
10
|
-
a = [*curry, *a]
|
11
|
-
if arity >= 0
|
12
|
-
@source.send(name, *a[...arity], **na, &b)
|
13
|
-
else
|
14
|
-
@source.send(name, *a, **na, &b)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
def respond_to? name
|
20
|
-
@source.respond_to? name
|
21
|
-
end
|
22
|
-
end
|