gtkmm: Gtk::Image Class Reference

gtkmm 3.4.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Related Functions
Gtk::Image Class Reference
Widgets

A widget displaying an image. More...

Inheritance diagram for Gtk::Image:
[legend]

List of all members.

## Public Member Functions
virtual | ~Image ()
GtkImage* | gobj ()
| Provides access to the underlying C GtkObject.
const GtkImage* | gobj () const
| Provides access to the underlying C GtkObject.
| Image ()
| Image (const std::string& file)
| Creates an Image widget displaying the file filename.
| Image (const Glib::RefPtr< Gdk::Pixbuf >& pixbuf)
| Creates a new Image widget displaying pixbuf.
| Image (const Gtk::StockID& stock_id, IconSize size)
| Creates am Image displaying a stock icon.
| Image (const Glib::RefPtr< IconSet >& icon_set, IconSize size)
| Image (const Glib::RefPtr< Gdk::PixbufAnimation >& animation)
void | set (const std::string& filename)
| See the Image::Image(const std::string& file) constructor for details.
void | set_from_resource (const std::string& resource_path)
| See new_from_resource() for details.
void | set (const Glib::RefPtr< Gdk::Pixbuf >& pixbuf)
| See the Image::Image(const Glib::RefPtr<Gdk::Pixbuf>& pixbuf) constructor for details.
void | set (const Gtk::StockID& stock_id, IconSize size)
| See the Image::Image(const Gtk::StockID& stock_id, IconSize size) constructor for details.
void | set (const Glib::RefPtr< IconSet >& icon_set, IconSize size)
| See new_from_icon_set() for details.
void | set (const Glib::RefPtr< Gdk::PixbufAnimation >& animation)
| Causes the Gtk::Image to display the given animation (or display nothing, if you set the animation to `0`).
void | set (const Glib::RefPtr< const Gio::Icon >& icon, IconSize size)
| See new_from_gicon() for details.
void | set_from_icon_name (const Glib::ustring& icon_name, IconSize size)
| Causes the Image to display an icon from the current icon theme.
void | clear ()
| Resets the image to be empty.
ImageType | get_storage_type () const
| Gets the type of representation being used by the Gtk::Image to store image data.
Glib::RefPtr< Gdk::Pixbuf > | get_pixbuf ()
| Gets the Gdk::Pixbuf being displayed by the Gtk::Image.
Glib::RefPtr< const Gdk::Pixbuf > | get_pixbuf () const
| Gets the Gdk::Pixbuf being displayed by the Gtk::Image.
void | get_stock (Gtk::StockID& stock_id, IconSize&size) const
void | get_icon_set (Glib::RefPtr< IconSet >& icon_set, IconSize&size) const
Glib::RefPtr < Gdk::PixbufAnimation > | get_animation ()
| Gets the Gdk::PixbufAnimation being displayed by the Gtk::Image.
Glib::RefPtr< const Gdk::PixbufAnimation > | get_animation () const
| Gets the Gdk::PixbufAnimation being displayed by the Gtk::Image.
Glib::RefPtr< Gio::Icon > | get_gicon (Gtk::IconSize& icon_size)
| Gets the Gio::Icon and size being displayed by the Gtk::Image.
Glib::RefPtr< const Gio::Icon > | get_gicon (Gtk::IconSize& icon_size) const
| Gets the Gio::Icon and size being displayed by the Gtk::Image.
Glib::ustring | get_icon_name () const
Glib::ustring | get_icon_name (IconSize&size)
int | get_pixel_size () const
| Gets the pixel size used for named icons.
void | set_pixel_size (int pixel_size)
| Sets the pixel size to use for named icons.
Glib::PropertyProxy < Glib::RefPtr< Gdk::Pixbuf > > | property_pixbuf ()
| A GdkPixbuf to display.
Glib::PropertyProxy_ReadOnly < Glib::RefPtr< Gdk::Pixbuf > > | property_pixbuf () const
| A GdkPixbuf to display.
Glib::PropertyProxy < Glib::ustring > | property_file ()
| Filename to load and display.
Glib::PropertyProxy_ReadOnly < Glib::ustring > | property_file () const
| Filename to load and display.
Glib::PropertyProxy < Glib::ustring > | property_stock ()
| Stock ID for a stock image to display.
Glib::PropertyProxy_ReadOnly < Glib::ustring > | property_stock () const
| Stock ID for a stock image to display.
Glib::PropertyProxy < Glib::RefPtr< IconSet > > | property_icon_set ()
| Icon set to display.
Glib::PropertyProxy_ReadOnly < Glib::RefPtr< IconSet > > | property_icon_set () const
| Icon set to display.
Glib::PropertyProxy< int > | property_icon_size ()
| Symbolic size to use for stock icon, icon set or named icon.
Glib::PropertyProxy_ReadOnly< int > | property_icon_size () const
| Symbolic size to use for stock icon, icon set or named icon.
Glib::PropertyProxy< int > | property_pixel_size ()
| Pixel size to use for named icon.
Glib::PropertyProxy_ReadOnly< int > | property_pixel_size () const
| Pixel size to use for named icon.
Glib::PropertyProxy < Glib::RefPtr < Gdk::PixbufAnimation > > | property_pixbuf_animation ()
| GdkPixbufAnimation to display.
Glib::PropertyProxy_ReadOnly < Glib::RefPtr < Gdk::PixbufAnimation > > | property_pixbuf_animation () const
| GdkPixbufAnimation to display.
Glib::PropertyProxy < Glib::ustring > | property_icon_name ()
| The name of the icon from the icon theme.
Glib::PropertyProxy_ReadOnly < Glib::ustring > | property_icon_name () const
| The name of the icon from the icon theme.
Glib::PropertyProxy_ReadOnly < ImageType > | property_storage_type () const
| The representation being used for image data.
Glib::PropertyProxy < Glib::RefPtr< Gio::Icon > > | property_gicon ()
| The GIcon being displayed.
Glib::PropertyProxy_ReadOnly < Glib::RefPtr< Gio::Icon > > | property_gicon () const
| The GIcon being displayed.
Glib::PropertyProxy< bool > | property_use_fallback ()
| Whether to use icon names fallback.
Glib::PropertyProxy_ReadOnly < bool > | property_use_fallback () const
| Whether to use icon names fallback.
## Related Functions
(Note that these are not member functions.)
Gtk::Image* | wrap (GtkImage* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

A widget displaying an image.

The Gtk::Image widget displays an image. Various kinds of object can be displayed as an image; most typically, you would load a Gdk::Pixbuf ("pixel buffer") from a file, and then display that.

Gtk::Image is a subclass of Gtk::Misc, which implies that you can align it (center, left, right) and add padding to it, using Gtk::Misc methods.

Gtk::Image is a "no window" widget (has no Gdk::Window of its own), so by default does not receive events. If you want to receive events on the image, such as button clicks, place the image inside a Gtk::EventBox, then connect to the event signals on the event box.

The Image widget looks like this:

## Constructor & Destructor Documentation

virtual Gtk::Image::~Image | ( |  | ) | `[virtual]`

Gtk::Image::Image | ( |  | ) |

Gtk::Image::Image | ( | const std::string & | file | ) | `[explicit]`

Creates an Image widget displaying the file filename.

If the file isn't found or can't be loaded, the resulting Gtk::Image will display a "broken image" icon.

If the file contains an animation, the image will contain an animation.

If you need to detect failures to load the file, use Gdk::Pixbuf::create_from_file() to load the file yourself, then create the GtkImage from the pixbuf. (Or for animations, use Gdk::PixbufAnimation::create_from_file()).

The storage type (get_storage_type()) of the returned image is not defined. It will be whatever is appropriate for displaying the file.

Gtk::Image::Image | ( | const Glib::RefPtr< Gdk::Pixbuf >& | pixbuf | ) | `[explicit]`

Creates a new Image widget displaying pixbuf.

Note that this just creates an GtkImage from the pixbuf. The Gtk::Image created will not react to state changes. Should you want that, you should use new_from_icon_set().

Gtk::Image::Image | ( | const Gtk::StockID& | stock_id,
|  | IconSize | size
| ) |  |

Creates am Image displaying a stock icon.

Sample stock icon identifiers are Gtk::Stock::OPEN, Gtk::Stock::EXIT. Sample stock sizes are Gtk::ICON_SIZE_MENU, Gtk::ICON_SIZE_SMALL_TOOLBAR. If the stock icon name isn't known, a "broken image" icon will be displayed instead. You can register your own stock icon names - see Gtk::IconFactory::add().

Parameters:

  stock_id | A stock icon.
  size | A stock icon size.

Gtk::Image::Image | ( | const Glib::RefPtr< IconSet >& | icon_set,
|  | IconSize | size
| ) |  |

Gtk::Image::Image | ( | const Glib::RefPtr< Gdk::PixbufAnimation >& | animation | ) | `[explicit]`

## Member Function Documentation

void Gtk::Image::clear | ( |  | ) |

Resets the image to be empty.

Since gtkmm 2.8:

Glib::RefPtr<Gdk::PixbufAnimation> Gtk::Image::get_animation | ( |  | ) |

Gets the Gdk::PixbufAnimation being displayed by the Gtk::Image.

The storage type of the image must be Gtk::IMAGE_EMPTY or Gtk::IMAGE_ANIMATION (see get_storage_type()). The caller of this function does not own a reference to the returned animation.

Returns:
  The displayed animation, or `0` if the image is empty.

Glib::RefPtr<const Gdk::PixbufAnimation> Gtk::Image::get_animation | ( |  | ) | const

Gets the Gdk::PixbufAnimation being displayed by the Gtk::Image.

The storage type of the image must be Gtk::IMAGE_EMPTY or Gtk::IMAGE_ANIMATION (see get_storage_type()). The caller of this function does not own a reference to the returned animation.

Returns:
  The displayed animation, or `0` if the image is empty.

Glib::RefPtr<Gio::Icon> Gtk::Image::get_gicon | ( | Gtk::IconSize& | icon_size | ) |

Gets the Gio::Icon and size being displayed by the Gtk::Image.

The storage type of the image must be IMAGE_EMPTY or IMAGE_GICON (see get_storage_type()).

Parameters:

  icon_size | A place to store an icon size.

Since gtkmm 2.14:

Glib::RefPtr<const Gio::Icon> Gtk::Image::get_gicon | ( | Gtk::IconSize& | icon_size | ) | const

Gets the Gio::Icon and size being displayed by the Gtk::Image.

The storage type of the image must be IMAGE_EMPTY or IMAGE_GICON (see get_storage_type()).

Parameters:

  icon_size | A place to store an icon size.

Since gtkmm 2.14:

Glib::ustring Gtk::Image::get_icon_name | ( |  | ) | const

Glib::ustring Gtk::Image::get_icon_name | ( | IconSize& | size | ) |

void Gtk::Image::get_icon_set | ( | Glib::RefPtr< IconSet >& | icon_set,
|  | IconSize& | size
| ) |  | const

Glib::RefPtr<Gdk::Pixbuf> Gtk::Image::get_pixbuf | ( |  | ) |

Gets the Gdk::Pixbuf being displayed by the Gtk::Image.

The storage type of the image must be Gtk::IMAGE_EMPTY or Gtk::IMAGE_PIXBUF (see get_storage_type()). The caller of this function does not own a reference to the returned pixbuf.

Returns:
  The displayed pixbuf, or `0` if the image is empty.

Glib::RefPtr<const Gdk::Pixbuf> Gtk::Image::get_pixbuf | ( |  | ) | const

Gets the Gdk::Pixbuf being displayed by the Gtk::Image.

The storage type of the image must be Gtk::IMAGE_EMPTY or Gtk::IMAGE_PIXBUF (see get_storage_type()). The caller of this function does not own a reference to the returned pixbuf.

Returns:
  The displayed pixbuf, or `0` if the image is empty.

int Gtk::Image::get_pixel_size | ( |  | ) | const

Gets the pixel size used for named icons.

Since gtkmm 2.6:

Returns:
  The pixel size used for named icons.

void Gtk::Image::get_stock | ( | Gtk::StockID& | stock_id,
|  | IconSize& | size
| ) |  | const

ImageType Gtk::Image::get_storage_type | ( |  | ) | const

Gets the type of representation being used by the Gtk::Image to store image data.

If the Gtk::Image has no image data, the return value will be Gtk::IMAGE_EMPTY.

Returns:
  Image representation being used.

GtkImage* Gtk::Image::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Misc.

const GtkImage* Gtk::Image::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GtkObject.

Reimplemented from Gtk::Misc.

Glib::PropertyProxy< Glib::ustring > Gtk::Image::property_file | ( |  | ) |

Filename to load and display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Image::property_file | ( |  | ) | const

Filename to load and display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::RefPtr<Gio::Icon> > Gtk::Image::property_gicon | ( |  | ) |

The GIcon being displayed.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gio::Icon> > Gtk::Image::property_gicon | ( |  | ) | const

The GIcon being displayed.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::ustring > Gtk::Image::property_icon_name | ( |  | ) |

The name of the icon from the icon theme.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Image::property_icon_name | ( |  | ) | const

The name of the icon from the icon theme.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::RefPtr<IconSet> > Gtk::Image::property_icon_set | ( |  | ) |

Icon set to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::RefPtr<IconSet> > Gtk::Image::property_icon_set | ( |  | ) | const

Icon set to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< int > Gtk::Image::property_icon_size | ( |  | ) |

Symbolic size to use for stock icon, icon set or named icon.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< int > Gtk::Image::property_icon_size | ( |  | ) | const

Symbolic size to use for stock icon, icon set or named icon.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::RefPtr<Gdk::Pixbuf> > Gtk::Image::property_pixbuf | ( |  | ) |

A GdkPixbuf to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Pixbuf> > Gtk::Image::property_pixbuf | ( |  | ) | const

A GdkPixbuf to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::RefPtr<Gdk::PixbufAnimation> > Gtk::Image::property_pixbuf_animation | ( |  | ) |

GdkPixbufAnimation to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::PixbufAnimation> > Gtk::Image::property_pixbuf_animation | ( |  | ) | const

GdkPixbufAnimation to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< int > Gtk::Image::property_pixel_size | ( |  | ) |

Pixel size to use for named icon.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< int > Gtk::Image::property_pixel_size | ( |  | ) | const

Pixel size to use for named icon.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< Glib::ustring > Gtk::Image::property_stock | ( |  | ) |

Stock ID for a stock image to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Image::property_stock | ( |  | ) | const

Stock ID for a stock image to display.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< ImageType > Gtk::Image::property_storage_type | ( |  | ) | const

The representation being used for image data.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy< bool > Gtk::Image::property_use_fallback | ( |  | ) |

Whether to use icon names fallback.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Glib::PropertyProxy_ReadOnly< bool > Gtk::Image::property_use_fallback | ( |  | ) | const

Whether to use icon names fallback.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
  A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

void Gtk::Image::set | ( | const std::string & | filename | ) |

See the Image::Image(const std::string& file) constructor for details.

Parameters:

  filename | A filename.

void Gtk::Image::set | ( | const Glib::RefPtr< Gdk::Pixbuf >& | pixbuf | ) |

See the Image::Image(const Glib::RefPtr<Gdk::Pixbuf>& pixbuf) constructor for details.

Parameters:

  pixbuf | A Gdk::Pixbuf.

void Gtk::Image::set | ( | const Gtk::StockID& | stock_id,
|  | IconSize | size
| ) |  |

See the Image::Image(const Gtk::StockID& stock_id, IconSize size) constructor for details.

Parameters:

  stock_id | A stock icon name.
  size | A stock icon size.

void Gtk::Image::set | ( | const Glib::RefPtr< IconSet >& | icon_set,
|  | IconSize | size
| ) |  |

See new_from_icon_set() for details.

Parameters:

  icon_set | A Gtk::IconSet.
  size | A stock icon size.

void Gtk::Image::set | ( | const Glib::RefPtr< Gdk::PixbufAnimation >& | animation | ) |

Causes the Gtk::Image to display the given animation (or display nothing, if you set the animation to `0`).

Parameters:

  animation | The Gdk::PixbufAnimation.

void Gtk::Image::set | ( | const Glib::RefPtr< const Gio::Icon > & | icon,
|  | IconSize | size
| ) |  |

See new_from_gicon() for details.

Since gtkmm 2.14:

Parameters:

  icon | An icon.
  size | An icon size.

void Gtk::Image::set_from_icon_name | ( | const Glib::ustring & | icon_name,
|  | IconSize | size
| ) |  |

Causes the Image to display an icon from the current icon theme.

If the icon name isn't known, a "broken image" icon will be displayed instead. If the current icon theme is changed, the icon will be updated appropriately.

Since gtkmm 2.6:

Parameters:

  icon_name | An icon name.
  size | A stock icon size.

void Gtk::Image::set_from_resource | ( | const std::string & | resource_path | ) |

See new_from_resource() for details.

Parameters:

  resource_path | A resource path or `0`.

void Gtk::Image::set_pixel_size | ( | int | pixel_size | ) |

Sets the pixel size to use for named icons.

If the pixel size is set to a value != -1, it is used instead of the icon size set by set_from_icon_name().

Since gtkmm 2.6:

Parameters:

  pixel_size | The new pixel size.

## Friends And Related Function Documentation

Gtk::Image* wrap | ( | GtkImage * | object,
|  | bool | take_copy = `false`
| ) |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- gtkmm/image.h