[gtk+/wip/otte/icon-size: 1/20] css: Add -gtk-icon-size



commit 356451c26c9e804c11b8eeb7c242e552906ae855
Author: Benjamin Otte <otte redhat com>
Date:   Fri Jan 20 01:50:50 2017 +0100

    css: Add -gtk-icon-size
    
    This will replace GtkIconSize in future patches.

 gtk/gtkcssstylepropertyimpl.c |   18 ++++++++++++++++++
 gtk/gtkcsstypesprivate.h      |    1 +
 2 files changed, 19 insertions(+), 0 deletions(-)
---
diff --git a/gtk/gtkcssstylepropertyimpl.c b/gtk/gtkcssstylepropertyimpl.c
index dcf9361..3da0a3d 100644
--- a/gtk/gtkcssstylepropertyimpl.c
+++ b/gtk/gtkcssstylepropertyimpl.c
@@ -412,6 +412,16 @@ parse_css_fill_mode (GtkCssStyleProperty *property,
 }
 
 static GtkCssValue *
+icon_size_parse (GtkCssStyleProperty *property,
+                GtkCssParser        *parser)
+{
+  return _gtk_css_number_value_parse (parser, 
+                                      GTK_CSS_PARSE_LENGTH
+                                      | GTK_CSS_PARSE_PERCENT
+                                      | GTK_CSS_POSITIVE_ONLY);
+}
+
+static GtkCssValue *
 icon_palette_parse (GtkCssStyleProperty *property,
                    GtkCssParser        *parser)
 {
@@ -1420,6 +1430,14 @@ _gtk_css_style_property_init_properties (void)
                                           css_image_value_parse_with_builtin,
                                           NULL,
                                           _gtk_css_image_value_new (gtk_css_image_builtin_new ()));
+  gtk_css_style_property_register        ("-gtk-icon-size",
+                                          GTK_CSS_PROPERTY_ICON_SIZE,
+                                          G_TYPE_NONE,
+                                          GTK_STYLE_PROPERTY_INHERIT | GTK_STYLE_PROPERTY_ANIMATED,
+                                          GTK_CSS_AFFECTS_ICON | GTK_CSS_AFFECTS_SYMBOLIC_ICON,
+                                          icon_size_parse,
+                                          NULL,
+                                          _gtk_css_number_value_new (16, GTK_CSS_PX));
   gtk_css_style_property_register        ("-gtk-icon-shadow",
                                           GTK_CSS_PROPERTY_ICON_SHADOW,
                                           G_TYPE_NONE,
diff --git a/gtk/gtkcsstypesprivate.h b/gtk/gtkcsstypesprivate.h
index 27d9af8..6a95a56 100644
--- a/gtk/gtkcsstypesprivate.h
+++ b/gtk/gtkcsstypesprivate.h
@@ -209,6 +209,7 @@ enum { /*< skip >*/
   GTK_CSS_PROPERTY_BORDER_IMAGE_SLICE,
   GTK_CSS_PROPERTY_BORDER_IMAGE_WIDTH,
   GTK_CSS_PROPERTY_ICON_SOURCE,
+  GTK_CSS_PROPERTY_ICON_SIZE,
   GTK_CSS_PROPERTY_ICON_SHADOW,
   GTK_CSS_PROPERTY_ICON_STYLE,
   GTK_CSS_PROPERTY_ICON_TRANSFORM,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]