---- render a full UI ----
rendering 9OpenClose
[=0000000000000000 ]=0000000000000000 ^=0000000000000000 <=0000000000000000 >=0000000000000000
>>> new element >>>
push [1] 12UIBoxElement
[=0000000000000000 ]=0000000000000000 ^=0000000000732330 <=0000000000000000 >=0000000000000000
>>> new element >>>
make 8Checkbox
open:n
[=00000000007323D0 ]=00000000007323D0 ^=0000000000732330 <=0000000000000000 >=0000000000000000
>>> new element >>>
make 6Button
[=00000000007323D0 ]=00000000007534A0 ^=0000000000732330 <=0000000000000000 >=0000000000000000
>>> new element >>>
make 6Button
pop [1] 12UIBoxElement
rendering 6Button
[=0000000000000000 ]=0000000000000000 ^=0000000000732390 <=00000000007534A0 >=0000000000000000
>>> new element >>>
push [1] 12UIBoxElement
[=0000000000000000 ]=0000000000000000 ^=00000000007534F0 <=0000000000000000 >=0000000000000000
>>> new element >>>
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
rendering 6Button
[=0000000000000000 ]=0000000000000000 ^=0000000000732390 <=00000000007323D0 >=00000000007534F0
>>> new element >>>
push [1] 12UIBoxElement
[=0000000000000000 ]=0000000000000000 ^=00000000007534A0 <=0000000000000000 >=0000000000000000
>>> new element >>>
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
rendering 8Checkbox
[=0000000000000000 ]=0000000000000000 ^=0000000000732390 <=0000000000000000 >=00000000007534A0
>>> new element >>>
push [1] 12UIBoxElement
[=0000000000000000 ]=0000000000000000 ^=00000000007323D0 <=0000000000000000 >=0000000000000000
>>> new element >>>
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
- allocs:11 new:11 delete:0
9OpenClose - node
12UIBoxElement - element
8Checkbox - node
12UIBoxElement - element
13UITextElement - element
6Button - node
12UIBoxElement - element
13UITextElement - element
6Button - node
12UIBoxElement - element
13UITextElement - element
---- render it again (and expect reuse) ----
rendering 9OpenClose
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
make 8Checkbox
open:n
/// match streak ///
make 6Button
/// match streak ///
make 6Button
pop [1] 12UIBoxElement
rendering 6Button
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
rendering 6Button
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
rendering 8Checkbox
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
- allocs:11 new:11 delete:0
9OpenClose - node
12UIBoxElement - element
8Checkbox - node
12UIBoxElement - element
13UITextElement - element
6Button - node
12UIBoxElement - element
13UITextElement - element
6Button - node
12UIBoxElement - element
13UITextElement - element
---- paint ----
/-----------------\
/-----------------\
[O]
\-----------------/
/-----------------\
[Open]
\-----------------/
/-----------------\
[Close]
\-----------------/
\-----------------/
---- pretend a click happened (OnClick checkbox, then ProcessNodeRenderStack) ----
checkbox was toggled
rendering 9OpenClose
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
make 8Checkbox
open:Y
/// match streak ///
make 6Button
/// match streak ///
make 6Button
[=00000000007323D0 ]=00000000007534F0 ^=0000000000732330 <=0000000000000000 >=0000000000000000
>>> new element >>>
push [2] 12UIBoxElement
[=0000000000000000 ]=0000000000000000 ^=0000000000732390 <=00000000007534F0 >=0000000000000000
>>> new element >>>
push [3] 13UITextElement
pop [3] 13UITextElement
pop [2] 12UIBoxElement
pop [1] 12UIBoxElement
rendering 6Button
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
rendering 6Button
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
rendering 8Checkbox
/// match streak ///
push [1] 12UIBoxElement
/// match streak ///
push [2] 13UITextElement
pop [2] 13UITextElement
pop [1] 12UIBoxElement
- allocs:13 new:13 delete:0
---- paint again (changed state) ----
/-----------------\
/-----------------\
[X]
\-----------------/
/-----------------\
[Open]
\-----------------/
/-----------------\
[Close]
\-----------------/
/-----------------\
[It is open!]
\-----------------/
\-----------------/
---- delete the whole UI ----
deleting 0000000000732330
deleting 0000000000732390
deleting 00000000007536C0
deleting 0000000000753700
deleting 00000000007534F0
deleting 0000000000753540
deleting 0000000000753580
deleting 00000000007534A0
deleting 00000000007535C0
deleting 0000000000753600
deleting 00000000007323D0
deleting 0000000000753640
deleting 0000000000753680
end:
- allocs:0 new:13 delete:13
Comments