Fixed not setting text drawer max size properly

This commit is contained in:
Sasha Koshka 2023-01-12 18:00:36 -05:00
parent 5eb3067a34
commit 1f3e925433
2 changed files with 9 additions and 2 deletions

View File

@ -261,6 +261,7 @@ func (drawer *TextDrawer) recalculate () {
if drawer.wrap {
drawer.layoutBounds.Max.X = drawer.width
println("aaa")
} else {
drawer.layoutBounds.Max.X = horizontalExtent
}

View File

@ -36,8 +36,10 @@ func (element *Label) Handle (event tomo.Event) {
element.core.AllocateCanvas (
resizeEvent.Width,
resizeEvent.Height)
element.drawer.SetMaxWidth (resizeEvent.Width)
element.drawer.SetMaxHeight(resizeEvent.Height)
if element.wrap {
element.drawer.SetMaxWidth (resizeEvent.Width)
element.drawer.SetMaxHeight(resizeEvent.Height)
}
element.draw()
}
return
@ -63,6 +65,10 @@ func (element *Label) SetText (text string) {
// have a minimum size that fits its text.
func (element *Label) SetWrap (wrap bool) {
if wrap == element.wrap { return }
if !wrap {
element.drawer.SetMaxWidth(0)
element.drawer.SetMaxHeight(0)
}
element.wrap = wrap
element.updateMinimumSize()