- double_percent_ = new Item (get_property ("DoublePercentRepeat"));
- announce_grob(double_percent_, repeat_->self_scm());
-
- /*
- forbid breaks on a % line. Should forbid all breaks, really.
- */
-
- top_engraver()->forbid_breaks (); // guh. Use properties!
+ Item *double_percent = make_item ("DoublePercentRepeat", percent_event_->self_scm ());
+
+ SCM count = percent_event_->get_property ("repeat-count");
+ if (count != SCM_EOL && to_boolean (get_property ("countPercentRepeats"))
+ && check_count_visibility (count))
+ {
+ Item *double_percent_counter = make_item ("DoublePercentRepeatCounter",
+ percent_event_->self_scm ());
+
+ SCM text = scm_number_to_string (count,
+ scm_from_int (10));
+ double_percent_counter->set_property ("text", text);
+
+ Side_position_interface::add_support (double_percent_counter,
+ double_percent);
+ double_percent_counter->set_parent (double_percent, Y_AXIS);
+ double_percent_counter->set_parent (double_percent, X_AXIS);
+ }
+
+ /* forbid breaks on a % line. Should forbid all breaks, really. */
+ context ()->get_score_context ()->set_property ("forbidBreak", SCM_BOOL_T);
+
+ /* No more processing needed. */
+ repeat_sign_type_ = UNKNOWN;