BLOP input controls?

Is there a way for us to make BLOP input controls directly in the BLOP node?

I have a BLOP now that has 2 integer options for the user to choose. X = 0, Y = 1, Z = 2. Best I can tell, I can either add sockets and hope they read the tooltip to know to make 2 InputValue Integers, or I can expose 2 InputValue’s in the BLOP itself and expect the user to set them from the command panel. Are those my only options?

Marginally related…
Is there a way to test if a connection is made? Like I’d like to have a Logic operator that says “If socket 1 is an Integer, use that for the output, otherwise, use socket 2’s value.” This would ensure that we had working defaults in case a connection was not made, or in case the datatype was wrong.

Since nested exposed inputs will be shown in the Max Command Panel and you as the designer of the BLOP know you will need them, I would suggest adding the InputValue Integers to the BLOP itself and exposing them.
But yeah, these are your two options - either provide an input socket and hope the user will pass an Integer there, or include your InputValues in the BLOP.
What would be YOUR option that we are missing?

No, the flow is either valid and it works, or it is wrong and it does not work.
What you are describing is how Input Sockets with Defaults work in regular operators (if there is a connection, it uses it, if there isn’t, it uses the Default value for that socket, if any).
We don’t have this implemented for BLOPs yet, but it is something we would consider in the future.

Even in the case of Operators, if the connection is the wrong TYPE, the flow fails with an error.

For the first thing, I’d like to have spinners and color swatches and such for BLOPs. So you could add an InputValue in the BLOP editor and get a spinner or whatnot when you exited the editor.

For the second one, that means that there’s no way to add an optional input. So I can’t have, say, a Switch where the Boolean is ignored if one of the other inputs, either True or False is missing.

I see that if I expose a InputValue connected to the Boolean of a Switch I get a button that has the User Notes from the InputValue set as the button’s tooltip. Nice.

But it doesn’t work for list boxes coming from a Mux.

If I put a Mux with an IntegerValue in the Boolean, the name of the IntegerValue becomes the TITLE of the Mux, and the names of the first N-1 inputs of the Mux become the names of the list items. If the Mux and the IntegerValue inputs are both inside the BLOP, this will work.
If the Mux/Switch is inside the BLOP and the control is outside the BLOP, connected to an input socket, it won’t expose as a ListBox/Checkbutton because it does not “see” inside the BLOP. Will have to see if I can fix that…

Ok. Different issue than what I was complaining about. I can’t get a tooltip for the exposed listbox coming from a Mux. I have the title from the InputValue, and the names of the entries come from the Elbow names, but if I wanted to put something in the tooltip, I get nothing.

That’s mainly because Listbox does not support Tooltips.
I will have to add an additional [?] button or something to show the tooltip, or use DropDownList which I don’t like as idea.
Give me a minute… :wink:

Try this one.
Genome_MagmaFlow_20120402.zip (70.4 KB)

:slight_smile:

Perfect.