package core import ( "errors" "fyne.io/fyne/v2" "fyne.io/fyne/v2/container" ) // ServiceNameMainWindow is a name for main window service. const ServiceNameMainWindow = "core/mainwindow" var ( // ErrMainWindow indicates that error appeared somewhere in main window service. ErrMainWindow = errors.New("main window service") // ErrMainWindowIsInvalid indicates that main window service implementation is invalid. ErrMainWindowIsInvalid = errors.New("main window service implementation is invalid") ) // MainWindow is an interface for main window service. type MainWindow interface { // AddTab adds tab in main window. AddTab(tab *container.TabItem) // MainWindow returns main window instance (e.g. for using as parent with dialogs). MainWindow() fyne.Window // RegisterAboutWindowSysInfoHandler registers handler for System Info tab in About dialog. RegisterAboutWindowSysInfoHandler(name string, hndl SysInfoHandler) error } // SysInfoHandler is a function signature for registering with additional system information handler for About dialog. // It should return valid markdown and should end with "\n". type SysInfoHandler func() string