aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--layer/layer.go (renamed from layers/layers.go)13
1 files changed, 7 insertions, 6 deletions
diff --git a/layers/layers.go b/layer/layer.go
index d054e8b..213892b 100644
--- a/layers/layers.go
+++ b/layer/layer.go
@@ -14,13 +14,13 @@ type ImageFlusher interface {
Flush(r image.Rectangle)
}
-type Layers struct {
+type List struct {
event.Dispatch
dst ImageFlusher
layers list.List
}
-func (l *Layers) Dst(dst ImageFlusher) {
+func (l *List) Dst(dst ImageFlusher) {
l.dst = dst
for e := l.layers.Back(); e != nil; e = e.Prev() {
layer := e.Value.(*Layer)
@@ -30,7 +30,7 @@ func (l *Layers) Dst(dst ImageFlusher) {
}
}
-func (l *Layers) Push() *Layer {
+func (l *List) Push() *Layer {
layer := &Layer{
l: l,
rgba: image.NewRGBA(l.dst.Image().Bounds()),
@@ -39,7 +39,7 @@ func (l *Layers) Push() *Layer {
return layer
}
-func (l *Layers) Flush(r image.Rectangle) {
+func (l *List) Flush(r image.Rectangle) {
if l.dst == nil {
panic(errors.New("layers: Flush: no destination"))
}
@@ -51,7 +51,8 @@ func (l *Layers) Flush(r image.Rectangle) {
l.dst.Flush(r)
}
-func (l *Layers) Happen(event string) bool {
+func (l *List) Happen(event string) bool {
+ l.Dispatch.Happen(event)
for e := l.layers.Front(); e != nil; e = e.Next() {
layer := e.Value.(*Layer)
if layer.Happen(event) {
@@ -63,7 +64,7 @@ func (l *Layers) Happen(event string) bool {
type Layer struct {
event.Dispatch
- l *Layers
+ l *List
e *list.Element
rgba *image.RGBA
}