createmdem function

This commit is contained in:
jorenchik
2024-09-07 17:49:27 +03:00
parent f2e3055bcd
commit 9b6cb723f8

View File

@@ -11,6 +11,45 @@ import (
var workingPath string = "/home/jorenchik/Code/mdemory/memorybase"
// type Mdem struct {
// frontText string;
// widget *widgets.QWidget;
// }
func CreateMdem(frontText string) *widgets.QWidget {
// frontText := "What is the capital of Latvia?"
// DefineMdem
wMdem := widgets.NewQWidget(nil, 0)
wMdem.SetMinimumHeight(60)
hMdem := widgets.NewQHBoxLayout()
wMdem.SetLayout(hMdem)
// DefineId
id := fmt.Sprintf("mdem_%d", 1)
wMdem.SetObjectName(id)
wMdem.SetStyleSheet(fmt.Sprintf(`
QWidget#%s {
border: 1px solid gray;
background: white;
}
`, id))
// AddContent
mdemText := widgets.NewQLabel2(frontText, nil, 0)
hMdem.AddWidget(mdemText, 0, 0)
hMdem.AddStretch(1)
hideButton := widgets.NewQToolButton(nil)
showAnswer := widgets.NewQToolButton(nil)
hideButton.SetText("Hide")
showAnswer.SetText("Show")
hMdem.AddWidget(hideButton, 0, 0)
hMdem.AddWidget(showAnswer, 0, 0)
return wMdem
}
func main() {
// InitApp
app := widgets.NewQApplication(len(os.Args), os.Args)
@@ -96,41 +135,29 @@ func main() {
mdemScroll := widgets.NewQScrollArea(nil)
hMdemScroll := widgets.NewQVBoxLayout()
mdemScroll.SetLayout(hMdemScroll)
var mdem widgets.QWidget_ITF
{ // CreateMdem
// DefineMdem
mdem := widgets.NewQWidget(nil, 0)
mdem.SetMinimumHeight(60)
hMdem := widgets.NewQHBoxLayout()
hMdem.AddStretch(1)
mdem.SetLayout(hMdem)
// DefineId
id := fmt.Sprintf("mdem_%d", 1)
mdem.SetObjectName(id)
mdem.SetStyleSheet(fmt.Sprintf(`
QWidget#%s {
border: 1px solid gray;
background: white;
}
`, id))
// AddContent
mdemText := widgets.NewQLabel2(
"What is the capital of Latvia?", nil, 0,
)
hMdem.AddWidget(mdemText, 0, 0)
hideButton := widgets.NewQToolButton(nil)
showAnswer := widgets.NewQToolButton(nil)
hideButton.SetText("Hide")
showAnswer.SetText("Show")
hMdem.AddWidget(hideButton, 0, 0)
hMdem.AddWidget(showAnswer, 0, 0)
}
hMdemScroll.AddWidget(mdem, 0, 0)
hMdemScroll.AddStretch(1)
rightLayout.AddWidget(mdemScroll, 1, 0)
// CreateMdems
var mdems []*widgets.QWidget
mdems = append(
mdems, CreateMdem("What is the capital of Latvia?"),
)
mdems = append(
mdems, CreateMdem("What is the capital of Estonia?"),
)
mdems = append(
mdems, CreateMdem("What is the capital of Lithuania?"),
)
mdems = append(
mdems, CreateMdem("What is the capital of Croatia?"),
)
mdems = append(
mdems, CreateMdem("What is the capital of Chechia?"),
)
for i := 0; i < len(mdems); i++ {
hMdemScroll.AddWidget(mdems[i], 0, 0)
rightLayout.AddWidget(mdemScroll, 1, 0)
}
hMdemScroll.AddStretch(1)
// Pagination
pagination := widgets.NewQWidget(nil, 0)