This is a simple quick drop plugin, very similar to the LabVIEW's inbuilt quick drop "Insert [ctrl+I]". This is not a replacement to the "Insert" but this will be very handy when you copy a node by pressing "Ctrl + Drag" and wanted to insert between wires.
Solving Pain points
I have attached the GIF explaining one of the use cases.
The attachment contains two plugins, Place it in necessary location to available for your LabVIEW Version.
1. SmartInsert - This will insert the selected node to the wire which is present nearby to the node. You need to place the node near to any of the wire you want to connect and invoke its quickdrop shortcut. It will connect to the wire with datatype matches with the wire and node terminals.
2. SmartInsert_UsingSel - This will insert the selected node to the selected wire. you need to select a node and a wire in which you want to insert and when invoking it will insert if the datatype matches.
Both of them were developed in LabVIEW 2014. Default Shortcuts keys for these plugins are assigned as followed. Please change it in Quickdrop window or by editing the VI Documentation
1 -> Insert node to the selected wires[SmartInsert_UsingSel]
` -> Insert without selecting the wires [SmartInsert]
I am using this plugin for more than 2 years and it becomes one of my frequently used quick-drop shortcuts. Hope it will be useful for you! Please share your comments.
Interesting plugins. But why not just put them into a single plugin and just key off of whether or not a wire was selected (use the "Smart Insert" if no wire selected)? One less shortcut to remember. It is also concerning you named your subVIs the same.
Though, another thought would be for the Insert (Ctrl+I) to add this capability. It would call this logic if no function was entered (QuickDrop text is an empty string) and the normal Ctrl+I if something was entered.
This is similar to another plugin I've made which works off of inserting objects from the clipboard, so to do the same thing you'd need to first copy the property node. If you have the left hand on your home row this is pretty easy to do. I have replaced the Insert and Replace QuickDrop functions with my own which calls the native insert and replace in most cases. But if you invoke Insert with a property node in your clipboard it will insert that property and class. Same with the Invoke Node. It also inserts and replaces polymorphic VIs with the polymorphic and not the instance. I've also updated it to support VIMs (not posted publicly yet), and it supports replacing block diagram constants with controls in the clipboard (also not posted yet) and mostly work with inserting or replacing on multiple object selection, and works on the Shift modifier to insert one object on all selected wires (like the reference and error). It doesn't always do what I want on multi objects in the clipboard, and things aren't moved properly but it does work for the most part. Been using it for years.