(SOLVED) Can anyone confirm this issue in Windows 10 20H2? (VSTGUI)

DSP, Plug-in and Host development discussion.
User avatar
KVRAF

Topic Starter

21411 posts since 7 Jan, 2009 from Croatia

Post Wed Apr 07, 2021 11:34 am

VSTGUI is a submodule, and in VS, when you're in Solution Explorer, you can expand surge-vst3-dll, then VSTGUI group, and in vstgui_win32.cpp you should see an include to win32optionmenu.cpp.

Thanks for taking a look!


(Also thanks for the flowers - the easier it is to clone the repo and build the plugin, the more interest we might gather from other devs... or so we hope :))

KVRist
379 posts since 25 Dec, 2018

Post Wed Apr 07, 2021 11:41 am

Ha thank you. That's the bug indeed. Very useful.

And glad you had a pleasant experience building surge. We've worked hard to make it easy to build and debug.

User avatar
KVRAF

Topic Starter

21411 posts since 7 Jan, 2009 from Croatia

Post Wed Apr 07, 2021 12:49 pm

And this is a big shaming moment for me, since I wrote those specific queries... :oops:

User avatar
KVRAF

Topic Starter

21411 posts since 7 Jan, 2009 from Croatia

Post Wed Apr 07, 2021 1:06 pm

And FIXED!

@lkjb - you have been credited for debugging in the git transaction log. Much, much appreciated!

User avatar
KVRian
847 posts since 31 Dec, 2008

Post Wed Apr 07, 2021 2:14 pm

Sorry. Please ignore this.

User avatar
KVRAF

Topic Starter

21411 posts since 7 Jan, 2009 from Croatia

Post Wed Apr 07, 2021 3:24 pm

I can't, now I wanna know what you wanted to say :D

User avatar
KVRian
847 posts since 31 Dec, 2008

Post Wed Apr 07, 2021 3:55 pm

ha ha :). It was just something about getNbItemsPerColumn() returning 1. So VSTGUI thinks that we want 1 item columns which prety much explains the weird horizontal look on the image you posted.

Apparently an old source of Surge I have here has setNbItemsPerColumn(32). Didn't see any usercat_pos. So I assume this was a new thing.

User avatar
KVRAF

Topic Starter

21411 posts since 7 Jan, 2009 from Croatia

Post Wed Apr 07, 2021 10:37 pm

Yes that was a new addition I added for the upcoming 1.9 update... I just didn't make the queries bulletproof. Now they are :)

KVRist
173 posts since 13 Oct, 2012

Post Thu Apr 08, 2021 10:46 am

Glad I could help. Without S0lo's post I hadn't had any idea where to start.

I'm sure I had dozens of bugs like this one which depend on some kind of installation state and therefore only manifest rarely and preferably with users rather than developers. Quite a classic kind of bug. :)

User avatar
KVRAF

Topic Starter

21411 posts since 7 Jan, 2009 from Croatia

Post Fri Apr 09, 2021 4:56 am

I also want to say that this bug prompted a closer inspection of how that menu was built, so I also found a few inconsistencies along the way. For example: when Surge installs, it has two folders with "factory patches", called presets-factory and presets-3rdparty. Users can certainly remove one or both of those folders if they wish (but when they update the installer would reinstate those), but interesting things happened in these cases.

1. If user removed 3rdparty but left factory, there would be no separator after the last factory folder. Looked bad!
2. If user removed factory AND 3rd party, the user patches header would say THIRD PARTY PATCHES. That makes no sense, does it?

So I now covered all possible cases of intentionally or unintentionally removed factory/3rdparty patches folders - headers will always say the proper thing, and separators will show up where they need to show up.

Minutia and nitpicky, but that's how I roll... :lol:

Return to “DSP and Plug-in Development”