Replaced the `i18n` and `toml` dependencies with Fyne's built-in language system for localization management. Updated the `Localizer` implementation to handle translations using JSON files and embed functionality. Simplified language selection and persisted settings via Fyne's preferences API.
33 lines
673 B
Go
33 lines
673 B
Go
package handler
|
|
|
|
import (
|
|
"git.kor-elf.net/kor-elf/gui-for-ffmpeg/kernel"
|
|
)
|
|
|
|
type MainHandler struct {
|
|
app kernel.AppContract
|
|
convertorHandler ConvertorHandlerContract
|
|
menuHandler MenuHandlerContract
|
|
}
|
|
|
|
func NewMainHandler(
|
|
app kernel.AppContract,
|
|
convertorHandler ConvertorHandlerContract,
|
|
menuHandler MenuHandlerContract,
|
|
) *MainHandler {
|
|
return &MainHandler{
|
|
app: app,
|
|
convertorHandler: convertorHandler,
|
|
menuHandler: menuHandler,
|
|
}
|
|
}
|
|
|
|
func (h MainHandler) Start() {
|
|
if h.app.GetLocalizerService().IsStartWithLanguageSelection() {
|
|
h.menuHandler.LanguageSelection()
|
|
return
|
|
}
|
|
|
|
h.convertorHandler.MainConvertor()
|
|
}
|