@@ -23,46 +23,3 @@ public protocol LayoutComponent {
2323 ///
2424 func draw( _ rect: Rect , measuredSize: Size , edge: RectEdge , renderer: Renderer )
2525}
26-
27- /// A `LayoutComponent` wrapper which adds padding to an internal `LayoutComponent`
28- ///
29- private struct _Padded < T: LayoutComponent > : LayoutComponent {
30- var base : T
31- var padding : EdgeComponents < Float > = . zero
32-
33- func measure( edge: RectEdge , _ renderer: Renderer ) -> Size {
34- var size = base. measure ( edge: edge, renderer)
35- size. width += padding. left + padding. right
36- size. height += padding. top + padding. bottom
37- return size
38- }
39- func draw( _ rect: Rect , measuredSize: Size , edge: RectEdge , renderer: Renderer ) {
40- var adjustedMeasuredSize = measuredSize
41- adjustedMeasuredSize. width -= padding. left + padding. right
42- adjustedMeasuredSize. height -= padding. top + padding. bottom
43- let adjustedRect = rect. inset ( by: padding)
44- base. draw ( adjustedRect, measuredSize: adjustedMeasuredSize, edge: edge, renderer: renderer)
45- }
46- }
47- extension LayoutComponent {
48-
49- /// Returns a new `LayoutComponent` which adds the given padding to this `LayoutComponent`.
50- ///
51- public func padding( _ padding: EdgeComponents < Float > ) -> LayoutComponent {
52- return _Padded ( base: self , padding: padding)
53- }
54- }
55-
56- struct FixedSpace : LayoutComponent {
57- var size : Float
58- func measure( edge: RectEdge , _ renderer: Renderer ) -> Size {
59- if edge. isHorizontal {
60- // Only the height is important, so we can say width = 1.
61- return Size ( width: 1 , height: size)
62- } else {
63- return Size ( width: size, height: 1 )
64- }
65- }
66- func draw( _ rect: Rect , measuredSize: Size , edge: RectEdge , renderer: Renderer ) {
67- }
68- }
0 commit comments