No that was a bad idea time to do something else
This commit is contained in:
parent
38baa97e76
commit
538123dcd5
@ -1,55 +0,0 @@
|
|||||||
package core
|
|
||||||
|
|
||||||
import "image"
|
|
||||||
import "git.tebibyte.media/sashakoshka/tomo/layouts"
|
|
||||||
import "git.tebibyte.media/sashakoshka/tomo/elements"
|
|
||||||
|
|
||||||
// ContainerCore is a struct that can be embedded into an object to allow it to
|
|
||||||
// have one or more children. It also implements Flexible and Focusable and
|
|
||||||
// provides the standard behavior for selecting multiple children, and
|
|
||||||
// propagating user input events to them.
|
|
||||||
type ContainerCore struct {
|
|
||||||
bounds image.Rectangle
|
|
||||||
layout layouts.Layout
|
|
||||||
children []layouts.LayoutEntry
|
|
||||||
drags [10]elements.MouseTarget
|
|
||||||
warping bool
|
|
||||||
focused bool
|
|
||||||
focusable bool
|
|
||||||
flexible bool
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewContainerCore (
|
|
||||||
layout layouts.Layout,
|
|
||||||
onFocusChange func (),
|
|
||||||
onLayoutChange func (),
|
|
||||||
) (
|
|
||||||
core *ContainerCore,
|
|
||||||
control ContainerCoreControl,
|
|
||||||
) {
|
|
||||||
core = &ContainerCore {
|
|
||||||
layout: layout,
|
|
||||||
}
|
|
||||||
control = ContainerCoreControl {
|
|
||||||
core: core,
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO fulfill interfaces here. accessors and mutators need to be in the
|
|
||||||
// container core control, because elements will have different ways of adopting
|
|
||||||
// and disowning child elements.
|
|
||||||
|
|
||||||
type ContainerCoreControl struct {
|
|
||||||
core *ContainerCore
|
|
||||||
}
|
|
||||||
|
|
||||||
// Resize sets the size of the control, and
|
|
||||||
func (control ContainerCoreControl) Resize (bounds image.Rectangle) {
|
|
||||||
// TODO do a layout
|
|
||||||
// TODO call onLayoutChange
|
|
||||||
}
|
|
||||||
|
|
||||||
func (control ContainerCoreControl) Adopt (element elements.Element, expand bool) {
|
|
||||||
|
|
||||||
}
|
|
Reference in New Issue
Block a user