internal/ui: remove graphicsDrivre() calls from image.go

This commit is contained in:
Hajime Hoshi 2022-03-21 22:47:13 +09:00
parent cd57bccbfc
commit 99437944bc
3 changed files with 21 additions and 7 deletions

View File

@ -16,7 +16,6 @@ package ui
import ( import (
"github.com/hajimehoshi/ebiten/v2/internal/affine" "github.com/hajimehoshi/ebiten/v2/internal/affine"
"github.com/hajimehoshi/ebiten/v2/internal/atlas"
"github.com/hajimehoshi/ebiten/v2/internal/graphics" "github.com/hajimehoshi/ebiten/v2/internal/graphics"
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver" "github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver"
"github.com/hajimehoshi/ebiten/v2/internal/mipmap" "github.com/hajimehoshi/ebiten/v2/internal/mipmap"
@ -78,7 +77,7 @@ func (i *Image) At(x, y int) (r, g, b, a byte) {
return 0, 0, 0, 0 return 0, 0, 0, 0
} }
r, g, b, a, err := i.mipmap.At(graphicsDriver(), x, y) r, g, b, a, err := theUI.imageAt(i.mipmap, x, y)
if err != nil { if err != nil {
if panicOnErrorOnReadingPixels { if panicOnErrorOnReadingPixels {
panic(err) panic(err)
@ -90,7 +89,7 @@ func (i *Image) At(x, y int) (r, g, b, a byte) {
} }
func (i *Image) DumpScreenshot(name string, blackbg bool) error { func (i *Image) DumpScreenshot(name string, blackbg bool) error {
return i.mipmap.DumpScreenshot(graphicsDriver(), name, blackbg) return theUI.dumpScreenshot(i.mipmap, name, blackbg)
} }
func (i *Image) SetIndependent(independent bool) { func (i *Image) SetIndependent(independent bool) {
@ -102,5 +101,5 @@ func (i *Image) SetVolatile(volatile bool) {
} }
func DumpImages(dir string) error { func DumpImages(dir string) error {
return atlas.DumpImages(graphicsDriver(), dir) return theUI.dumpImages(dir)
} }

View File

@ -16,6 +16,9 @@ package ui
import ( import (
"errors" "errors"
"github.com/hajimehoshi/ebiten/v2/internal/atlas"
"github.com/hajimehoshi/ebiten/v2/internal/mipmap"
) )
type MouseButton int type MouseButton int
@ -67,3 +70,15 @@ const (
WindowResizingModeOnlyFullscreenEnabled WindowResizingModeOnlyFullscreenEnabled
WindowResizingModeEnabled WindowResizingModeEnabled
) )
func (u *UserInterface) imageAt(mipmap *mipmap.Mipmap, x, y int) (r, g, b, a byte, err error) {
return mipmap.At(graphicsDriver(), x, y)
}
func (u *UserInterface) dumpScreenshot(mipmap *mipmap.Mipmap, name string, blackbg bool) error {
return mipmap.DumpScreenshot(graphicsDriver(), name, blackbg)
}
func (u *UserInterface) dumpImages(dir string) error {
return atlas.DumpImages(graphicsDriver(), dir)
}

View File

@ -34,10 +34,10 @@ type UserInterface struct {
input Input input Input
} }
var theUserInterface UserInterface var theUI UserInterface
func Get() *UserInterface { func Get() *UserInterface {
return &theUserInterface return &theUI
} }
func (u *UserInterface) Run(game Game) error { func (u *UserInterface) Run(game Game) error {
@ -116,7 +116,7 @@ func (*UserInterface) SetInitFocused(focused bool) {
} }
func (*UserInterface) Input() *Input { func (*UserInterface) Input() *Input {
return &theUserInterface.input return &theUI.input
} }
func (*UserInterface) Window() *Window { func (*UserInterface) Window() *Window {