839 lines
36 KiB
Go
839 lines
36 KiB
Go
// Code generated by vugu via vugugen DO NOT EDIT.
|
|
// Please regenerate instead of editing or add additional code in a separate file.
|
|
|
|
package main
|
|
|
|
import "fmt"
|
|
import "reflect"
|
|
import "github.com/vugu/vjson"
|
|
import "github.com/vugu/vugu"
|
|
import js "github.com/vugu/vugu/js"
|
|
import "log"
|
|
|
|
import (
|
|
"git.d3nexus.de/Dadido3/D3vugu-components/components/input"
|
|
"git.d3nexus.de/Dadido3/D3vugu-components/components/layout"
|
|
"git.d3nexus.de/Dadido3/D3vugu-components/components/view"
|
|
)
|
|
|
|
func (c *PageOverlays) Build(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
|
|
vgout = &vugu.BuildOut{}
|
|
|
|
var vgiterkey interface{}
|
|
_ = vgiterkey
|
|
var vgn *vugu.VGNode
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "div", Attr: []vugu.VGAttribute(nil)}
|
|
vgout.Out = append(vgout.Out, vgn) // root for output
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x194F4C7AF2E5A2B0^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*layout.Container)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(layout.Container)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "h1", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("Overlays"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Overlays are handled by the "}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x5D2C5A226687E9BD^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.Container"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: " component which has to be embedded into your root component."}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Every page or component that creates overlays has to embed the "}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x8B97CF8B0E070FF7^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.OverlayContainerRef"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: " structure. Your wiring function also needs to set the reference to your "}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xFF20E0AE5D2C549C^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.Container"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: " that you have placed in your root component."}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "h2", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("Modals"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("A simple requester modal is already contained in the overlay package. Use it with:"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x57871D3A7975B6E6^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.Code)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.Code)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "pre", Attr: []vugu.VGAttribute{{Namespace: "", Key: "style", Val: "margin: 0;"}}}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML("func (c *PageOverlays) handleButton(event vugu.DOMEvent) {\n" +
|
|
" c.SetModal(&overlay.ModalRequester{\n" +
|
|
" IconSlot: &icons.LInfoCircle{AttrMap: vugu.AttrMap{\"style\": \"font-size: 2em;\"}},\n" +
|
|
" Title: \"Simple requester\",\n" +
|
|
" Message: \"This is a simple modal requester, are you happy with it?\\nIt also supports multi line text!\",\n" +
|
|
" SignalColor: \"d3c-color-accent\",\n" +
|
|
" ClickAbort: input.ClickFunc(func(event input.ClickEvent) {}),\n" +
|
|
" ClickYes: input.ClickFunc(func(event input.ClickEvent) {}),\n" +
|
|
" })\n" +
|
|
"}")
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xBBA873308CD4A293^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*input.Button)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(input.Button)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.Click = input.ClickFunc(func(event input.ClickEvent) { c.handleSimpleModalButton(event) })
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Open simple modal"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "h2", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("Toasts"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("A simple toast with an icon slot and custom color setting can be found in the overlay package. Use it with:"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x64B98A0E9BE551C9^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.Code)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.Code)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "pre", Attr: []vugu.VGAttribute{{Namespace: "", Key: "style", Val: "margin: 0;"}}}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML("func (c *PageOverlays) handleButton(event vugu.DOMEvent) {\n" +
|
|
" c.AddToast(event, &overlay.ToastSimple{\n" +
|
|
" IconSlot: &icons.LInfoCircle{AttrMap: vugu.AttrMap{\"style\": \"font-size: 2em;\"}},\n" +
|
|
" Message: \"This is a simple toast!\\nIt supports multiple lines and has an icon slot.\\nThere also can be multiple of it at the same time, this one was opened at \" + time.Now().Format(time.TimeOnly) + \".\",\n" +
|
|
" SignalColor: \"d3c-color-accent\",\n" +
|
|
" })\n" +
|
|
"}")
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xB402F0639D2AEBFC^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*layout.ContainerHorizontal)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(layout.ContainerHorizontal)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x21A6EE2734D420B3^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*input.Button)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(input.Button)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.Click = input.ClickFunc(func(event input.ClickEvent) { c.handleSimpleToastButton(event) })
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Open simple toast"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xE49C7E0D74507044^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*input.Button)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(input.Button)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.Click = input.ClickFunc(func(event input.ClickEvent) { c.handleWarningToastButton(event) })
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Open warning toast"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "A shorter version of this is "}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x275D98A4726B4800^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.ToastMessage"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: " which only accepts a message text and a message type which is one of"}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "ul", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "li", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x4F335D05F6793367^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.ToastMessageTypeSuccess"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "li", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x93D96FEA7B1F8A08^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.ToastMessageTypeAttention"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "li", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xB1038AF17C68FC03^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.ToastMessageTypeCaution"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "li", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xDFECE752D6DEC4B1^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "overlay.ToastMessageTypeCritical"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xF9EB6BFBA1B4F756^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.Code)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.Code)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "pre", Attr: []vugu.VGAttribute{{Namespace: "", Key: "style", Val: "margin: 0;"}}}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML("func (c *PageOverlays) handleButton(event vugu.DOMEvent) {\n" +
|
|
" c.AddToast(event.EventEnv(), &overlay.ToastMessage{MessageType: overlay.ToastMessageTypeCritical, Message: \"Uh oh!\"})\n" +
|
|
"}")
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x47E12F12AE2A0E7^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*input.Button)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(input.Button)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.Click = input.ClickFunc(func(event input.ClickEvent) { c.handleToastMessageButton(event) })
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Open message toast"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "To let the toast close itself after some time, you can use the "}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x3E15BCF6E929340E^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.CodeInline)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.CodeInline)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Duration"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: " option:"}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xD5D366D18AAA5FB2^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.Code)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.Code)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "pre", Attr: []vugu.VGAttribute{{Namespace: "", Key: "style", Val: "margin: 0;"}}}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML("func (c *PageOverlays) handleButton(event vugu.DOMEvent) {\n" +
|
|
" c.AddToast(event.EventEnv(), &overlay.ToastMessage{MessageType: overlay.ToastMessageTypeSuccess, Message: \"That worked!\", Duration: 5 * time.Second})\n" +
|
|
"}")
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x8516880ECD5A78C0^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*input.Button)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(input.Button)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.Click = input.ClickFunc(func(event input.ClickEvent) { c.handleToastMessageTimeoutButton(event) })
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Open self closing message toast"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "h2", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("Wait/Load overlay"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "p", Attr: []vugu.VGAttribute(nil)}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML(vugu.HTML("For actions that take a bit longer you can show the wait overlay:"))
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0x2E967CD9233EB11B^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*view.Code)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(view.Code)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Namespace: "", Data: "pre", Attr: []vugu.VGAttribute{{Namespace: "", Key: "style", Val: "margin: 0;"}}}
|
|
vgparent.AppendChild(vgn)
|
|
vgn.SetInnerHTML("func (c *PageOverlays) handleWaitOverlayButton(event vugu.DOMEvent) {\n" +
|
|
" c.WaitOverlayOpen()\n" +
|
|
" go func() {\n" +
|
|
" // Simulate some request or some other action.\n" +
|
|
" time.Sleep(5 * time.Second)\n" +
|
|
" // We need to lock and unlock the event environment in order for the DOM to re-render and the overlay to disappear correctly.\n" +
|
|
" event.EventEnv().Lock()\n" +
|
|
" defer event.EventEnv().UnlockRender()\n" +
|
|
" defer c.WaitOverlayDone() // WaitOverlayDone has to be called before UnlockRender, so we need to put it afterwards (defer ordering).\n" +
|
|
" // Update other UI stuff here.\n" +
|
|
" }()\n" +
|
|
"}")
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xEEAE6C3E586548F2^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*layout.ContainerHorizontal)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(layout.ContainerHorizontal)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
{
|
|
vgcompKey := vugu.MakeCompKey(0xCC2B0FE27CCC0091^vgin.CurrentPositionHash(), vgiterkey)
|
|
// ask BuildEnv for prior instance of this specific component
|
|
vgcomp, _ := vgin.BuildEnv.CachedComponent(vgcompKey).(*input.Button)
|
|
if vgcomp == nil {
|
|
// create new one if needed
|
|
vgcomp = new(input.Button)
|
|
vgin.BuildEnv.WireComponent(vgcomp)
|
|
}
|
|
vgin.BuildEnv.UseComponent(vgcompKey, vgcomp) // ensure we can use this in the cache next time around
|
|
vgcomp.Click = input.ClickFunc(func(event input.ClickEvent) { c.handleWaitOverlayButton(event) })
|
|
vgcomp.DefaultSlot = vugu.NewBuilderFunc(func(vgin *vugu.BuildIn) (vgout *vugu.BuildOut) {
|
|
vgn := &vugu.VGNode{Type: vugu.VGNodeType(3)}
|
|
vgout = &vugu.BuildOut{}
|
|
vgout.Out = append(vgout.Out, vgn)
|
|
vgparent := vgn
|
|
_ = vgparent
|
|
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "Do some action that takes time"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n\t"}
|
|
vgparent.AppendChild(vgn)
|
|
return
|
|
})
|
|
vgout.Components = append(vgout.Components, vgcomp)
|
|
vgn = &vugu.VGNode{Component: vgcomp}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n"}
|
|
vgparent.AppendChild(vgn)
|
|
}
|
|
vgn = &vugu.VGNode{Type: vugu.VGNodeType(3), Data: "style", Attr: []vugu.VGAttribute(nil)}
|
|
{
|
|
vgn.AppendChild(&vugu.VGNode{Type: vugu.VGNodeType(1), Data: "\n", Attr: []vugu.VGAttribute(nil)})
|
|
}
|
|
vgout.AppendCSS(vgn)
|
|
return vgout
|
|
}
|
|
|
|
// 'fix' unused imports
|
|
var _ fmt.Stringer
|
|
var _ reflect.Type
|
|
var _ vjson.RawMessage
|
|
var _ js.Value
|
|
var _ log.Logger
|