Pins in subatches cant be hidden


#1

Just noticed something strange with IOBoxes, that I had never noticed before.

If I have a subpatch with lots of IOBoxes that I use the auto-created names with, I end up with lots of input pins on the subpatch.

But especially when using the auto-created names, they are never unique. And as it is called a “descriptive name” it shouldn’t need to be.

Trying to hide the inputs only hides the first set of pins, all others with the same name cant be turned off. Shouldnt at least all with the same name get hidden at the same time, then at least it would be kind of a feature. As it is right now, its just an annoying bug, because I have to decide if I want to a) have a subpatch with dozens of input pins I dont need, b) get rid of all the auto-created descriptive names on the IOBoxes, c) go through and rename each IOBox, just to be able to turn it off or d) use text labels next to all the IOBoxes.

Non of those are a good solution.

Here you can see what the problem is. Note how on the subpatch 4 of the inputs are still visible, even though they are hidden in Inspektor.


UI refresh (IOBox labels)
#2

Pins have not an ID inside XML, so there’s no way to differentiate them.
Having pins in a module with same name should be considered bad practice (it should be forbidden, IMHO or, since this is not ruled in the better way possible: one name for different pins in a module? You should get only one pin visible from parent patch).
If you first patch something, then let CTRL+G to create the module for you, you get indeed TranslateX, TranslateX1, TranslateX2 (or something along these lines).


#3

I did it just like that and they are still all named the same and showing the bug mentioned. Using version 35.8 x64, which one are you using where it works as you describe?

ps: just noticed another little weird thing: if you create a new patch its called “0.v4p” if you dont save and group something into a subpatch, that subpatch is then called “-1.v4p”. Not the best automatic naming convention ever…


#4

Very same one. You have to let CTRL+G to create your your pins, or in other words, you don’t include any IOBox in the CTRL+G operation.


#5

That’s probably a big mistake made early on. Everything that CAN be called the same at some point WILL be called the same. If it leads to bugs it should be rectified or not be possible to do.

Right, I see what you mean now. Thats kind of cool. But the thing is that I wish there was simply a way to hide the pins that have the same names. Especially with things like translates I like to auto-create the parameter name so I know what the IOBox changes. But I dont want it as an input if I group it. So now I once again have to move all the IOBoxes to the top one by one (since you cant CTRL-select several at once), then group, then go to the top patch and delete all the IOBoxes and then I am able to hide the pins. Also only possible to do this if I group after I am done. As soon as I add stuff in a subpatch, the problem is the same again and I have to start renaming all the IOBoxes by hand.

But good to know there is at least one little workaround for some specific cases.


#6

Try working with the Pin Visibility attribute in the Inspektor.

P.S. To the casual reader: I know that having unique Descriptive Names could be quite the PITA, because for example this would hit patching speediness, but…


#7

Yes, that IS what I am doing and noticed the bug/feature.

Some possible solutions:

  1. Autonaming IOBoxes with middle-click when creating checks if the descriptive name already exists and appends a number (like when grouping)

  2. Allow descriptive names to be the same and give them an ID in XML (most sensible solution, but maybe problems with backwards compatibility)

  3. Fix it so that pins can be hidden even if there are several of the same name

  4. Fix it so that hiding 1 pin with a descriptive name that comes up several times hides ALL pins of the same name (sensible since you can only set the first of the duplicate pins anyways)

Simply forcing descriptive names to be unique will break lots of old patches, so is not a good idea in my opinion.


#8

Strange, I get an incorrect behavior when I click on the leftmost grey\light grey\white squares with a module active in the Inspektor, while if I select and set multiple IOBoxes’ Pin Visibility attribute everything seems to work fine (better).


#9

Oh, now I see. Sorry, my mistake, I thought you meant the squares. Never noticed IOBoxes have a pin visibility setting. You never stop learning even after so many years…

Thanks.


#10

👍