representing the break direction. Do not modify SRC.
*/
SCM
-Grob::handle_broken_smobs (SCM src, SCM criterion)
+Grob::handle_broken_grobs (SCM src, SCM criterion)
{
again:
Grob *sc = unsmob_grob (src);
/*
UGH! breaks on circular lists.
*/
- SCM newcar = handle_broken_smobs (oldcar, criterion);
+ SCM newcar = handle_broken_grobs (oldcar, criterion);
SCM oldcdr = gh_cdr (src);
if (newcar == SCM_UNDEFINED
/*
This is tail-recursion, ie.
- return handle_broken_smobs (cdr, criterion);
+ return handle_broken_grobs (cdr, criterion);
We don't want to rely on the compiler to do this. Without
tail-recursion, this easily crashes with a stack overflow. */
goto again;
}
- SCM newcdr = handle_broken_smobs (oldcdr, criterion);
+ SCM newcdr = handle_broken_grobs (oldcdr, criterion);
return gh_cons (newcar, newcdr);
}
else
Grob * sc = s->broken_into_l_arr_[i];
Line_of_score * l = sc->line_l ();
sc->mutable_property_alist_ =
- handle_broken_smobs (mutable_property_alist_,
+ handle_broken_grobs (mutable_property_alist_,
l ? l->self_scm () : SCM_UNDEFINED);
}
}
if (line && common_refpoint (line, X_AXIS) && common_refpoint (line, Y_AXIS))
{
mutable_property_alist_
- = handle_broken_smobs (mutable_property_alist_,
+ = handle_broken_grobs (mutable_property_alist_,
line ? line->self_scm () : SCM_UNDEFINED);
}
else if (dynamic_cast <Line_of_score*> (this))
{
- mutable_property_alist_ = handle_broken_smobs (mutable_property_alist_,
+ mutable_property_alist_ = handle_broken_grobs (mutable_property_alist_,
SCM_UNDEFINED);
}
else
#funcptr# is the function to call to update this element.
*/
void calculate_dependencies (int final, int busy, SCM funcname);
- static SCM handle_broken_smobs (SCM, SCM criterion);
+ static SCM handle_broken_grobs(SCM, SCM criterion);
virtual void do_break_processing ();
virtual Grob *find_broken_piece (Line_of_score*) const;
if (original_l_)
{
mutable_property_alist_
- = handle_broken_smobs (original_l_->mutable_property_alist_,
+ = handle_broken_grobs(original_l_->mutable_property_alist_,
gh_int2scm (break_status_dir ()));
}
gh_eval_str ((char *)init_scheme_code_string.ch_C());
int p=0;
- const char *arg ;
- while ((arg = oparser_p_static->get_next_arg ()) || p == 0)
+ const char *arg = oparser_p_static->get_next_arg ();
+
+ if (!arg)
+ usage ();
+ else
+ do
{
- String infile;
-
- if (arg)
- infile = arg;
- else
- infile = "-";
-
- // What/when was this supposed to do?
- // It looks like it reset the outname_str_global for every new
- // file, but only if user didn't specify a outname? Huh?
- // if (outname_str_global == "")
+ String infile (arg);
+
+ /* What/when was this supposed to do?
+ It looks like it reset the outname_str_global for every new
+ file, but only if user didn't specify a outname? Huh?
+
+ // if (outname_str_global == "")
+
+ */
{
Midi_def::reset_score_count ();
Paper_def::reset_score_count ();
output_name_global = save_output_name_global;
p++;
- }
+
+ oparser_p_static->get_next_arg ();
+ } while ((arg = oparser_p_static->get_next_arg ()));
delete oparser_p_static;
+ oparser_p_static = 0;
exit (exit_status_global);
}
Grob *me = unsmob_grob (smob);
Spanner *sp = dynamic_cast<Spanner*> (me);
- Font_metric *musfont = Font_interface::get_default_font (me);
-
Molecule r = Percent_repeat_item_interface::x_percent (me, 1, 0.75, 1.6);
// ugh copy & paste.
protected:
virtual void finalize ();
virtual bool try_music (Music*);
- virtual void acknowledge_grob (Grob_info);
virtual void stop_translation_timestep ();
virtual void start_translation_timestep ();
virtual void process_music ();
}
-void
-Percent_repeat_engraver::acknowledge_grob (Grob_info info)
-{
-
-}
void
if (now_mom () > Moment (0))
s = get_property ("stz");
-
+
+
+ // TODO
if (gh_string_p (s))
+
/*
if (i.elem_l_->has_interface (symbol ("lyric-syllable-interface")))
}
}
/* Ugh. Should eat other requests, script etc. too. */
- else if (Tie_req *t = dynamic_cast<Tie_req*> (m))
+ else if (dynamic_cast<Tie_req*> (m))
return true;
}
return false;