Basic internal structure
This commit is contained in:
7
internal/system/box.go
Normal file
7
internal/system/box.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package system
|
||||
|
||||
import "git.tebibyte.media/tomo/tomo"
|
||||
|
||||
func (this *System) NewBox () tomo.Box {
|
||||
|
||||
}
|
||||
7
internal/system/canvasbox.go
Normal file
7
internal/system/canvasbox.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package system
|
||||
|
||||
import "git.tebibyte.media/tomo/tomo"
|
||||
|
||||
func (this *System) NewCanvasBox () tomo.CanvasBox {
|
||||
|
||||
}
|
||||
7
internal/system/containerbox.go
Normal file
7
internal/system/containerbox.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package system
|
||||
|
||||
import "git.tebibyte.media/tomo/tomo"
|
||||
|
||||
func (this *System) NewContainerBox () tomo.ContainerBox {
|
||||
|
||||
}
|
||||
15
internal/system/hierarchy.go
Normal file
15
internal/system/hierarchy.go
Normal file
@@ -0,0 +1,15 @@
|
||||
package system
|
||||
|
||||
import "git.tebibyte.media/tomo/tomo"
|
||||
|
||||
type Hierarchy struct {
|
||||
link WindowLink
|
||||
}
|
||||
|
||||
type WindowLink interface {
|
||||
GetWindow () tomo.Window
|
||||
}
|
||||
|
||||
func (this *System) NewHierarchy (link WindowLink) *Hierarchy {
|
||||
|
||||
}
|
||||
7
internal/system/surfacebox.go
Normal file
7
internal/system/surfacebox.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package system
|
||||
|
||||
import "git.tebibyte.media/tomo/tomo"
|
||||
|
||||
func (this *System) NewSurfaceBox () (tomo.SurfaceBox, error) {
|
||||
|
||||
}
|
||||
27
internal/system/system.go
Normal file
27
internal/system/system.go
Normal file
@@ -0,0 +1,27 @@
|
||||
package system
|
||||
|
||||
import "io"
|
||||
import "image"
|
||||
import "git.tebibyte.media/tomo/tomo/canvas"
|
||||
|
||||
type System struct {
|
||||
link BackendLink
|
||||
}
|
||||
|
||||
type BackendLink interface {
|
||||
NewTexture (image.Image) canvas.TextureCloser
|
||||
NewCanvas (image.Rectangle) canvas.Canvas
|
||||
NewSurface (image.Rectangle) SurfaceLink
|
||||
}
|
||||
|
||||
type SurfaceLink interface {
|
||||
io.Closer
|
||||
GetSurface () any
|
||||
SetSize (image.Rectangle)
|
||||
}
|
||||
|
||||
func New (link BackendLink) *System {
|
||||
return &System {
|
||||
link: link,
|
||||
}
|
||||
}
|
||||
7
internal/system/textbox.go
Normal file
7
internal/system/textbox.go
Normal file
@@ -0,0 +1,7 @@
|
||||
package system
|
||||
|
||||
import "git.tebibyte.media/tomo/tomo"
|
||||
|
||||
func (this *System) NewTextBox () tomo.TextBox {
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user