gtkmm  2.24.4
Public Member Functions | Static Public Member Functions | Protected Attributes | Related Functions | List of all members
Gtk::IconInfo Class Reference

Public Member Functions

 IconInfo ()
 
 IconInfo (GtkIconInfo* gobject, bool make_a_copy=true)
 
 IconInfo (const IconInfo& other)
 
IconInfooperator= (const IconInfo& other)
 
 IconInfo (IconInfo&& other) noexcept
 
IconInfooperator= (IconInfo&& other) noexcept
 
 ~IconInfo () noexcept
 
void swap (IconInfo& other) noexcept
 
GtkIconInfo* gobj ()
 Provides access to the underlying C instance. More...
 
const GtkIconInfo* gobj () const
 Provides access to the underlying C instance. More...
 
GtkIconInfo* gobj_copy () const
 Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs. More...
 
 IconInfo (const Glib::RefPtr< IconTheme >& icon_theme, const Glib::RefPtr< Gdk::Pixbuf >& pixbuf)
 
 operator bool ()
 
 operator bool () const
 Tests whether the IconInfo is valid. More...
 
int get_base_size () const
 Gets the base size for the icon. More...
 
Glib::ustring get_filename () const
 Gets the filename for the icon. More...
 
Glib::RefPtr< Gdk::Pixbufget_builtin_pixbuf ()
 Gets the built-in image for this icon, if any. More...
 
Glib::RefPtr< const Gdk::Pixbufget_builtin_pixbuf () const
 Gets the built-in image for this icon, if any. More...
 
Glib::RefPtr< Gdk::Pixbufload_icon () const
 Renders an icon previously looked up in an icon theme using Gtk::IconTheme::lookup_icon(); the size will be based on the size passed to Gtk::IconTheme::lookup_icon(). More...
 
void set_raw_coordinates (bool raw_coordinates=true)
 Sets whether the coordinates returned by get_embedded_rect() and get_attach_points() should be returned in their original form as specified in the icon theme, instead of scaled appropriately for the pixbuf returned by load_icon(). More...
 
bool get_embedded_rect (Gdk::Rectangle& rectangle) const
 Gets the coordinates of a rectangle within the icon that can be used for display of information such as a preview of the contents of a text file. More...
 
bool get_attach_points (Glib::ArrayHandle< Gdk::Point >& points) const
 
Glib::ustring get_display_name () const
 Gets the display name for an icon. More...
 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 

Protected Attributes

GtkIconInfo* gobject_
 

Related Functions

(Note that these are not member functions.)

void swap (IconInfo& lhs, IconInfo& rhs) noexcept
 
Gtk::IconInfo wrap (GtkIconInfo* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...
 

Constructor & Destructor Documentation

Gtk::IconInfo::IconInfo ( )
Gtk::IconInfo::IconInfo ( GtkIconInfo *  gobject,
bool  make_a_copy = true 
)
explicit
Gtk::IconInfo::IconInfo ( const IconInfo other)
Gtk::IconInfo::IconInfo ( IconInfo&&  other)
noexcept
Gtk::IconInfo::~IconInfo ( )
noexcept
Gtk::IconInfo::IconInfo ( const Glib::RefPtr< IconTheme >&  icon_theme,
const Glib::RefPtr< Gdk::Pixbuf >&  pixbuf 
)

Member Function Documentation

bool Gtk::IconInfo::get_attach_points ( Glib::ArrayHandle< Gdk::Point >&  points) const
int Gtk::IconInfo::get_base_size ( ) const

Gets the base size for the icon.

The base size is a size for the icon that was specified by the icon theme creator. This may be different than the actual size of image; an example of this is small emblem icons that can be attached to a larger icon. These icons will be given the same base size as the larger icons to which they are attached.

Since gtkmm 2.4:
Returns
The base size, or 0, if no base size is known for the icon.
Glib::RefPtr<Gdk::Pixbuf> Gtk::IconInfo::get_builtin_pixbuf ( )

Gets the built-in image for this icon, if any.

To allow GTK+ to use built in icon images, you must pass the Gtk::ICON_LOOKUP_USE_BUILTIN to Gtk::IconTheme::lookup_icon().

Since gtkmm 2.4:
Returns
The built-in image pixbuf, or nullptr. The returned image must not be modified.
Glib::RefPtr<const Gdk::Pixbuf> Gtk::IconInfo::get_builtin_pixbuf ( ) const

Gets the built-in image for this icon, if any.

To allow GTK+ to use built in icon images, you must pass the Gtk::ICON_LOOKUP_USE_BUILTIN to Gtk::IconTheme::lookup_icon().

Since gtkmm 2.4:
Returns
The built-in image pixbuf, or nullptr. The returned image must not be modified.
Glib::ustring Gtk::IconInfo::get_display_name ( ) const

Gets the display name for an icon.

A display name is a string to be used in place of the icon name in a user visible context like a list of icons.

Since gtkmm 2.4:
Returns
The display name for the icon or nullptr, if the icon doesn't have a specified display name. This value is owned icon_info and must not be modified or free.
bool Gtk::IconInfo::get_embedded_rect ( Gdk::Rectangle rectangle) const

Gets the coordinates of a rectangle within the icon that can be used for display of information such as a preview of the contents of a text file.

See set_raw_coordinates() for further information about the coordinate system.

Since gtkmm 2.4:
Parameters
rectangleGdk::Rectangle in which to store embedded rectangle coordinates; coordinates are only stored when this function returns true.
Returns
true if the icon has an embedded rectangle.
Glib::ustring Gtk::IconInfo::get_filename ( ) const

Gets the filename for the icon.

If the Gtk::ICON_LOOKUP_USE_BUILTIN flag was passed to Gtk::IconTheme::lookup_icon(), there may be no filename if a builtin icon is returned; in this case, you should use get_builtin_pixbuf().

Since gtkmm 2.4:
Returns
The filename for the icon, or nullptr if get_builtin_pixbuf() should be used instead.
static GType Gtk::IconInfo::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

GtkIconInfo* Gtk::IconInfo::gobj ( )
inline

Provides access to the underlying C instance.

const GtkIconInfo* Gtk::IconInfo::gobj ( ) const
inline

Provides access to the underlying C instance.

GtkIconInfo* Gtk::IconInfo::gobj_copy ( ) const

Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.

Glib::RefPtr<Gdk::Pixbuf> Gtk::IconInfo::load_icon ( ) const

Renders an icon previously looked up in an icon theme using Gtk::IconTheme::lookup_icon(); the size will be based on the size passed to Gtk::IconTheme::lookup_icon().

Note that the resulting pixbuf may not be exactly this size; an icon theme may have icons that differ slightly from their nominal sizes, and in addition GTK+ will avoid scaling icons that it considers sufficiently close to the requested size or for which the source image would have to be scaled up too far. (This maintains sharpness.). This behaviour can be changed by passing the Gtk::ICON_LOOKUP_FORCE_SIZE flag when obtaining the Gtk::IconInfo. If this flag has been specified, the pixbuf returned by this function will be scaled to the exact size.

Since gtkmm 2.4:
Returns
The rendered icon; this may be a newly created icon or a new reference to an internal icon, so you must not modify the icon. Use Glib::object_unref() to release your reference to the icon.
Gtk::IconInfo::operator bool ( )
Deprecated:
Use the const version.
Gtk::IconInfo::operator bool ( ) const

Tests whether the IconInfo is valid.

IconInfo& Gtk::IconInfo::operator= ( const IconInfo other)
IconInfo& Gtk::IconInfo::operator= ( IconInfo&&  other)
noexcept
void Gtk::IconInfo::set_raw_coordinates ( bool  raw_coordinates = true)

Sets whether the coordinates returned by get_embedded_rect() and get_attach_points() should be returned in their original form as specified in the icon theme, instead of scaled appropriately for the pixbuf returned by load_icon().

Raw coordinates are somewhat strange; they are specified to be with respect to the unscaled pixmap for PNG and XPM icons, but for SVG icons, they are in a 1000x1000 coordinate space that is scaled to the final size of the icon. You can determine if the icon is an SVG icon by using get_filename(), and seeing if it is non-nullptr and ends in '.svg'.

This function is provided primarily to allow compatibility wrappers for older API's, and is not expected to be useful for applications.

Since gtkmm 2.4:
Parameters
raw_coordinatesWhether the coordinates of embedded rectangles and attached points should be returned in their original (unscaled) form.
void Gtk::IconInfo::swap ( IconInfo other)
noexcept

Friends And Related Function Documentation

void swap ( IconInfo lhs,
IconInfo rhs 
)
related
Parameters
lhsThe left-hand side
rhsThe right-hand side
Gtk::IconInfo wrap ( GtkIconInfo *  object,
bool  take_copy = false 
)
related

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

Parameters
objectThe C instance.
take_copyFalse 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.

Member Data Documentation

GtkIconInfo* Gtk::IconInfo::gobject_
protected

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