Example #1
0
func setActionImage(action *walk.Action, image interface{}) (err error) {
	var img walk.Image

	switch image := image.(type) {
	case nil:
		return nil

	case *walk.Bitmap:
		img = image

	case string:
		if img, err = imageFromFile(image); err != nil {
			return
		}
	}

	if bmp, ok := img.(*walk.Bitmap); ok {
		return action.SetImage(bmp)
	}

	return errors.New("invalid type for Image")
}