Files
work_cation/views/createCards.go
T

30 lines
716 B
Go

package views
import (
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/widget"
"sort"
)
// CreateCards 创建卡片列表
func CreateCards(_ fyne.Window) fyne.CanvasObject {
var itemList []fyne.CanvasObject
keys := make([]string, 0, len(CardTypeMap))
for key, _ := range CardTypeMap {
keys = append(keys, key)
}
sort.Strings(keys)
for _, key := range keys {
info := CardTypeMap[key]
itemList = append(itemList, widget.NewButton(info.Name, func() {
cWin := fyne.CurrentApp().NewWindow(info.Name)
cWin.SetContent(info.createView(cWin))
cWin.Resize(info.createSize)
cWin.CenterOnScreen()
cWin.Show()
}))
}
return container.NewCenter(container.NewVBox(itemList...))
}