mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-11-10 13:07:26 +01:00
48 lines
630 B
Go
48 lines
630 B
Go
package ui
|
|
|
|
import (
|
|
"github.com/hajimehoshi/go-ebiten/graphics"
|
|
)
|
|
|
|
type Key int
|
|
|
|
const (
|
|
KeyUp Key = iota
|
|
KeyDown
|
|
KeyLeft
|
|
KeyRight
|
|
KeySpace
|
|
KeyMax
|
|
)
|
|
|
|
type WindowSizeUpdatedEvent struct {
|
|
Width int
|
|
Height int
|
|
}
|
|
|
|
type KeyStateUpdatedEvent struct {
|
|
Keys []Key
|
|
}
|
|
|
|
type MouseStateUpdatedEvent struct {
|
|
X int
|
|
Y int
|
|
}
|
|
|
|
type WindowClosedEvent struct {
|
|
}
|
|
|
|
type UI interface {
|
|
PollEvents()
|
|
CreateGameWindow(screenWidth, screenHeight, screenScale int, title string) GameWindow
|
|
}
|
|
|
|
type Window interface {
|
|
Events() <-chan interface{}
|
|
}
|
|
|
|
type GameWindow interface {
|
|
Draw(func(graphics.Context))
|
|
Events() <-chan interface{}
|
|
}
|