#include "script-engraver.hh"
#include "script.hh"
-#include "staff-side.hh"
+#include "side-position-interface.hh"
#include "musical-request.hh"
#include "stem.hh"
#include "staff-symbol.hh"
continue;
}
Script *p =new Script;
- Staff_sidify stafy (p);
+ Side_position_interface stafy (p);
+
list = gh_cdr (list);
p->set_elt_property ("molecule",
- SCM_CAR(list));
+ gh_car (list));
- list = SCM_CDR(list);
- bool follow_staff = gh_scm2bool (SCM_CAR(list));
- list = SCM_CDR(list);
- int relative_stem_dir = gh_scm2int (SCM_CAR(list));
- list = SCM_CDR(list);
- int force_dir =gh_scm2int (SCM_CAR(list));
- list = SCM_CDR(list);
- SCM priority = SCM_CAR(list);
+ list = gh_cdr(list);
+ bool follow_staff = gh_scm2bool (gh_car (list));
+ list = gh_cdr(list);
+ int relative_stem_dir = gh_scm2int (gh_car (list));
+ list = gh_cdr(list);
+ int force_dir =gh_scm2int (gh_car (list));
+ list = gh_cdr(list);
+ SCM priority = gh_car (list);
if (relative_stem_dir)
stafy.set_direction (l->get_direction ());
SCM axisprop = get_property ("scriptHorizontal",0);
- if (gh_boolean_p (axisprop) && gh_scm2bool (axisprop))
+ bool xaxis = gh_boolean_p (axisprop) && gh_scm2bool (axisprop);
+ if (xaxis)
stafy.set_axis (X_AXIS);
else
stafy.set_axis (Y_AXIS);
- if (follow_staff && !gh_boolean_p (axisprop) && gh_scm2bool (axisprop))
- p->set_elt_property ("no-staff-support", SCM_BOOL_T);
+ if (!follow_staff && ! xaxis)
+ p->set_elt_property ("staff-support", SCM_BOOL_T);
+ if (!xaxis && follow_staff)
+ stafy.set_quantised (Y_AXIS);
+
p->set_elt_property ("script-priority", priority);
script_p_arr_.push (p);
{
for (int i=0; i < script_p_arr_.size(); i++)
{
- Staff_sidify stafy (script_p_arr_[i]);
+ Side_position_interface stafy (script_p_arr_[i]);
stafy.elt_l_->set_elt_property ("direction-source", s->self_scm_);
stafy.add_support (s);
}
{
for (int i=0; i < script_p_arr_.size(); i++)
{
- Staff_sidify stafy(script_p_arr_[i]);
+ Side_position_interface stafy(script_p_arr_[i]);
if (!stafy.elt_l_->parent_l (X_AXIS))
{