Thank you all for answering, but if I go for simplicity nothing works...
34 Shoes.app :height => 260, :width => 250 do
35 animate(1) do
36 @time = Time.now
37 clear do
38 draw_background
39 stack do
40 puts "Time = [EMAIL PROTECTED]"
41 end
42 end
43 end
44 def draw_background
45 puts "draw_background"
46 end
47 end
If I define a Shoes class as following and some methods (like animate):
13 class Shoes
14
15 def self.app params
16 yield
17 end
18
19
20 end
21
22 def animate fps, &block
23 yield
24 end
25
26 def clear
27 yield
28 end
29
30 def stack
31 yield
32 end
I get
test.rb:38: undefined local variable or method `draw_background' for
#<Object:0x288fa34 @time=Wed Aug 20 19:56:46 +0200 2008> (NameError)
from test.rb:27:in `clear'
I don't find any easy way to make the code run. Of course, if I comment the
call to `draw_background' (line 38) I get the output => Time = Wed Aug 20
20:03:22 +0200 2008
(I run the code with the C-Ruby runtime)
Is there some Ruby technical I don't know?
Jean