GtkThemingEngine: Add gtk_theming_engine_lookup_color()

It could also be handy for theme engines...
This commit is contained in:
Carlos Garnacho 2010-12-01 19:19:26 +01:00
parent 066f35bf28
commit afeac82fbd
3 changed files with 29 additions and 0 deletions

View File

@ -5507,6 +5507,7 @@ gtk_theming_engine_get_style_valist
gtk_theming_engine_get_valist
gtk_theming_engine_has_class
gtk_theming_engine_has_region
gtk_theming_engine_lookup_color
gtk_theming_engine_state_is_running
gtk_theming_engine_load
gtk_theming_engine_register_property

View File

@ -542,6 +542,31 @@ gtk_theming_engine_get_style (GtkThemingEngine *engine,
va_end (args);
}
/**
* gtk_theming_engine_lookup_color:
* @engine: a #GtkThemingEngine
* @color_name: color name to lookup
* @color: (out) (transfer full): Return location for the looked up color
*
* Looks up and resolves a color name in the current style's color map.
* The returned color must be freed with gdk_rgba_free().
*
* Returns: %TRUE if @color_name was found and resolved, %FALSE otherwise
**/
gboolean
gtk_theming_engine_lookup_color (GtkThemingEngine *engine,
const gchar *color_name,
GdkRGBA **color)
{
GtkThemingEnginePrivate *priv;
g_return_val_if_fail (GTK_IS_THEMING_ENGINE (engine), FALSE);
g_return_val_if_fail (color_name != NULL, FALSE);
priv = engine->priv;
return gtk_style_context_lookup_color (priv->context, color_name, color);
}
/**
* gtk_theming_engine_get_state:
* @engine: a #GtkThemingEngine

View File

@ -194,6 +194,9 @@ void gtk_theming_engine_get_style_valist (GtkThemingEngine *engine,
void gtk_theming_engine_get_style (GtkThemingEngine *engine,
...);
gboolean gtk_theming_engine_lookup_color (GtkThemingEngine *engine,
const gchar *color_name,
GdkRGBA **color);
G_CONST_RETURN GtkWidgetPath * gtk_theming_engine_get_path (GtkThemingEngine *engine);