23 lines
719 B
Go
23 lines
719 B
Go
|
package objects
|
||
|
|
||
|
import "git.tebibyte.media/tomo/tomo"
|
||
|
import "git.tebibyte.media/tomo/objects/layouts"
|
||
|
|
||
|
var _ tomo.ContentObject = new(Pegboard)
|
||
|
|
||
|
// Pegboard is an object that can contain other objects. It is intended to
|
||
|
// contain a flowed list of objects which represent some data, such as files.
|
||
|
type Pegboard struct {
|
||
|
abstractContainer
|
||
|
}
|
||
|
|
||
|
// NewPegboard creates a new pegboard. If the provided layout is nil, it will
|
||
|
// use a FlowHorizontal layout.
|
||
|
func NewPegboard (layout tomo.Layout, children ...tomo.Object) *Pegboard {
|
||
|
if layout == nil { layout = layouts.FlowHorizontal }
|
||
|
pegboard := &Pegboard { }
|
||
|
pegboard.init(layout, children...)
|
||
|
pegboard.box.SetRole(tomo.R("objects", "Pegboard"))
|
||
|
return pegboard
|
||
|
}
|