probonopd / MiniDexed

Dexed FM synthesizer similar to 8x DX7 (TX816/TX802) running on a bare metal Raspberry Pi (without a Linux kernel or operating system)
https://github.com/probonopd/MiniDexed/wiki
1.08k stars 80 forks source link

Minor issue with root menu #734

Open GusIsanda opened 1 week ago

GusIsanda commented 1 week ago

Hi, first of all thanks for all the work!

I found a minor bug in root menu and I'm not able to find the line myself. When the menu is on TG or in edit mode, you can't go one step down if it's the first item or step up if it's the last item (looping back to the last or first item), but in root menu it does.

I know it's a minimum trouble but now I need to know how it works. Thanks again!

Banana71 commented 1 week ago

Hi Guslsanda,

As far as I know, this is intended. The root menu moves in a loop and the submenus in a line with a beginning and an end. Take a look at the file "uimenu.cpp" from line 473. Peter

        if (pUIMenu->m_nCurrentSelection == 0)
        {
            // If in main mennu, wrap around
            if (pUIMenu->m_pCurrentMenu == s_MainMenu)
            {
                // Find last entry with a name
                while (pUIMenu->m_pCurrentMenu[pUIMenu->m_nCurrentSelection+1].Name)
                {
                    pUIMenu->m_nCurrentSelection++;
                }
            }
        }
        else if (pUIMenu->m_nCurrentSelection > 0)
        {
            pUIMenu->m_nCurrentSelection--;
        }
.........
GusIsanda commented 1 week ago

Why I couldn't see it? Thanks!

Banana71 commented 1 week ago

Why I couldn't see it?

Because there really is a very small error in the root menu :-) The arrow "<" is missing in the "TG1" menu on the left side and the following arrow ">" is missing in the "Performance" menu on the right side.