Implemented preferredSize() for Label on Windows. Seems to work...

This commit is contained in:
Pietro Gagliardi 2014-08-01 19:32:19 -04:00
parent e2b8fb81d6
commit ed38a2cac7
1 changed files with 6 additions and 0 deletions

View File

@ -144,6 +144,7 @@ func finishNewLabel(text string, standalone bool) *label {
controlbase: c,
standalone: standalone,
}
l.fpreferredSize = l.labelpreferredSize
l.supercommitResize = l.fcommitResize
l.fcommitResize = l.labelcommitResize
return l
@ -167,10 +168,15 @@ func (l *label) SetText(text string) {
const (
// via http://msdn.microsoft.com/en-us/library/windows/desktop/dn742486.aspx#sizingandspacing
labelHeight = 8
labelYOffset = 3
// TODO the label is offset slightly by default...
)
func (l *label) labelpreferredSize(d *sizing) (width, height int) {
return int(l.textlen), fromdlgunitsY(labelHeight, d)
}
func (l *label) labelcommitResize(c *allocation, d *sizing) {
if !l.standalone {
yoff := fromdlgunitsY(labelYOffset, d)