code: func (b *Button) Draw(screen tcell.Screen) {
  	// Draw the box.
  	borderColor := b.borderColor
  	backgroundColor := b.backgroundColor
  	if b.focus.HasFocus() {
  		b.backgroundColor = b.backgroundColorActivated
  		b.borderColor = b.labelColorActivated
  		defer func() {
  			b.borderColor = borderColor
  		}()
  	}
  	b.Box.Draw(screen)
  	b.backgroundColor = backgroundColor
  
  	// Draw label.
  	x, y, width, height := b.GetInnerRect()
  	if width > 0 && height > 0 {
  		y = y + height/2
  		labelColor := b.labelColor
  		if b.focus.HasFocus() {
  			labelColor = b.labelColorActivated
  		}
  		Print(screen, b.label, x, y, width, AlignCenter, labelColor)
  	}
  }
docs: // Draw draws this primitive onto the screen.