GtkStyleProvider: Add gtk_style_provider_get_icon_factory().

With this, style providers have a way to override default icon theme.
This commit is contained in:
Carlos Garnacho 2010-06-27 19:35:08 +02:00
parent be5d4adf6b
commit 318e0f28ee
2 changed files with 23 additions and 0 deletions

View File

@ -83,6 +83,22 @@ gtk_style_provider_get_style_property (GtkStyleProvider *provider,
return iface->get_style_property (provider, widget_path, property_name, value);
}
GtkIconFactory *
gtk_style_provider_get_icon_factory (GtkStyleProvider *provider,
GtkWidgetPath *path)
{
GtkStyleProviderIface *iface;
g_return_val_if_fail (GTK_IS_STYLE_PROVIDER (provider), NULL);
g_return_val_if_fail (path != NULL, NULL);
iface = GTK_STYLE_PROVIDER_GET_IFACE (provider);
if (!iface->get_icon_factory)
return NULL;
return iface->get_icon_factory (provider, path);
}
#define __GTK_STYLE_PROVIDER_C__
#include "gtkaliasdef.c"

View File

@ -22,6 +22,7 @@
#include <glib-object.h>
#include "gtkwidgetpath.h"
#include "gtkiconfactory.h"
#include "gtkstyleset.h"
#include "gtkenums.h"
@ -51,6 +52,9 @@ struct GtkStyleProviderIface
GtkWidgetPath *path,
const gchar *property_name,
GValue *value);
GtkIconFactory * (* get_icon_factory) (GtkStyleProvider *provider,
GtkWidgetPath *path);
};
GType gtk_style_provider_get_type (void) G_GNUC_CONST;
@ -63,6 +67,9 @@ gboolean gtk_style_provider_get_style_property (GtkStyleProvider *provider,
const gchar *property_name,
GValue *value);
GtkIconFactory * gtk_style_provider_get_icon_factory (GtkStyleProvider *provider,
GtkWidgetPath *path);
G_END_DECLS
#endif /* __GTK_STYLE_PROVIDER_H__ */