+ current_cresc_req_ = accepted_spanreqs_drul_[START];
+ cresc_p_ = new Spanner (get_property ("basicCrescendoProperties"));
+ Crescendo::set_interface (cresc_p_);
+ cresc_p_->set_elt_property
+ ("grow-direction",
+ gh_int2scm ((accepted_spanreqs_drul_[START]->span_type_str_ == "crescendo")
+ ? BIGGER : SMALLER));
+
+ SCM s = get_property ((accepted_spanreqs_drul_[START]->span_type_str_ + "Text").ch_C());
+ if (gh_string_p (s))
+ {
+ cresc_p_->set_elt_property ("start-text", s);
+ daddy_trans_l_->set_property (accepted_spanreqs_drul_[START]->span_type_str_
+ + "Text", SCM_UNDEFINED);
+ }
+
+ s = get_property ((accepted_spanreqs_drul_[START]->span_type_str_ + "Spanner").ch_C());
+
+
+ /*
+ TODO: Use symbols.
+ */
+ if (gh_string_p (s)) //&& ly_scm2string (s) != "hairpin")
+ {
+ cresc_p_->set_elt_property ("spanner", s);
+ daddy_trans_l_->set_property (accepted_spanreqs_drul_[START]->span_type_str_
+ + "Spanner", SCM_UNDEFINED);
+ }
+
+ Score_element *cc = unsmob_element (get_property ("currentMusicalColumn"));
+ cresc_p_->set_bound (LEFT, cc);
+
+
+ /*
+ We know how wide the text is, if we can be sure that the
+ text already has relevant pointers into the paperdef,
+ and it has its font-size property set.
+
+ Since font-size may be set by a context higher up, we
+ can not be sure of the size.
+
+
+ We shouldn't try to do this stuff here, the Item should
+ do it when the score is finished. We could maybe
+ set a callback to have the Item do the alignment if
+ it is not a special symbol, like Crescendo.
+ */
+
+
+ if (text_p_)
+ {
+ index_set_cell (cresc_p_->get_elt_property ("dynamic-drul"),
+ LEFT, text_p_->self_scm ());
+ if (finished_cresc_p_)
+ index_set_cell (finished_cresc_p_->get_elt_property ("dynamic-drul"),
+ RIGHT, text_p_->self_scm ());
+ }
+
+ Axis_group_interface::add_element (line_spanner_, cresc_p_);
+ cresc_p_->set_elt_property ("self-alignment-Y", gh_int2scm (0));
+ cresc_p_->add_offset_callback
+ (Side_position::aligned_on_self, Y_AXIS);
+ announce_element (cresc_p_, accepted_spanreqs_drul_[START]);