Skip to content

multi_staff_example: implement MultiStaffRenderer for score rendering #7

Closed

Description

@alessonqueirozdev-hub

Context

In example/lib/examples/multi_staff_example.dart:221 there is a TODO:

// TODO: Render score using MultiStaffRenderer
// For now, show staff groups info

Task

Implement MultiStaffRenderer (or equivalent) to render a full Score (with multiple StaffGroups and Staffs) on a single canvas, replacing the current fallback that only shows metadata.

Acceptance criteria

  • MultiStaffRenderer renders all staff groups in the score vertically
  • Braces/brackets for staff groups are drawn correctly
  • The multi_staff_example.dart demo uses the renderer to display an actual score

Notes

Activity

  1. added a commit that references this issue on Jun 19, 2026
  2. alessonqueirozdev-hub commented on Aug 31, 2026

    @alessonqueirozdev-hub
    OwnerAuthor

    Fixed in 2.8.0. What this asked for exists under a different name: ScoreView renders a whole Score — every StaffGroup stacked vertically, each aligned on the shared horizontal onset grid (ADR-002), with its brace or bracket and its system-spanning barlines actually drawn.

    What was missing was anywhere to see it. multi_staff_example.dart had a // TODO: Render score using MultiStaffRenderer and printed the group metadata as text instead — a placeholder that reads as a feature, since printing "Bracket Type: brace" next to a score with no brace in it looks like output. It now renders the score with ScoreView and keeps the metadata card underneath as a description of the score above it rather than a stand-in for one.

    There is also a gallery page for the case that actually needs a Score rather than a single StaffGroup: Ensemble Scores, with a four-staff bracketed choir above a two-staff piano brace, different rhythms per group, on one grid.

    Worth knowing if you look at that alignment: it was measurably wrong until 2.8.0. The shared grid took the widest ABSOLUTE X at each onset, so a dense passage on one staff stole space from the others — an SATB choir's four quarters spaced 61 / 61 / 60 px alone and collapsed to 118 / 28 / 35 beside a piano triplet. It is built from per-onset STEPS now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions