mirror of
https://git.sr.ht/~eliasnaur/gio
synced 2026-07-01 07:35:40 +00:00
op/clip: export Op method of clip shapes
This allows passing the resulting clip.Op types into functions that draw shapes. Signed-off-by: Chris Waldon <christopher.waldon.dev@gmail.com>
This commit is contained in:
+6
-1
@@ -324,7 +324,12 @@ func (p *Path) End() Op {
|
||||
// Rect represents the clip area of a pixel-aligned rectangle.
|
||||
type Rect image.Rectangle
|
||||
|
||||
// Op returns the op for the rectangle.
|
||||
func (r Rect) Op(ops *op.Ops) Op {
|
||||
return Op{bounds: image.Rectangle(r)}
|
||||
}
|
||||
|
||||
// Add the clip operation.
|
||||
func (r Rect) Add(ops *op.Ops) {
|
||||
Op{bounds: image.Rectangle(r)}.Add(ops)
|
||||
r.Op(ops).Add(ops)
|
||||
}
|
||||
|
||||
+6
-5
@@ -18,8 +18,8 @@ type RRect struct {
|
||||
SE, SW, NW, NE float32
|
||||
}
|
||||
|
||||
// op returns the op for the rectangle.
|
||||
func (rr RRect) op(ops *op.Ops) Op {
|
||||
// Op returns the op for the rounded rectangle.
|
||||
func (rr RRect) Op(ops *op.Ops) Op {
|
||||
var p Path
|
||||
p.Begin(ops)
|
||||
p.Move(rr.Rect.Min)
|
||||
@@ -29,7 +29,7 @@ func (rr RRect) op(ops *op.Ops) Op {
|
||||
|
||||
// Add the rectangle clip.
|
||||
func (rr RRect) Add(ops *op.Ops) {
|
||||
rr.op(ops).Add(ops)
|
||||
rr.Op(ops).Add(ops)
|
||||
}
|
||||
|
||||
// Border represents the clip area of a rectangular border.
|
||||
@@ -41,7 +41,8 @@ type Border struct {
|
||||
SE, SW, NW, NE float32
|
||||
}
|
||||
|
||||
func (b Border) op(ops *op.Ops) Op {
|
||||
// Op returns the Op for the border.
|
||||
func (b Border) Op(ops *op.Ops) Op {
|
||||
var p Path
|
||||
p.Begin(ops)
|
||||
w := b.Width
|
||||
@@ -65,7 +66,7 @@ func (b Border) op(ops *op.Ops) Op {
|
||||
|
||||
// Add the border clip.
|
||||
func (rr Border) Add(ops *op.Ops) {
|
||||
rr.op(ops).Add(ops)
|
||||
rr.Op(ops).Add(ops)
|
||||
}
|
||||
|
||||
// roundRect adds the outline of a rectangle with rounded corners to a
|
||||
|
||||
Reference in New Issue
Block a user