code: func ButtonNewFromIconName(iconName string, size IconSize) (*Button, error) {
  	cstr := C.CString(iconName)
  	defer C.free(unsafe.Pointer(cstr))
  	c := C.gtk_button_new_from_icon_name((*C.gchar)(cstr),
  		C.GtkIconSize(size))
  	if c == nil {
  		return nil, nilPtrErr
  	}
  	return wrapButton(glib.Take(unsafe.Pointer(c))), nil
  }
docs: /*
   * GtkButton
   */
  // ButtonNewFromIconName is a wrapper around gtk_button_new_from_icon_name().