slight refactor, gofmt
This commit is contained in:
53
ui/mainwindow/mainwindow.go
Normal file
53
ui/mainwindow/mainwindow.go
Normal file
@ -0,0 +1,53 @@
|
||||
package mainwindow
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"lab.zaar.be/thefish/alchemyst-go/engine/types"
|
||||
"lab.zaar.be/thefish/alchemyst-go/util"
|
||||
blt "lab.zaar.be/thefish/bearlibterminal"
|
||||
)
|
||||
|
||||
type MainWindow struct {
|
||||
ctx util.ClientCtx
|
||||
layers []types.Renderable
|
||||
}
|
||||
|
||||
func Init(ctx util.ClientCtx) *MainWindow {
|
||||
ctx.Logger().Info().Msgf("Opening main window...")
|
||||
mw := MainWindow{ctx: ctx}
|
||||
mw.Open()
|
||||
return &mw
|
||||
}
|
||||
|
||||
func (mw *MainWindow) Open() {
|
||||
config := mw.ctx.Config()
|
||||
blt.Open()
|
||||
//blt.Set("window: size=80x25, title="+config.Title+" v"+string(version)+"; font: ./fonts/Monaco-Linux.ttf, size=10")
|
||||
blt.Set(
|
||||
fmt.Sprintf(
|
||||
//"window: size=%dx%d, title='%s v%s'; font: ./resources/fonts-bitmap/ibmnew8x12.png, size=8x12;",
|
||||
"window: size=%dx%d, title='%s v%s'; font: %s, size=8x16;",
|
||||
//"window: size=%dx%d, title='%s v%s'",
|
||||
config.MainWindowSizeX,
|
||||
config.MainWindowSizeY,
|
||||
config.Title,
|
||||
config.Version,
|
||||
config.Font,
|
||||
),
|
||||
)
|
||||
}
|
||||
|
||||
func (mw *MainWindow) Close() {
|
||||
mw.ctx.Logger().Info().Msg("Closing main window...")
|
||||
blt.Close()
|
||||
}
|
||||
|
||||
func (mw *MainWindow) Render() {
|
||||
for _, l := range mw.layers {
|
||||
l.Render()
|
||||
}
|
||||
}
|
||||
|
||||
func (mw *MainWindow) AddLayer(li types.Renderable) {
|
||||
mw.layers = append(mw.layers, li)
|
||||
}
|
Reference in New Issue
Block a user