source file of the GNU LilyPond music typesetter
- (c) 1996--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1996--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include <math.h>
#include <libc-extension.hh>
broken_intos_[i]->break_index_ = i;
}
+int
+Spanner::get_break_index ()const
+{
+ return break_index_;
+}
+
void
Spanner::set_my_columns ()
{
break_index_ = 0;
spanned_drul_[LEFT]=0;
spanned_drul_[RIGHT]=0;
+
Group_interface::add_thing (this, ly_symbol2scm ("interfaces"), ly_symbol2scm ("spanner-interface"));
-
-
}
Spanner::Spanner (Spanner const &s)
// Relevant only if left span point is first column in line
if (sc != NULL &&
- sc->break_status_dir () == RIGHT)
+ sc->break_status_dir () == RIGHT)
{
/*
r.item_l_drul_[LEFT] = sp->get_bound (LEFT);
r.item_l_drul_[RIGHT] = sp->get_bound (RIGHT);
r.distance_ =
- gh_scm2double (me->get_grob_property ("minimum-length"));
+ robust_scm2double (me->get_grob_property ("minimum-length"), 0);
r.add_to_cols ();
return SCM_UNSPECIFIED;
}
+/*
+ Return I such that SP == SP->ORIGINAL_->BROKEN_INTOS_[I].
+ */
+int
+broken_spanner_index (Spanner * sp)
+{
+ Spanner * parent = dynamic_cast<Spanner*> (sp->original_);
+ return parent->broken_intos_.find_index (sp);
+}
+
+
Spanner*
unsmob_spanner (SCM s )
{