forked from AuroraMiddleware/gtk
css: Remove -gtk-icon-effect
-gtk-icon-filter replaces this now.
This commit is contained in:
parent
5b33127692
commit
45fbc25e5e
@ -930,93 +930,6 @@ _gtk_css_fill_mode_value_get (const GtkCssValue *value)
|
||||
return value->value;
|
||||
}
|
||||
|
||||
/* GtkCssIconEffect */
|
||||
|
||||
static const GtkCssValueClass GTK_CSS_VALUE_ICON_EFFECT = {
|
||||
gtk_css_value_enum_free,
|
||||
gtk_css_value_enum_compute,
|
||||
gtk_css_value_enum_equal,
|
||||
gtk_css_value_enum_transition,
|
||||
gtk_css_value_enum_print
|
||||
};
|
||||
|
||||
static GtkCssValue image_effect_values[] = {
|
||||
{ >K_CSS_VALUE_ICON_EFFECT, 1, GTK_CSS_ICON_EFFECT_NONE, "none" },
|
||||
{ >K_CSS_VALUE_ICON_EFFECT, 1, GTK_CSS_ICON_EFFECT_HIGHLIGHT, "highlight" },
|
||||
{ >K_CSS_VALUE_ICON_EFFECT, 1, GTK_CSS_ICON_EFFECT_DIM, "dim" }
|
||||
};
|
||||
|
||||
GtkCssValue *
|
||||
_gtk_css_icon_effect_value_new (GtkCssIconEffect image_effect)
|
||||
{
|
||||
guint i;
|
||||
|
||||
for (i = 0; i < G_N_ELEMENTS (image_effect_values); i++)
|
||||
{
|
||||
if (image_effect_values[i].value == image_effect)
|
||||
return _gtk_css_value_ref (&image_effect_values[i]);
|
||||
}
|
||||
|
||||
g_return_val_if_reached (NULL);
|
||||
}
|
||||
|
||||
GtkCssValue *
|
||||
_gtk_css_icon_effect_value_try_parse (GtkCssParser *parser)
|
||||
{
|
||||
guint i;
|
||||
|
||||
g_return_val_if_fail (parser != NULL, NULL);
|
||||
|
||||
for (i = 0; i < G_N_ELEMENTS (image_effect_values); i++)
|
||||
{
|
||||
if (_gtk_css_parser_try (parser, image_effect_values[i].name, TRUE))
|
||||
return _gtk_css_value_ref (&image_effect_values[i]);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
GtkCssIconEffect
|
||||
_gtk_css_icon_effect_value_get (const GtkCssValue *value)
|
||||
{
|
||||
g_return_val_if_fail (value->class == >K_CSS_VALUE_ICON_EFFECT, GTK_CSS_ICON_EFFECT_NONE);
|
||||
|
||||
return value->value;
|
||||
}
|
||||
|
||||
void
|
||||
gtk_css_icon_effect_apply (GtkCssIconEffect icon_effect,
|
||||
cairo_surface_t *surface)
|
||||
{
|
||||
cairo_t *cr;
|
||||
|
||||
switch (icon_effect)
|
||||
{
|
||||
case GTK_CSS_ICON_EFFECT_DIM:
|
||||
cr = cairo_create (surface);
|
||||
cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
|
||||
cairo_set_source_rgba (cr, 0, 0, 0, 0); /* transparent */
|
||||
cairo_paint_with_alpha (cr, 0.5);
|
||||
cairo_destroy (cr);
|
||||
break;
|
||||
|
||||
case GTK_CSS_ICON_EFFECT_HIGHLIGHT:
|
||||
cr = cairo_create (surface);
|
||||
cairo_set_source_rgb (cr, 0.1, 0.1, 0.1);
|
||||
cairo_set_operator (cr, CAIRO_OPERATOR_COLOR_DODGE);
|
||||
/* DANGER: We mask with ourself - that works for images, but... */
|
||||
cairo_mask_surface (cr, surface, 0, 0);
|
||||
cairo_destroy (cr);
|
||||
break;
|
||||
|
||||
default:
|
||||
g_warn_if_reached ();
|
||||
/* fall through */
|
||||
case GTK_CSS_ICON_EFFECT_NONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* GtkCssIconStyle */
|
||||
|
||||
static const GtkCssValueClass GTK_CSS_VALUE_ICON_STYLE = {
|
||||
|
@ -81,12 +81,6 @@ GtkCssValue * _gtk_css_fill_mode_value_new (GtkCssFillMode fill_m
|
||||
GtkCssValue * _gtk_css_fill_mode_value_try_parse (GtkCssParser *parser);
|
||||
GtkCssFillMode _gtk_css_fill_mode_value_get (const GtkCssValue *value);
|
||||
|
||||
GtkCssValue * _gtk_css_icon_effect_value_new (GtkCssIconEffect image_effect);
|
||||
GtkCssValue * _gtk_css_icon_effect_value_try_parse (GtkCssParser *parser);
|
||||
GtkCssIconEffect _gtk_css_icon_effect_value_get (const GtkCssValue *value);
|
||||
void gtk_css_icon_effect_apply (GtkCssIconEffect icon_effect,
|
||||
cairo_surface_t *surface);
|
||||
|
||||
GtkCssValue * _gtk_css_icon_style_value_new (GtkCssIconStyle icon_style);
|
||||
GtkCssValue * _gtk_css_icon_style_value_try_parse (GtkCssParser *parser);
|
||||
GtkCssIconStyle _gtk_css_icon_style_value_get (const GtkCssValue *value);
|
||||
|
@ -411,18 +411,6 @@ parse_css_fill_mode (GtkCssStyleProperty *property,
|
||||
return _gtk_css_array_value_parse (parser, parse_one_css_fill_mode);
|
||||
}
|
||||
|
||||
static GtkCssValue *
|
||||
image_effect_parse (GtkCssStyleProperty *property,
|
||||
GtkCssParser *parser)
|
||||
{
|
||||
GtkCssValue *value = _gtk_css_icon_effect_value_try_parse (parser);
|
||||
|
||||
if (value == NULL)
|
||||
_gtk_css_parser_error (parser, "unknown value for property");
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
static GtkCssValue *
|
||||
icon_palette_parse (GtkCssStyleProperty *property,
|
||||
GtkCssParser *parser)
|
||||
@ -1606,15 +1594,6 @@ _gtk_css_style_property_init_properties (void)
|
||||
opacity_parse,
|
||||
opacity_query,
|
||||
_gtk_css_number_value_new (1, GTK_CSS_NUMBER));
|
||||
gtk_css_style_property_register ("-gtk-icon-effect",
|
||||
GTK_CSS_PROPERTY_ICON_EFFECT,
|
||||
G_TYPE_NONE,
|
||||
GTK_STYLE_PROPERTY_INHERIT,
|
||||
GTK_CSS_AFFECTS_ICON,
|
||||
image_effect_parse,
|
||||
NULL,
|
||||
_gtk_css_icon_effect_value_new (GTK_CSS_ICON_EFFECT_NONE));
|
||||
_gtk_style_property_add_alias ("-gtk-icon-effect", "-gtk-image-effect");
|
||||
|
||||
/* Private property holding the binding sets */
|
||||
gtk_css_style_property_register ("-gtk-key-bindings",
|
||||
|
@ -225,7 +225,7 @@ enum { /*< skip >*/
|
||||
GTK_CSS_PROPERTY_ANIMATION_DELAY,
|
||||
GTK_CSS_PROPERTY_ANIMATION_FILL_MODE,
|
||||
GTK_CSS_PROPERTY_OPACITY,
|
||||
GTK_CSS_PROPERTY_ICON_EFFECT,
|
||||
GTK_CSS_PROPERTY_FILTER,
|
||||
GTK_CSS_PROPERTY_GTK_KEY_BINDINGS,
|
||||
GTK_CSS_PROPERTY_CARET_COLOR,
|
||||
GTK_CSS_PROPERTY_SECONDARY_CARET_COLOR,
|
||||
@ -281,12 +281,6 @@ typedef enum /*< skip >*/ {
|
||||
GTK_CSS_FILL_BOTH
|
||||
} GtkCssFillMode;
|
||||
|
||||
typedef enum /*< skip >*/ {
|
||||
GTK_CSS_ICON_EFFECT_NONE,
|
||||
GTK_CSS_ICON_EFFECT_HIGHLIGHT,
|
||||
GTK_CSS_ICON_EFFECT_DIM
|
||||
} GtkCssIconEffect;
|
||||
|
||||
typedef enum /*< skip >*/ {
|
||||
GTK_CSS_ICON_STYLE_REQUESTED,
|
||||
GTK_CSS_ICON_STYLE_REGULAR,
|
||||
|
@ -379,7 +379,6 @@ ensure_surface_from_pixbuf (GtkIconHelper *self,
|
||||
gint width, height;
|
||||
cairo_surface_t *surface;
|
||||
GdkPixbuf *pixbuf;
|
||||
GtkCssIconEffect icon_effect;
|
||||
|
||||
if (get_pixbuf_size (self,
|
||||
scale,
|
||||
@ -393,8 +392,6 @@ ensure_surface_from_pixbuf (GtkIconHelper *self,
|
||||
pixbuf = g_object_ref (orig_pixbuf);
|
||||
|
||||
surface = gdk_cairo_surface_create_from_pixbuf (pixbuf, scale, gtk_widget_get_window (gtk_css_gadget_get_owner (GTK_CSS_GADGET (self))));
|
||||
icon_effect = _gtk_css_icon_effect_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_ICON_EFFECT));
|
||||
gtk_css_icon_effect_apply (icon_effect, surface);
|
||||
g_object_unref (pixbuf);
|
||||
|
||||
return surface;
|
||||
@ -469,14 +466,7 @@ ensure_surface_for_gicon (GtkIconHelper *self,
|
||||
|
||||
surface = gdk_cairo_surface_create_from_pixbuf (destination, scale, gtk_widget_get_window (gtk_css_gadget_get_owner (GTK_CSS_GADGET (self))));
|
||||
|
||||
if (!symbolic)
|
||||
{
|
||||
GtkCssIconEffect icon_effect;
|
||||
|
||||
icon_effect = _gtk_css_icon_effect_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_ICON_EFFECT));
|
||||
gtk_css_icon_effect_apply (icon_effect, surface);
|
||||
}
|
||||
else
|
||||
if (symbolic)
|
||||
{
|
||||
priv->rendered_surface_is_symbolic = TRUE;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user