logger.go (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
package main
import (
"context"
"fmt"
"time"
"github.com/wailsapp/wails/v2/pkg/runtime"
)
type LogMessage struct {
context context.Context
message string
}
func (app *App) Log(format string, a ...any) *LogMessage {
log := LogMessage{context: app.ctx}
log.message = fmt.Sprintf(format, a...)
return &log
}
func (log *LogMessage) Stdout() *LogMessage {
fmt.Printf("[%s] %s\n", time.Now().Format(time.DateTime), log.message)
return log
}
func (log *LogMessage) StatusLine() *LogMessage {
runtime.EventsEmit(log.context, "status", log.message)
return log
}
|