pango: move an utility function from gtklabel
authorPaolo Borelli <pborelli@gnome.org>
Sun, 5 Jul 2015 20:48:16 +0000 (22:48 +0200)
committerPaolo Borelli <pborelli@gnome.org>
Sun, 5 Jul 2015 22:04:05 +0000 (00:04 +0200)
This will be used both by gtklabel and gtkentry

gtk/gtklabel.c
gtk/gtkpango.c
gtk/gtkpango.h

index def986faebcc4ed5e622a07c8f5b8caa45cfd2fe..88fc28424c4a877dc6f07380ec2908567150ed3b 100644 (file)
@@ -2145,21 +2145,6 @@ gtk_label_set_use_underline_internal (GtkLabel *label,
     }
 }
 
-static gboolean
-my_pango_attr_list_merge_filter (PangoAttribute *attribute,
-                                 gpointer        list)
-{
-  pango_attr_list_change (list, pango_attribute_copy (attribute));
-  return FALSE;
-}
-
-static void
-my_pango_attr_list_merge (PangoAttrList *into,
-                          PangoAttrList *from)
-{
-  pango_attr_list_filter (from, my_pango_attr_list_merge_filter, into);
-}
-
 /* Calculates text, attrs and mnemonic_keyval from
  * label, use_underline and use_markup
  */
@@ -3480,7 +3465,7 @@ gtk_label_update_layout_attributes (GtkLabel *label)
   if (priv->markup_attrs)
     {
       if (attrs)
-        my_pango_attr_list_merge (attrs, priv->markup_attrs);
+        _gtk_pango_attr_list_merge (attrs, priv->markup_attrs);
       else
         attrs = pango_attr_list_ref (priv->markup_attrs);
     }
@@ -3488,7 +3473,7 @@ gtk_label_update_layout_attributes (GtkLabel *label)
   if (priv->attrs)
     {
       if (attrs)
-        my_pango_attr_list_merge (attrs, priv->attrs);
+        _gtk_pango_attr_list_merge (attrs, priv->attrs);
       else
         attrs = pango_attr_list_ref (priv->attrs);
     }
index 416bf6e25001b8fad0436b054689e43f25501f48..261fac7c3d060b6aae536754b725307a5153309b 100644 (file)
@@ -1289,3 +1289,25 @@ _gtk_pango_get_text_at (PangoLayout     *layout,
 
   return g_utf8_substring (text, start, end);
 }
+
+static gboolean
+attr_list_merge_filter (PangoAttribute *attribute,
+                        gpointer        list)
+{
+  pango_attr_list_change (list, pango_attribute_copy (attribute));
+  return FALSE;
+}
+
+/*
+ * _gtk_pango_attr_list_merge:
+ * @into: a #PangoAttrList where attributes are merged.
+ * @from: a #PangoAttrList with the attributes to merge
+ *
+ * Merges attributes from @from into @into.
+ */
+void
+_gtk_pango_attr_list_merge (PangoAttrList *into,
+                            PangoAttrList *from)
+{
+  pango_attr_list_filter (from, attr_list_merge_filter, into);
+}
index ad323547e535fd7de1908bf9cddbfeaa2b394996..f5383372a58687be480dea58fcfa3b870fdd422b 100644 (file)
@@ -79,6 +79,9 @@ gchar *_gtk_pango_get_text_after  (PangoLayout     *layout,
                                    gint            *start_offset,
                                    gint            *end_offset);
 
+void _gtk_pango_attr_list_merge   (PangoAttrList *into,
+                                   PangoAttrList *from);
+
 G_END_DECLS
 
 #endif /* __GTK_PANGO_H__ */