1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
// compile
// Copyright 2017 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Issue 19515: compiler panics on spilling int128 constant.
package x
type VScrollPanel struct {
x, y int
}
type Color struct {
R, G, B, A float32
}
func maxF(a, b float32) float32 {
if a > b {
return 0
}
return 1
}
type TransformMatrix [6]float32
type Paint struct {
xform TransformMatrix
feather float32
innerColor Color
outerColor Color
}
func BoxGradient(x, y, w, h, f float32, iColor, oColor Color) Paint {
return Paint{
xform: TransformMatrix{9, 0, 0, 0, x, y},
feather: maxF(1.0, f),
innerColor: iColor,
outerColor: oColor,
}
}
func (v *VScrollPanel) Draw() {
x := float32(v.x)
y := float32(v.y)
BoxGradient(x+x-2, y-1, 0, 0, 0, Color{}, Color{})
BoxGradient(x+y-2, y-1, 0, 0, 0, Color{}, Color{})
}
|