func setActionImage(action *walk.Action, image interface{}) (err error) { var img *walk.Bitmap switch image := image.(type) { case nil: return nil case *walk.Bitmap: img = image case string: if img, err = walk.NewBitmapFromFile(image); err != nil { return } default: return errors.New("invalid type for Image") } return action.SetImage(img) }
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") }
func (a Action) initAction(wa *walk.Action) (*walk.Action, error) { text := a.Text if text == "" { text = "-" } if err := wa.SetText(text); err != nil { return nil, err } if err := wa.SetImage(a.Image); err != nil { return nil, err } if a.OnTriggered != nil { wa.Triggered().Attach(a.OnTriggered) } if a.AssignTo != nil { *a.AssignTo = wa } return wa, nil }