LabVIEW Idea Exchange

Community Browser
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

I am proposing to improve the usability of the new LV 2009 Icon Editor "Icon Text" tab along these lines:

 

IE Icon Text Improvement.png

 

PJM

It would be really nice if you were able to resize properties dialog boxes for controls, indicators, constants, and other nodes on a front panel or block diagram. Sometimes the information entered in a dialog is larger than the allotted space. Fortunately, in those situations, there is usually a tip strip that shows all of the information rather than just the visible portion of the information, such as shown in the enum properties dialog box picture below. To make all information visible, it would be great if properties dialog box windows were resizable and the contents of the tab control pages automatically scaled with the size of the dialog. It would also be nice if pages containing objects with columns (e.g. multi-column listboxes, etc.) allowed the columns to be resized as depicted in the picture below. 

 

Ryan_Wright__2-1731433895037.png

I wish there was a boolean text specifier for Format into String functions.

 

% followed by "?" would expect two possible strings like this. Why not?

 

boolean.png

NXG had a neat feature I miss in LabVIEW 20xx and that is resizable nodes for operations like OR, AND, and Add.  There are other nodes that could benefit from this too like subtract and multiply, but here is the idea.

 

Resize Nodes.png

 

I'm aware that the Compound Arithmetic is a resizable node that covers the examples I have here.  But often times I will start with just two inputs so I'll use the OR, then later on I'll need to add a node and now I need to replace it with the Compound Arithmetic and then add the other inputs.  If the suggestion is to just use Compound Arithmetic, then why even have an OR node?

LabVIEW could use a feature that's commonly used in C++, the "final" specifier for a class override method.  This would allow a child class to override a method from a parent class (or interface) and then prevent child classes of itself from overriding.  Currently, with large inheritance structures, it becomes difficult for developers to create child classes since so many of the methods can be inherited from.  The final specifier would allow you to create intermediate classes that define certain override functionality that does not need to be further overwritten and only pass on the ability to override methods that are important to child classes.

FInal Override.png

When I print a front panel containing a graph (who ever does that?) I get a stunningly beautiful publication-quality render of my data (overlooking the poorly done vertical y-axis label). However, all the many options of directly exporting a graph image (detailed here) ultimately provide only a screen-resolution image. See the contrast in image quality below:

 

Printed front panel vs exported graph image.Printed front panel vs exported graph image.

This idea has been discussed ad infinitum on the forum (see, for example, here, here, herehere, and here), but has never been adequately resolved. (Enlarging the graph for export does not work since graph elements do not scale, so lines, points and labels end up being far too small.) High time to implement a feature that has been in demand since (at least) 2002!

After deleting items I don't want in the project, or loading plugins in a  plugin architecture, I want to remove them from the LabVIEW memory. This is not possible now, as they go into Dependencies->Items in Memory.

Items in memory.PNG

The only way to do this now is to close and open the project, which over a large Plug-in architecture project is a real pain. 

Ideally, I would like to right click the folder and choose "remove from memory". However, any option that allows this would be good.

 

Thank you!

Danielle

 

I would like to have the ability to set the compare aggregates mode for comparisons involving containers (arrays certainly, clusters would be a nice bonus) and a scalar value.  This includes the comparisons to 0 functions as well.

 

compareAggregatesIdea.png

"Find Items with No Callers" could be a useful function on the project, but currently most items it reports are in Dependencies. Why is an item even under Dependencies if there is no caller? It seems if I call one function from an .lvlib the whole library is in dependencies, and all other functions have no callers. This floods my "Find Items with No Callers" window with useless entries.

FindItemsWithNoCallers.png

 

Suggestion: add option to hide items from dependencies in the "Find Items with No Callers" window (or even hide them by default).

 

Cleanup diagram is not much used (Personally I allign the diagram myself manually). But if we have few improvements with the tool we can use it atleast in sub vis more often. 

At present the Cleanup diagram tool introduces unncessary wire bends eventhough it can be avoided. So it would be great if this is taken care properly and unncessary wire bends are removed.

 

Manually alligned without wire bends

 

CleanupDiagram-1.PNG

Wire bends are introduced once the Cleanup diagram is done.

 

CleanupDiagram-2.PNG

Download All

As you can read in the link below the licence manager uses the MAC addresses of a computer to create computer ID used for the activation process.

The trouble is that when you use a NI PCIe 8235 (Quad-Port GigE Vision Frame Grabber) you are adding 4 Ethernet ports to you computer and any change to any of these ports (even a fix IP change of one of the ports) will change the computer ID and therefore you will need to re-activate all your NI products... As day to day users we simply cannot work that way.

 

The knowledge base article below explains that in such cases we can get the hard drive serial number, send it to NI and they'll give us a computer ID based on that HDD serial instead of the computer ID given by the licence manager and we can then use it for the activation process.

 

The point of this idea is to ask NI to improve the licence manager so we don't have to go through this issues, I think the licence manager should inform the user about what the computer ID is based on and tell him about the options (MAC address or HDD serial) and let him choose between the 2.

 

How Can I Change the Hardware Used for Activation of NI Software? 

 

PS :

and now that we're talking about improving that damn licence manager, you can refactor it to include other ideas such as :

Smartphone application to activate NI Software

Add a QR Code (2D Bar Code) Option To NI Product Activation Dialog

 

[admin edit]

I am copying the workaround posted by crossrulz in the comments to benefit users having these issues who find this idea:
"Here is a work around if you want to play around in the Windows registry:

In "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\National Instruments\License Manager" add a string value named "DiskOnly" and set it to "true".  The license manager will now only use the HDD serial number."

At present we can select only a single VI on "RightClick>Select VI" option in Block diagram. It would be much helpful if we can select multiple VIs at the same time. Image for reference

 

 

MultipleSel-3.png

 

MultipleSel-1.png

 

Present MethodMultipleSel-2.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Proposed Method

Download All

I find myself asking two questions fairly frequently.  (1) Why is the Select function on the Comparisons palette?  (2) Why isn't the Select function on the Boolean palette?

 

MoveSelect.png

 

Not only is the Boolean palette the proper location (IMO) for the conditional operation (not a comparison), but that palette appears in the right-click menu for items in both the Comparison palette as well as the Boolean palette.

Currently it is only possible to hide/unhide the frame of a subpanel by activating the context menu with a right-click.

Please add Frame.Visible to the list of subpanel properties.

I can search for objects from the Find dialog, but I would also like to initiate the same search by right-clicking on a function in my block diagram.

I would simply like to add the VI Documentation to the Icon Editor so that when you create the Icon for a VI you can also edit the documentation at the same time. This might help increase VI documentation overall if it was done at the same time as the icon.

I've been working with a ton of different projects lately, and I am frequently changing properties settings on them. I instinctively press Ctrl-I to launch the properties dialog, then I sit and wait a few seconds before I realize that Ctrl-I doesn't do anything in the Project Window, and I have to go right-click the top-level project item and choose Properties instead. Let's make Ctrl-I launch the Project Properties dialog, just like it launches the VI Properties dialog for VIs.

The For/While Loop conditional indexing feature (new in LV 2012) is neat but so far only accepts a Boolean. That's departing with the behavior of the Case Structure selector terminal, which accepts error clusters:

 

ScreenHunter_007.jpg<----------- I'd like to connect the error cluster wire in the For Loop directly to the indexing condition terminal

(the case structure outside is just here to show what I mean by connecting an error cluster to the condition terminal of the Case Structure).

Of course the workaround is simple (as shown), but why introduce an even simpler approach for the Case Structure and not offer it here?

 

Edit: The obvious objection is that some will want to index when there is an error, other when there is none, which in fact might be best handled by the approach shown above. An error cluster connection would need a different contextual menu as well (index on error or index on no error).

 

When doing a global Search and Replace we often get an "Authentication" dialog box prompting for a password (most often these VIs are third-party VIs to which we don't have passwords), so the search stops until the user clicks "Skip" and perhaps selects "Skip remaining password prompts for this operation."

 

(See attachment)

 

Similiarly to the option to "Ignore VIs in vi.lib", there should be an option to skip password protected VIs because, most likely, we won't be able to replace anything in them anyway.

The concept is to have a project level #define or variable where a value of your type can be set. This is to allow the user to change constants across multiple targets. Wherever this is called in code it will be set when the run button is clicked and then be static until it is run again. The same would happen when a build is run that the value is set then and never again.

This would allow multi target configuration quite simply and make for some more readable code when you a constant referred to at multiple levels or across large chunks of code. Instead of having a wire to span these sections or being passed down multiple subVIs it would just refer to one point, much as a #define in C

 

Project

project.png

 

Then calling code for targets

RT.png