- if (scm_is_string (gl))
- return ;
-
- for (SCM s = me->get_property ("elements");
- !scm_is_string (gl) && scm_is_pair (s); s = scm_cdr (s))
- {
- gl = unsmob_grob (scm_car (s))
- ->get_property ("glyph");
- }
+
+MAKE_SCHEME_CALLBACK(Span_bar, calc_glyph_name, 1);
+SCM
+Span_bar::calc_glyph_name (SCM smob)
+{
+ Grob *me = unsmob_grob (smob);
+ extract_grob_set (me, "elements", elements);
+ SCM gl = SCM_EOL;
+ for (vsize i = elements.size ();
+ i-- && !scm_is_string (gl);)
+ gl = elements[i]->get_property ("glyph-name");