0.0.8 Updated selections. /JL

This commit is contained in:
2022-12-10 23:59:25 +01:00
parent 596dd8f87a
commit 664d798eb9
3 changed files with 76 additions and 20 deletions
+39 -12
View File
@@ -14,11 +14,17 @@ type MyMainWindow struct {
properties *walk.ScrollView properties *walk.ScrollView
pallette Pallette pallette Pallette
beads []*BeadColor beads []*BeadColor
pallette_combo *walk.ComboBox
brand_model []string
serie_combo *walk.ComboBox
serie_model []string
pegboard_combo *walk.ComboBox
pegboard_model []string
} }
const ( const (
AppName string = "BeadImager" AppName string = "BeadImager"
Version string = "0.0.7" Version string = "0.0.8"
CopyRight string = "©2022 Jan Lerking" CopyRight string = "©2022 Jan Lerking"
STD_MESS string = "Ready" STD_MESS string = "Ready"
UserPath string = "C:\\Users\\janle\\BeadImager" UserPath string = "C:\\Users\\janle\\BeadImager"
@@ -40,8 +46,7 @@ func main() {
log.Println("Pallette created: ", mw.pallette) log.Println("Pallette created: ", mw.pallette)
//LoadBeads(mw) //LoadBeads(mw)
//log.Println("Beads loaded: ", mw.beads) //log.Println("Beads loaded: ", mw.beads)
brand_model := CreateBrandsList(mw) mw.brand_model = CreateBrandsList(mw)
pallette_combo := new(walk.ComboBox)
DD_Pallette := Composite{ DD_Pallette := Composite{
Layout: HBox{MarginsZero: true}, Layout: HBox{MarginsZero: true},
@@ -50,18 +55,18 @@ func main() {
Text: "Pallette:", Text: "Pallette:",
}, },
ComboBox{ ComboBox{
AssignTo: &pallette_combo, AssignTo: &mw.pallette_combo,
Model: brand_model, Model: mw.brand_model,
OnCurrentIndexChanged: func() { OnCurrentIndexChanged: func() {
log.Println("Pallette changed to: ", pallette_combo.Text()) log.Println("Pallette changed to: ", mw.pallette_combo.Text())
mw.serie_model = CreateSeriesList(mw)
mw.serie_combo.SetModel(mw.serie_model)
mw.serie_combo.SetEnabled(true)
}, },
}, },
}, },
} }
serie_model := CreateSeriesList(mw)
serie_combo := new(walk.ComboBox)
DD_Serie := Composite{ DD_Serie := Composite{
Layout: HBox{MarginsZero: true}, Layout: HBox{MarginsZero: true},
Children: []Widget{ Children: []Widget{
@@ -69,10 +74,31 @@ func main() {
Text: "Serie:", Text: "Serie:",
}, },
ComboBox{ ComboBox{
AssignTo: &serie_combo, AssignTo: &mw.serie_combo,
Model: serie_model, Enabled: false,
OnCurrentIndexChanged: func() { OnCurrentIndexChanged: func() {
log.Println("Serie changed to: ", serie_combo.Text()) log.Println("Serie changed to: ", mw.serie_combo.Text())
mw.pegboard_model = CreatePegboardsList(mw)
mw.pegboard_combo.SetModel(mw.pegboard_model)
mw.pegboard_combo.SetEnabled(true)
},
},
},
}
//pegboard_model := CreatePegboardsList(mw)
DD_Pegboard := Composite{
Layout: HBox{MarginsZero: true},
Children: []Widget{
Label{
Text: "Pegboard:",
},
ComboBox{
AssignTo: &mw.pegboard_combo,
Enabled: false,
OnCurrentIndexChanged: func() {
log.Println("Pegboard changed to: ", mw.pegboard_combo.Text())
}, },
}, },
}, },
@@ -93,6 +119,7 @@ func main() {
Children: []Widget{ Children: []Widget{
DD_Pallette, DD_Pallette,
DD_Serie, DD_Serie,
DD_Pegboard,
PushButton{ PushButton{
Text: "Edit Animal", Text: "Edit Animal",
OnClicked: func() {}, OnClicked: func() {},
+18
View File
@@ -70,13 +70,31 @@ type (
} }
) )
func CreatePegboardsList(mw *MyMainWindow) []string {
pegboards := make([]string, 0)
for _, brand := range mw.pallette.Brands.Brand {
if brand.BrandName == mw.pallette_combo.Text() {
for _, serie := range brand.Series.Serie {
if serie.SerieName == mw.serie_combo.Text() {
for _, pegboard := range serie.Pegboards.Pegboard {
pegboards = append(pegboards, pegboard.Type)
}
}
}
}
}
return pegboards
}
func CreateSeriesList(mw *MyMainWindow) []string { func CreateSeriesList(mw *MyMainWindow) []string {
series := make([]string, 0) series := make([]string, 0)
for _, brand := range mw.pallette.Brands.Brand { for _, brand := range mw.pallette.Brands.Brand {
if brand.BrandName == mw.pallette_combo.Text() {
for _, serie := range brand.Series.Serie { for _, serie := range brand.Series.Serie {
series = append(series, serie.SerieName) series = append(series, serie.SerieName)
} }
} }
}
return series return series
} }
+12 -1
View File
@@ -6,14 +6,22 @@
<brand> <brand>
<brandname>Hama</brandname> <brandname>Hama</brandname>
<series> <series>
<serie>
<seriename>Mini</seriename>
</serie>
<serie> <serie>
<seriename>Midi</seriename> <seriename>Midi</seriename>
<pegboards> <pegboards>
<pegboard> <pegboard>
<type>Big</type> <type>Big 29x29</type>
<width>29</width> <width>29</width>
<height>29</height> <height>29</height>
</pegboard> </pegboard>
<pegboard>
<type>Small 14x14</type>
<width>14</width>
<height>14</height>
</pegboard>
</pegboards> </pegboards>
<beads> <beads>
<color colorIndex="01"> <color colorIndex="01">
@@ -967,6 +975,9 @@
</color> </color>
</beads> </beads>
</serie> </serie>
<serie>
<seriename>Maxi</seriename>
</serie>
</series> </series>
</brand> </brand>
<brand> <brand>