LabVIEW Idea Exchange

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

Hello,

 

Today, ActivX and DotNet events are treated as callbacks ... ( A vi is linked to a callback )

 

It should be nice to handle them as LabVIEW events, so the callback treatments could appear in the LabVIEW event loop structure.

 

I think there is certainly a difference between events and call back handling, but it should be a way to standardize the "event/callback" view.

 

=> It would be more "user friendly" ... and applications could be more "maintenable" ...

 

Manu.net

I'm working on a high-performance application where every bit of time counts.

 

LabVIEW's parallel execution helps but we are having to write individual functions in C so we can try out the AVX instructions available on modern processors.

 

LabVIEW recently used SSE2 so I guess the compiler supports this (well, LLVM certainly does). It would be good to have an advanced option to enable more recent updates (AVX+) to avoid going to C!

I've been programming in LabVIEW for a decade.  Yet, there is still an issue with type def'ing a cluster.  If one of the goals of LabVIEW programming is documentation, why does NI still make it the process difficult?   

 

After creating then 'type def' a cluster, I then have to more spend time unhiding and repositioning labels. This gets extremely inefficient with large cluster.

 

Why not add an option to hide or leave labels untouched when 'type def'ing a cluster?

 

2017-10-25 10_40_31- LabVIEW issue.png

 

I need to detect when a user has released mouse control of a slider, but that is not possible. I would like to see a new event on controls called "User Control Ended".

 

For instance, consider a user grabbing a slider knob:

 

UserControlBeginning.png

 

The user is able to drag the mouse anywhere, even outside the bounds of the window, and still have control of the slider:

 

UserControlOffScreen.png

 

And if the user Mouse Ups outside the window, you can't detect when that event happened. Here, Mouse Up and Mouse Leave are of no use on either the control or the pane. The new "User Control Ended" event needs to be robust like "Drag Ended", detecting events that happen even outside the VI pane.

 

Conclusion: when a user is interacting with controls using a drag-like operation, I need to know when the user releases the mouse button, whether it be inside the pane, outside, wherever. I have illustrated the example using a slider, but the idea I think should encompass nearly all controls (e.g., a user clicks on a Boolean with "Switch when Released" mechanical action, then drags the mouse outside the Boolean and releases to effectively cancel the Value Change event. Well, I'd still like to catch the "changed mind and released mouse button elsewhere event", a.k.a. the "User Control Ended" event)

 

 

EDIT: Attached the VI so you can play with it.

Message Edited by JackDunaway on 02-19-2010 11:24 AM

It would be nice if it was possible to restrict the autoscaling (in graphs and charts) to one direction only, and to limit its operation to a certain range.  A typical use for this would be to set the scale minimum to zero - and then let the autoscaling adjust the scale maximum.

 

You can of course achieve this by writing your own autoscaling function, however the need for such coding could easily be eliminated by adding a few options to the already existing feature. 

 

In addition to the directional limit and range it could have variables like a minimum step size / maximum allowable overshoot, maximum number of points off-scale etc.

 

 

 

Simple thing:
It will be nice to have context help with monospaced font. The functionality of this help currently is very poor but with monospace font we will be able to add e.g. simple "arrays" and probably many more others descriptive things that can be usually found in e.g. .h files.

 

Below simple character based array in notepad++ and in LV context help.

 

notepad.JPG

 

context.jpg

 

Regards,

Michał Bieńkowski

Spoiler
LabVIEW to Android .apk for apps or to Apple mobile

Dear Hot Shot Devs! 

thousands of us want to be able to build a mobile app from LabVIEW!!! 

Can you imagine??

 

All that power with full responsive features on any device, like Swift and Android Studio??

 

you can “hook into” those tools to let us design the User Interface and evening do Bluetooth and Wireless with all’s y’all’s stacks and wizardry!!

 

Consider me as an Alpha tester.  I know what is needed. Let me know the plans!

 

I have been using LabVIEW since before rev 3.0 when we could actually talk to Dr G!! 

great work you are doing. Sometimes I do not enjoy the “abstractions” you do to make it easy. Kind of liked the good ole “bit banging” direct link to Comms and I/O but I understand.  

contact me at Dave.Korpi@gmail.com

 

                                                      When a Structure_Case is larger than a screen,


                                           I scroll through the sub-diagrams with "CTRL+mouse wheel",


                                                The problem is that  the selector label is no longer visible.

 

                              SR1.png

 

 

                     

             The selector label should always be in the middle of the visible part of the Case structure.

                                                                                         like this,

 

                   SR2.png

I love you the Error/No Error Case is colored Red/Green accordingly.  I think it would be great if you could have a similar feature for other custom case structures.  This will make it very easy to determine which case you are looking at at any given time.  Granted, for case structures with many cases this will not be too helpful, but would be ideal for those with only a few cases.

 

case color.png

One example is shown below from the Device Driver Installation dialog but there a many similar cases. It is very difficult to obtain a decent overview having such a small window for the tree display.

 

I suggest as a general style guide to always enable the resize option in a dialog box whenever the layout requires a scroll box.

 

I have a hard time to see what could be reasons not to do so.

 

dialog resize.png

A VI's icon can be made of any shape by not filling all the pixels in the icon editor. A cluster constant can be displayed as a small icon. But a cluster constant which is connected to a type def. will display a full size icon no matter what. Why not allow transparency for type def icons?

 

typedef.jpg

Hi.

 

I'll propose a more informative set of tooltips for shift registers. Especially when you drag out shift registers to access older values as well, I always have a difficult time remembering which is the most current value, and which is the oldest (is it the one on top, or is it the one at the bottom...).

 

Currently all shift registers have the same tooltip, namely "Shift Register". I suggest to change that into an indexed iterator variable name:

 

Shift_register_tooltips.png

 

Cheers,

Steen

To make the class relation ship better visible I suggest to show the ancestor class name in brackets behind the name of the current class in the project view.

See the picture for better understanding:

 

Andi_S_0-1594038101153.png

 

The web is miles ahead of LabVIEW for its UIs.  LabVIEW should support embedding HTML5/CSS containers as content for VI front panels, that can be bound to any data type or class preferrably to enable more capable UIs.

I was recently trying to develop a function to navigate thru a deeply nested directory structure and came across system path length limitations which could potentially be addressed by use of a "change directory" function.

 

I realize I could use system exec with cmd /c cd <path>, but found this extremely slow

When closing untitled VIs LabVIEW gives you a dialogue which prompts you to Save changes, Defer or Cancel.

 

Save changes.PNG 

 

If you Defer Decision then you have to select the VI in the project, remove it and confirm another dialogue prompting to save changes. This means that to close an untitled VI  is a three stage process. This can be quite annoying when you have just created a small bit of test code that is no longer needed.

 

I propose having a fourth option in the original dialogue allowing you to not save the VI and remove it from the project and memory.

 

e.g.

 

New option.PNG

I know hyperlinks in free labels have been implemented in LabVIEW 2015 and that the idea has been marked as implemented:

http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Hyperlink-in-Floating-Comments/idi-p/986485

 

Kudos to that and I love it. 

 

However, there was another idea:

http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Documantation-links-on-block-diagrams/idi-p/3104999

 

that was closed as a duplicate of the hyperlink in free labels, except there is a small difference in the second idea that was not really implemented. The hyperlinks do not let us insert links relative to the project, the poster of the Documentation links on block diagrams even says: "The risk would be moving the document and the link becomes invalid. This risk could be minimized by placing a documentation folder in your labview project." 

 

So this new idea is to let us either use relative paths on the hyperlinks on the free labels: i.e. file:///C:/ProgramData  or use environment variables such as %userprofile%, %programdata%, etc. For example, file:///%userprofile%/documents. This would make it possible to put links to documents in our machine that will be in a different path than the rest of the team working on the project. The documentation might be relative to the project file, but might not be exactly in the same location in each machine due to differences such as %userprofile% = C:\users\<user name>  where <user name> will be different for each team member. 

 

 

The LabVIEW String/Number Conversion Palette contains many functions to convert a number to a Decimal, Hex, Octal, Fractional, Exponential and Engineering Strings.  However there is one missing: The Number to Boolean/Binary String.  This can be replicated very easily with the following code, but should be a native function of LabVIEW.

 

Number to Boolean String86.png

There have been several ideas proposed to alleviate accidentally savings vis in the wrong version of LabVIEW. While useful, I think the main problem is that LabVIEW doesn't use the information it reads from the file to preserve compatibility. I'd like to propose here that LabVIEW introduce compatibility modes for previous releases in which LabVIEW will break a VI if a feature is introduced that isn't supported by the compatibility version. It will essentially be a built-in, seamless "save for previous" mode. 

 

By default, LabVIEW will load a VI (hierarchy) in a compatibility mode for whichever version is was saved in. If the user tries to make a change that isn't compatible, LabVIEW will alert the user and the user can tell LabVIEW whether it's ok to save to a newer version that supports the feature.

 

The level of alerts can be configurable, of course.

 

Related ideas:

Version-aware LabVIEW launcher

Add header to LabVIEW file to contain the version of LabVIEW

Display VI version in title bar

Version independent Source Code Saves