LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
altenbach

Smarter insert behavior for non-numeric arrays

Status: New

If we have a 1D array wire and try to insert a "rotate array" primitive (right-click...insert...), there is only one reasonable connector choice.

 

When inserting symmetric primitives, the programmer can typically chose the connector used by placing the cursor slightly above or below the wire when right-clicking. For numeric arrays, LabVIEW is smart enough to always automatically pick the right choice when inserting a "rotate array" primitive. Obviously, there are additional sanity checks, preventing broken wires.

 

For some reason, this is not true for non-numeric arrays. If we (for example) try the same with a 1D array of strings, we get a 50% chance of broken wires and useless connections. (same for other non-numeric types I tried, but I did no check all possibilities)

 

A picture shows it better. (As mentioned, we always get case (B) for numeric arrays)

 

 

 

IDEA: The smart behavior should apply for all 1D arrays, not just numerics. 

3 Comments
Mr.Mike
NI Employee (retired)

This seems more like a nasty artifact of our code that matches up terminals for replacement nodes.  I'm betting it tries to wire up disconnected wires closest to the new terminal, so that's why above the wire or below the wire has an effect.  I'm inclined though to file this as a CAR, but this straddles the line between bad behavior and actual bug.  I'll wait a bit to see what other people think.

-- Mike
altenbach
Knight of NI

At least in my experience (maybe just a fluke? I'll try some more....) it never wires the wrong way for numeric arrays. It is difficult to understand why non-numeric arrays behave differently. Isn't that shared code? Why the different behavior?

 

I agree it could be filed as a bug. There is a hole somewhere. 😉

Darren
Proven Zealot

Yes, I agree that this should be a CAR, especially since it's behaving differently based on array data type.