get_stemdir_req(int d)
{
Group_feature_req * gfreq_p = new Group_feature_req;
- gfreq_p->stemdir_i_ =d;
+ gfreq_p->type_str_ = "vdir";
+ gfreq_p->value_str_ = String(d);
return gfreq_p;
}
-
+Request*
+get_hshift_req(int i)
+{
+ Group_feature_req * gfreq_p = new Group_feature_req;
+ gfreq_p->type_str_ = "hshift";
+ gfreq_p->value_str_ = String(i);
+ return gfreq_p;
+}
+
Request*
get_grouping_req(Array<int> i_arr)
{
Stem_beam_register::Stem_beam_register()
{
post_move_processing();
+
current_grouping = 0;
beam_p_ = 0;
- set_feature(Features::dir(0));
+ default_dir_i_ =0;
start_req_l_ = 0;
}
}
void
-Stem_beam_register::set_feature(Features i)
+Stem_beam_register::set_feature(Feature i)
{
- default_dir_i_ = i.direction_i_;
+ if (i.type_ == "vdir")
+ default_dir_i_ = i.value_;
}
IMPLEMENT_STATIC_NAME(Stem_beam_register);
{
for (int i=0; i < voice_regs_l_.size(); i++) {
if (voice_regs_l_[i]->voice_l_ == r_l->voice_l())
- goto gotcha;
+ goto gotcha; // yeah, yeah, I know
}
return false;
gotcha:
Command_req* c_l = r_l->command();
if (c_l&& c_l->groupfeature()) {
- set_feature(Features::dir(c_l->groupfeature()->stemdir_i_));
+ Feature f;
+ f.type_ = c_l->groupfeature()->type_str_;
+ f.value_ = c_l->groupfeature()->value_str_;
+ set_feature(f);
return true;
}
return Register_group_register::try_request(r_l);