musescore / musescore/MuseScore

[API] Add a ‘children’ property to the Element object

Open
#28,419 0 comments 0 reactions 1 assignee View on GitHub

@igorkorsukov is already working on this.

Since Jun 20, 2025.

needs review plugins
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Your idea

While you can easily get the parent of an Element in the API, you cannot get the children.

However, in engravingitem.cpp there is a childrenItems() routine, that the API could easily map to.

Adding a ‘children’ property to the Element object would make life a lot easier for plugin developers.

Problem to be solved

In certain circumstances, it would be very useful for plugins to be able to access the children of an element, but this is currently impossible, leading plugin developers to devise hacks/workarounds.

The provision of a ‘children’ property in the API would solve these problems.

Prior art

No response

Additional context

No response

Checklist
  • This request follows the guidelines for reporting issues
  • I have verified that this feature request has not been logged before, by searching the issue tracker for similar requests

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.