forked from joejulian/gio
ui/draw,ui/layout: export OpClip
Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
+3
-3
@@ -113,10 +113,10 @@ func (d *OpDraw) Decode(data []byte, refs []interface{}) {
|
||||
}
|
||||
}
|
||||
|
||||
// RectClip append a clip op corresponding to
|
||||
// RectClip returns an OpClip op corresponding to
|
||||
// a pixel aligned rectangular area.
|
||||
func RectClip(ops *ui.Ops, r image.Rectangle) {
|
||||
opClip{bounds: toRectF(r)}.Add(ops)
|
||||
func RectClip(r image.Rectangle) OpClip {
|
||||
return OpClip{bounds: toRectF(r)}
|
||||
}
|
||||
|
||||
func itof(i int) float32 {
|
||||
|
||||
+5
-4
@@ -23,12 +23,13 @@ type PathBuilder struct {
|
||||
hasBounds bool
|
||||
}
|
||||
|
||||
// opClip structure must match opClip in package ui/internal/gpu.
|
||||
type opClip struct {
|
||||
// OpClip structure must match opClip in package ui/internal/gpu.
|
||||
|
||||
type OpClip struct {
|
||||
bounds f32.Rectangle
|
||||
}
|
||||
|
||||
func (p opClip) Add(o *ui.Ops) {
|
||||
func (p OpClip) Add(o *ui.Ops) {
|
||||
data := make([]byte, ops.TypeClipLen)
|
||||
data[0] = byte(ops.TypeClip)
|
||||
bo := binary.LittleEndian
|
||||
@@ -277,7 +278,7 @@ func (p *PathBuilder) simpleQuadTo(ctrl, to f32.Point) {
|
||||
|
||||
func (p *PathBuilder) End() {
|
||||
p.end()
|
||||
opClip{
|
||||
OpClip{
|
||||
bounds: p.bounds,
|
||||
}.Add(p.ops)
|
||||
}
|
||||
|
||||
+1
-1
@@ -180,7 +180,7 @@ func (l *List) Layout() Dimens {
|
||||
Max: axisPoint(l.Axis, max, ui.Inf),
|
||||
}
|
||||
ui.OpPush{}.Add(ops)
|
||||
draw.RectClip(ops, r)
|
||||
draw.RectClip(r).Add(ops)
|
||||
ui.OpTransform{
|
||||
Transform: ui.Offset(toPointF(axisPoint(l.Axis, pos, cross))),
|
||||
}.Add(ops)
|
||||
|
||||
Reference in New Issue
Block a user