LabVIEW Idea Exchange

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

Add Intellisense support to the property node

Status: New

 

I really hate having to dig through a long hierarchy of menus when I know what I want:

 

 

DrillDown.png

 

 

 

 

 

Visual Studio (and other MS and non-MS products) have a feature called Intellisense, which is meant to make this easier. Basically, as you type, it pops up a list of matching objects, based on context, so you can quickly select what you want:

 

 

Intellisense.png

 

 

 

 

It would be nice if LV had a similar feature - click on a property in the property node using the text tool (or Ctrl+click if using the auto-tool) and now you can type in the property name and you will get an Intellisense-like pop-up, which will have all the relevant properties.

 

Specific features it could have:

 

  1. It should know all the relevant names - full names with the hierarchy (Boolean Text.Font.Color), long names (Mechanical Action) and short names (MechAction). This could probably be similar to how Quick Drop handles shortcuts or they could simply appear as separate items.
  2. It should be context sensitive. If the class is Boolean, then there's no need to have Listbox properties in the list.
  3. It should match all the properties which include the search string (so "in" on a boolean would match both "Indicator" and "Strings[]") and only them.
  4. It should have the ability to use caps for acronyms (e.g. in the above screenshot you could use "BT" instead of "Boolean Text", similar to what appears in this video).
  5. It could probably also work on the invoke node, although there it's less needed.
  6. It could probably also be used to quickly select a class if you have a class specifier using the same basic mechanism.

This example (LV 2009) shows how useful this could be. You don't need anything installed. Just run the VI and start changing properties.

 

Caveats:

  1. It will only work on the last property in the node.
  2. It doesn't have the proper list of names and it doesn't implement all the features in the idea, as this is just a basic example.

 

Note - this is similar to this idea, but I think that it's much more usable. Also note that the second idea refers to a QDKS which ships with 2010, but that is far from perfect.


___________________
Try to take over the world!
19 Comments
sletrab
Member

Very good Idea, I like everything which speed up creating code. This big right-Click menus are very slowly!

tst
Knight of NI Knight of NI
Knight of NI

This type of search-and-select can probably also be added to selecting a local/global/shared variable, i.e. Click the text area with the text tool (or Ctrl+Click it with the auto-tool) to display the filter popup.


___________________
Try to take over the world!
Ray.R
Knight of NI

How did I miss this idea?? 

Kudos!

😉

pawel.ostrogorski
Member

Great Idea.

After placing property we should be able to type property like in text languages. Just like we type controll name when it is placed on front panel

pawel.ostrogorski
Member

1.png

AristosQueue (NI)
NI Employee (retired)

I want to repeat Darren's earlier comments that he has added Quick Drop support for quickly changing the class or the property/method of an existing property/invoke node. From the LV 2014 help:

 

Ctrl-B Changes the VI Server class of the selected Property Node(s), Invoke Node(s), and/or class specifier constant(s) to the class you enter in the Quick Drop window.
Ctrl-Shift-B Changes the property or method of the selected Property Node(s) or Invoke Node(s), respectively, to the property or method name you enter in the Quick Drop window.

 

You can find the other keyboard shortcuts for quick drop (as of LV 2014) here:

http://zone.ni.com/reference/en-XX/help/371361L-01/lvhowto/qd_keyboard_shortcuts/

 

He and I continue to believe that a better mechanism than this should be possible, but we haven't managed to get the leverage to make it happen.

pawel.ostrogorski
Member

Thanks AQ for reply. I am aware of that scrout. It speeds things up a little if I know exact name, but when I misspell nothing happens and thats irritating.. It would be great if all possible properties were listed in QD when it is called and property node is selected, and they will be filtered while typing just like QD works for normal elements.I looked briefly and it seems tht scripting allows get all properties for object and set them as well but QD is pass protected.

 

Hope that LV 2015 will bring some new approach 🙂

AristosQueue (NI)
NI Employee (retired)

> Hope that LV 2015 will bring some new approach 🙂

 

Too late for 2015. We're way late in the beta process now. If there were something better, you'd already see this idea marked as In Beta. There are 14 ideas currently marked as In Beta. You can review them by clicking the "In Beta" link at the top of this page (in the right-hand column).

tst
Knight of NI Knight of NI
Knight of NI

LV 2015 does actually bring a better approach to finding stuff - invoking plugins from the context menu, which solves the biggest problem I had with QD shortcuts.

 

I uploaded a plugin which does cover some of this idea here - https://decibel.ni.com/content/docs/DOC-43445

 

This plugin lets you right click the property and then shows a search dialog to select the property. Unfortunately, this plugin has two major flaws which make it fall short of the goal of this idea:

 

  1. The minor one is that still isn't as fast as simply Ctrl-clicking the property and having an embedded popup window.
  2. The major one is that the existing API does not let us see or set properties of nested objects, so you can't actually select the font color property I showed in the example above, because you can only select the Boolean Text property. I believe the QD shortcut also has the same problem, although I haven't checked specifically.

___________________
Try to take over the world!