LabVIEW Idea Exchange

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

When wiring to an already wired terminal -> replace wire -> leave old wire on wiring tool

Status: New

Hi,

 

Sometimes I want to wire to a terminal that already has a wire wired to it, while wanting to wire that wire to some other terminal (for instance if I change my mind about the build order of an array).

 

I may want to get from here:

 

InheritWiredWire_Start.png

 

... to here:

 

InheritWiredWire_Final.png

 

The usual way is to;

 

1) Delete the already wired wire, freeing the terminal I want to wire the "9" to.

2) Wire the "9" to that now free terminal

3) Rewire the old wire from whichever wire stub hanging on the BD to its proper terminal.

 

Now we could wait for one of the "general swap terminals" ideas to get implemented, like this one, but I have (IMO) a simpler request (this one might not exclude the others):

 

When I wire something to an already wired terminal my new wire gets wired instead of the old one, and the old wire gets left on my wiring tool ready for wiring somewhere else. I'll try to illustrate it like this:

 

InheritWiredWire_WireOnTop.png

 

When I click the terminal on top of the other wire, I get the old wire on the wiring tool instead:

 

InheritWiredWire_InheritedWire.png

 

... and then I can immediately wire the old wire to its correct location:

 

InheritWiredWire_EasyComplete.png

 

I'm sorry if this has already been suggested somewhere, but I have searched among the many different variants of wiring optimization ideas in this forum and came up with no match.

 

Cheers,

Steen

CLA, CTA, CLED & LabVIEW Champion
16 Comments
dthor
Active Participant

Right click -> Insert Element doesn't work for you?

SteenSchmidt
Trusted Enthusiast

How can I do that on a subVI? Or on an <insert your choice> primitive? I want this to be available on all terminals.

 

Even on Build Array and the like it's still much more work to right-click -> Insert Element than to just be able to wire directly. Consider the case where I'm already at the source*; in this case I need to leave the source, go prepare the sink (by right-click -> Insert Element), then go back to the source and wire to the sink, then finally remove the surplus terminal that was (probably) created at the bottom of the structure you inserted an element in. Much simpler to just wire to the wanted terminal, and then straight thereafter be able to do what you want with the wire that was wired there before. Right-click -> Insert Element is still a better option if you really want to insert an element though, but that is not what I'm talking about - this is much more general.

 

* For instance if you've created a constant, or if you've just tunneled out of a structure or something like that. It's quite common to find yourself ready to wire from the source, in contrast to being ready to modify the sink.

 

/Steen

CLA, CTA, CLED & LabVIEW Champion
SteenSchmidt
Trusted Enthusiast

Hmm, not gaining much popularity this one.

 

You did get the point that this is not only meant for Build Array, right? I mean this for every terminal you can wire to; if you wire to an occupied terminal your wiring action is succesful, and the old wire is left on your wiring tool instead for immediate rewiring to some other place (or to be dismissed with ESC).

 

Consider the steps you need to go through today if you want to wire a new wire to an occupied terminal. Here's a different use case:

 

Inherit_1.png   Inherit_2.png   Inherit_3.png   Inherit_4.png   Inherit_5.png

 

The same for subVIs, structure tunnels, shift registers etc.

 

/Steen

CLA, CTA, CLED & LabVIEW Champion
GregSands
Active Participant

Yes I could imagine using this.  One question is whether it would ever be obvious that you could wire on top of another wire?  Or would it be like the "switcheroo", where many programmers have no idea it is possible.

elset191
Active Participant

I know what you're getting at, but this isn't the greatest example either.  I would just wire to the bottom terminal and do the ol' switcheroo and be all set. 

 

As far as the idea goes, I'm trying to figure out how often I wire to an already wired terminal with the intent of deleting the other wire, vs how often I actually want to move the other wire.  I think more often than not I want the other wire deleted rather than rewired.  I suppose once I have the old wire on my cursor I could press escape.  In this case I would expect that branch to disappear.  Is that what you imagine as well?

--
Tim Elsey
Certified LabVIEW Architect
SteenSchmidt
Trusted Enthusiast

I have actually seen several LV programmers wire on top of another wire into a terminal, then being surprised that the wires merged instead of switched (as I suggest here). The former never really makes sense.

 

The switcheroo tool is mostly hidden due to the fact that you need to press a modifier key to activate it. I feel this idea is much more intuitive, and it's always active.

 

/Steen

CLA, CTA, CLED & LabVIEW Champion
SteenSchmidt
Trusted Enthusiast

@elset191: Yes, I imagine ESC dismisses the other wire as that wire becomes "marching ants" when left on the wiring tool. If that wire should be deleted entirely, or only the last branch of it (leaving the first part hanging unconnected) I don't know. That should be discussed.

 

Sure, I should maybe have selected another case where the switcheroo tool doesn't work currently. But I still feel a functionality like this idea is more intuitive than a modifier key (to enable the switcheroo).

 

For sure, I may be the only one that ever needs to switch two wires not side by side and not situated on a prim that allows switcheroo'ing. Seems so Smiley Happy

 

/Steen

CLA, CTA, CLED & LabVIEW Champion
garrettmarsh
Member

Good idea Steen.

 

Compared to the switcheroo, this also has the advantage that it would work anywhere - not just in those certain places where NI has enabled switcheroo.

I just ran into a perfect example today (I wanted to swap the two string inputs):

no switcheroo.png

 

(in LV 2011, maybe it works in 2012?)

 

@elset: 

I don't think this idea would apply to the deletion of wires. That should still happen the usual way. imho, the standard intent of the escape key is "cancel whatever I was about to do"... so to have the escape key deleting wires would be a bad idea.

Ironman99
Member

Great idea Steen. Kudos...

I would suggest a little improvement, or maybe a new related idea: what about if it were possible to use the WireTool also for disconnecting a wire already connected? So far there is no difference if we click with the (empty) WireTool on an already existing wire or instead we click in the glyph, on the small flashing black box which represents the (already connected) connector. Both operations start a new wire branch.   What about if in the latter case, instead of starting the new branch, the (empty) WireTool disconnected the already connected wire, grabbing it? This behaviour can be seen as an extension of your idea. If the WireTool brings a wire on an already connected pin, the operation makes the swap that you propose in your idea. If the WireTool is empty, the click on a pin capture the already connected wire. The combination of this two behaviours would make very quick and easy to rewire every kind of connections.

Cheers.

Marco.

SteenSchmidt
Trusted Enthusiast

Hey Marco, that is a brilliant extension to this idea! That would fit like a glove Smiley Happy

 

/Steen

CLA, CTA, CLED & LabVIEW Champion