option to change the piano hit key color mode

This commit is contained in:
Eknous-P 2025-12-07 21:31:23 +04:00
parent 9d4da19ab5
commit 19c78955bb
3 changed files with 49 additions and 4 deletions

View file

@ -2841,6 +2841,12 @@ class FurnaceGUI {
PIANO_LABELS_OCTAVE_NOTE
};
enum PianoKeyColorMode {
PIANO_KEY_COLOR_SINGLE=0,
PIANO_KEY_COLOR_CHANNEL,
PIANO_KEY_COLOR_INSTRUMENT
};
int pianoOctaves, pianoOctavesEdit;
bool pianoOptions, pianoSharePosition, pianoOptionsSet;
struct pianoKeyState {
@ -2851,7 +2857,7 @@ class FurnaceGUI {
bool pianoKeyPressed[180];
bool pianoReadonly;
int pianoOffset, pianoOffsetEdit;
int pianoView, pianoInputPadMode, pianoLabelsMode;
int pianoView, pianoInputPadMode, pianoLabelsMode, pianoKeyColorMode;
// effect sorting / searching
bool effectsShow[10];
@ -2980,6 +2986,7 @@ class FurnaceGUI {
bool portSet(String label, unsigned int portSetID, int ins, int outs, int activeIns, int activeOuts, int& clickedPort, std::map<unsigned int,ImVec2>& portPos);
// piano
ImVec4 pianoKeyColor(int chan, ImVec4 fallback);
void pianoLabel(ImDrawList* dl, ImVec2& p0, ImVec2& p1, int note);
void updateWindowTitle();