-typedef struct _GtkImage GtkImage;
-typedef struct _GtkImageClass GtkImageClass;
-
-typedef struct _GtkImagePixmapData GtkImagePixmapData;
-typedef struct _GtkImageImageData GtkImageImageData;
-typedef struct _GtkImagePixbufData GtkImagePixbufData;
-typedef struct _GtkImageStockData GtkImageStockData;
-typedef struct _GtkImageIconSetData GtkImageIconSetData;
-typedef struct _GtkImageAnimationData GtkImageAnimationData;
-typedef struct _GtkImageIconNameData GtkImageIconNameData;
-
-struct _GtkImagePixmapData
-{
- GdkPixmap *pixmap;
-};
-
-struct _GtkImageImageData
-{
- GdkImage *image;
-};
-
-struct _GtkImagePixbufData
-{
- GdkPixbuf *pixbuf;
-};
-
-struct _GtkImageStockData
-{
- gchar *stock_id;
-};
-
-struct _GtkImageIconSetData
-{
- GtkIconSet *icon_set;
-};
-
-struct _GtkImageAnimationData
-{
- GdkPixbufAnimation *anim;
- GdkPixbufAnimationIter *iter;
- guint frame_timeout;
-};
-
-struct _GtkImageIconNameData
-{
- gchar *icon_name;
- GdkPixbuf *pixbuf;
- guint theme_change_id;
-};
-
+typedef struct _GtkImage GtkImage;
+typedef struct _GtkImagePrivate GtkImagePrivate;
+typedef struct _GtkImageClass GtkImageClass;
+
+/**
+ * GtkImageType:
+ * @GTK_IMAGE_EMPTY: there is no image displayed by the widget
+ * @GTK_IMAGE_PIXBUF: the widget contains a #GdkPixbuf
+ * @GTK_IMAGE_STOCK: the widget contains a stock icon name (see
+ * <xref linkend="gtk3-Stock-Items"/>)
+ * @GTK_IMAGE_ICON_SET: the widget contains a #GtkIconSet
+ * @GTK_IMAGE_ANIMATION: the widget contains a #GdkPixbufAnimation
+ * @GTK_IMAGE_ICON_NAME: the widget contains a named icon.
+ * This image type was added in GTK+ 2.6
+ * @GTK_IMAGE_GICON: the widget contains a #GIcon.
+ * This image type was added in GTK+ 2.14
+ *
+ * Describes the image data representation used by a #GtkImage. If you
+ * want to get the image from the widget, you can only get the
+ * currently-stored representation. e.g. if the
+ * gtk_image_get_storage_type() returns #GTK_IMAGE_PIXBUF, then you can
+ * call gtk_image_get_pixbuf() but not gtk_image_get_stock(). For empty
+ * images, you can request any storage type (call any of the "get"
+ * functions), but they will all return %NULL values.
+ */