1    mixin MarginImpl @mut =
2        require Decorator
3    
4        var obs left : u32 = 0
5        var obs right : u32 = 0
6        var obs up : u32 = 0
7        var obs down : u32 = 0
8    
9        def Control.measure w h =
10           measure_margin self left right up down content w h
11   
12       def Control.arrange =
13           arrange_margin self left right up down
14   
15       def set_thickness (i : u32) =
16           left = i
17           right = i
18           up = i
19           down = i
20   
21   type Margin =
22       inherit Decorator
23       include MarginImpl
24