onlaj / Piano-LED-Visualizer

Piano LED Visualizer: Connect an LED strip to your Raspberry Pi and create an immersive visual experience for your piano playing
MIT License
517 stars 111 forks source link

Add the ability to modify the note offsets the UI/LCD #310

Closed jwessel closed 2 years ago

jwessel commented 2 years ago

The ability to customize the note offsets without modifying the code is highly desirable.

In the process of adding the feature to modify the note_offsets in the LCD panel I discovered a number of other problems. These all had to get fixed in order for the note_offsets editing to work properly with all the other features.

To enable dynamic XML changes, update_songs() had to have the following removed:

self.DOMTree = minidom.parse(self.xml_file_name)

The replacement of the of the base tree was erasing any of the dynamic updates to the xml tree nodes. This enabled the ability to add the note_offsets editor, but caused the need for additional fixes because the other update functions just kept on appending new data as you interact with the LCD menu. For example, the Multicolor menu didn't work properly before this change and was much worse after the change. This patch set fixes it to work dynamically so you no longer after to restart the visualizer.

onlaj commented 2 years ago

That's a really cool update, testing it right now! :D

jwessel commented 2 years ago

You should be able to pull the merge request now. I added the patch to dynamically add the Confirm choice. Thanks so much for all your work on this project it is amazing!!!

I am using it on the RPI Zero 2 W and experimenting with a different OS. :-)

onlaj commented 2 years ago

Well done, thank you! Merging