(define-object ImageMenuItem
  (in-module "Gtk")
  (parent "GtkMenuItem")
  (c-name "GtkImageMenuItem")
  (gtype-id "GTK_TYPE_IMAGE_MENU_ITEM")
)

(define-function gtk_image_menu_item_new
  (is-constructor-of "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_new")
  (caller-owns-return #t)
  (return-type "GtkWidget*")
)

(define-function gtk_image_menu_item_new_with_label
  (is-constructor-of "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_new_with_label")
  (caller-owns-return #t)
  (return-type "GtkWidget*")
  (parameters
    '("const-gchar*" "label")
  )
)

(define-function gtk_image_menu_item_new_with_mnemonic
  (is-constructor-of "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_new_with_mnemonic")
  (caller-owns-return #t)
  (return-type "GtkWidget*")
  (parameters
    '("const-gchar*" "label")
  )
)

(define-function gtk_image_menu_item_new_from_stock
  (is-constructor-of "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_new_from_stock")
  (caller-owns-return #t)
  (return-type "GtkWidget*")
  (parameters
    '("const-gchar*" "stock_id")
    '("GtkAccelGroup*" "accel_group" (null-ok))
  )
)

(define-method set_image
  (of-object "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_set_image")
  (return-type "none")
  (parameters
    '("GtkWidget*" "image" (null-ok))
  )
)

(define-method get_image
  (of-object "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_get_image")
  (return-type "GtkWidget*")
)

(define-method set_always_show_image
  (of-object "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_set_always_show_image")
  (return-type "none")
  (parameters
    '("gboolean" "always_show")
  )
)

(define-method set_accel_group
  (of-object "GtkImageMenuItem")
  (c-name "gtk_image_menu_item_set_accel_group")
  (return-type "none")
  (parameters
    '("GtkAccelGroup*" "accel_group")
  )
)
