mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-03 07:29:07 +08:00
Move runtime out to package
This commit is contained in:
parent
01a1288364
commit
9f9c9e27de
8
app.go
8
app.go
@ -13,6 +13,7 @@ import (
|
|||||||
"github.com/wailsapp/wails/lib/ipc"
|
"github.com/wailsapp/wails/lib/ipc"
|
||||||
"github.com/wailsapp/wails/lib/logger"
|
"github.com/wailsapp/wails/lib/logger"
|
||||||
"github.com/wailsapp/wails/lib/renderer"
|
"github.com/wailsapp/wails/lib/renderer"
|
||||||
|
wailsruntime "github.com/wailsapp/wails/runtime"
|
||||||
)
|
)
|
||||||
|
|
||||||
// -------------------------------- Compile time Flags ------------------------------
|
// -------------------------------- Compile time Flags ------------------------------
|
||||||
@ -20,6 +21,11 @@ import (
|
|||||||
// BuildMode indicates what mode we are in
|
// BuildMode indicates what mode we are in
|
||||||
var BuildMode = cmd.BuildModeProd
|
var BuildMode = cmd.BuildModeProd
|
||||||
|
|
||||||
|
type Runtime = wailsruntime.Runtime
|
||||||
|
type Store = wailsruntime.Store
|
||||||
|
|
||||||
|
type CustomLogger = logger.CustomLogger
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------
|
||||||
|
|
||||||
// App defines the main application struct
|
// App defines the main application struct
|
||||||
@ -125,7 +131,7 @@ func (a *App) start() error {
|
|||||||
a.ipc.Start(a.eventManager, a.bindingManager)
|
a.ipc.Start(a.eventManager, a.bindingManager)
|
||||||
|
|
||||||
// Create the runtime
|
// Create the runtime
|
||||||
a.runtime = NewRuntime(a.eventManager, a.renderer)
|
a.runtime = wailsruntime.NewRuntime(a.eventManager, a.renderer)
|
||||||
|
|
||||||
// Start binding manager and give it our renderer
|
// Start binding manager and give it our renderer
|
||||||
err = a.bindingManager.Start(a.renderer, a.runtime)
|
err = a.bindingManager.Start(a.renderer, a.runtime)
|
||||||
|
32
runtime.go
32
runtime.go
@ -1,32 +0,0 @@
|
|||||||
package wails
|
|
||||||
|
|
||||||
import (
|
|
||||||
"github.com/wailsapp/wails/lib/interfaces"
|
|
||||||
"github.com/wailsapp/wails/lib/logger"
|
|
||||||
"github.com/wailsapp/wails/runtime"
|
|
||||||
)
|
|
||||||
|
|
||||||
// CustomLogger type alias
|
|
||||||
type CustomLogger = logger.CustomLogger
|
|
||||||
|
|
||||||
// Runtime is the Wails Runtime Interface, given to a user who has defined the WailsInit method
|
|
||||||
type Runtime struct {
|
|
||||||
Events *runtime.Events
|
|
||||||
Log *runtime.Log
|
|
||||||
Dialog *runtime.Dialog
|
|
||||||
Window *runtime.Window
|
|
||||||
Browser *runtime.Browser
|
|
||||||
FileSystem *runtime.FileSystem
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewRuntime creates a new Runtime struct
|
|
||||||
func NewRuntime(eventManager interfaces.EventManager, renderer interfaces.Renderer) *Runtime {
|
|
||||||
return &Runtime{
|
|
||||||
Events: runtime.NewEvents(eventManager),
|
|
||||||
Log: runtime.NewLog(),
|
|
||||||
Dialog: runtime.NewDialog(renderer),
|
|
||||||
Window: runtime.NewWindow(renderer),
|
|
||||||
Browser: runtime.NewBrowser(),
|
|
||||||
FileSystem: runtime.NewFileSystem(),
|
|
||||||
}
|
|
||||||
}
|
|
29
runtime/runtime.go
Normal file
29
runtime/runtime.go
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
package runtime
|
||||||
|
|
||||||
|
import "github.com/wailsapp/wails/lib/interfaces"
|
||||||
|
|
||||||
|
// Runtime is the Wails Runtime Interface, given to a user who has defined the WailsInit method
|
||||||
|
type Runtime struct {
|
||||||
|
Events *Events
|
||||||
|
Log *Log
|
||||||
|
Dialog *Dialog
|
||||||
|
Window *Window
|
||||||
|
Browser *Browser
|
||||||
|
FileSystem *FileSystem
|
||||||
|
Store *StoreProvider
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewRuntime creates a new Runtime struct
|
||||||
|
func NewRuntime(eventManager interfaces.EventManager, renderer interfaces.Renderer) *Runtime {
|
||||||
|
result := &Runtime{
|
||||||
|
Events: NewEvents(eventManager),
|
||||||
|
Log: NewLog(),
|
||||||
|
Dialog: NewDialog(renderer),
|
||||||
|
Window: NewWindow(renderer),
|
||||||
|
Browser: NewBrowser(),
|
||||||
|
FileSystem: NewFileSystem(),
|
||||||
|
}
|
||||||
|
// We need a reference to itself
|
||||||
|
result.Store = NewStoreProvider(result)
|
||||||
|
return result
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user