hydrogen-music / hydrogen

The advanced drum machine for Linux, macOS, and Windows
http://www.hydrogen-music.org
GNU General Public License v2.0
1.01k stars 172 forks source link

Integrate drumkit into song #1905

Closed theGreatWhiteShark closed 7 months ago

theGreatWhiteShark commented 7 months ago

The Song class does now hold a proper Drumkit instead of just an InstrumentList and DrumkitComponents.

First of all, sorry for the massive PR. But without various UX tweaks the change above would had given users installing directly from master a hard time.

Unfortunately, this required changes in the drumkit XSD and .h2song format in such a way kits and songs from >=1.3. won't work in Hydrogen <=1.2.2. But I intend to add forward compatibility to the upcoming 1.2.3 patch release in order to make this transition more smooth.

Internally, this made drumkit handling much more clean and a lot of code acting on the instrument list and components previously located in the song could be moved from the GUI part into Drumkit.

Also, a lot of DrumkitComponent related bugs and inconsistencies have been fixed along the way.

UX changes

Fixes #1849 Addresses #1213 Addresses #1901