LabVIEW Idea Exchange

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

When I Right click a wire and tried to insert a "Replace array subset" its getting inserted properly but the same doesn't work with the delete from array and I had lot of instances where I have to insert a "delete from array". I am proposing this after searching this forum but If already proposed then I'll try to give Kudos for that.

 

Replace array full.png

 

So without broken wire it would be nice to insert a "Delete from array" function.

Many of the property accessor VI creation scripting is currently hard coded, or not easily changeable. There might be some conventions around how to name a property accessor, or about the usage of the error handling case structure inside the accessors. It would be nice, if there was a user settable option for these.

The things that I have to change often:

  • The read VI to Get, the Write VI to Set
  • Front panel controls and indicators to the default style
  • Removal of the error handling case structure
  • Renaming the Error in (no error) to error in (this might be solved by the global ini setting though)
  • Organizing the labels to the left for controls and right for indicators on the block diagram
  • Cleaning up the front panel, with the Ctrl+U shortcut, while there is a scripting code in the quick drop to arrange both the front panel and the block diagram, by default Ctrl+F

To fix most of these, I modified the scripting library, for all the templates and the global defaults containing the name for read and write VIs.

It would also be nice if we could override the scripting class as a whole, in order to customize the end result, without needing to go over trough VI again.

I would like if there were a default value for string controls that would be greyed out, but the string value would still be a blank string. This could be useful in showing example text for text that should be entered in a specific format. I have shown an example of the (visual) functionality and the code that goes along with it. This code could be greatly reduced if there was a key focus event added, but even in this case, the string control value itself is still not an empty string. I could also see this being beneificial in listboxes, multicolumn listboxes, tables etc.

 

When right-clicking on a control or indicator from the block diagram, there is no replace option:

carls___0-1590685761815.png

Instead, you need to go to the front panel and then replace from there.  It'd be useful if you could replace directly from the block diagram.

 

(This is particularly useful in situations where controls/indicators are hidden on a GUI)

This is a small thing but it drives me nuts.  Whenever I place a case on the diagram, I always need to move the case seletor up or down so it aligns with the source output that will be driving the case.  But, the newly placed case always has the seletor right in the middle of the left side.  This is also where the drag hover control (?) is located.  I seem to at least 50% of the time grab this drag control when I want to grab the case seletor and move it.  If the selector was just placed above or below the middle of the left side, this issue would go away.  I suggest placing it 1/4 of the way from the top, since most of the time the source of the selector is above the midpoint of the case block (at least in my code).  YMMV.

 

I know it is a nit, but it is low hanging fruit to fix and it is annoying.

A couple of recent ideas regarding the VI Hierarchy window are good, but do not go far enough, in my opinion. I would like to see the VI Hierarchy window annotated with a lot more status information about VIs, including:

 

  • A glyph showing if Execution Highlighting is enabled
  • A run arrow on any VI that is running top level.
  • A path from the top level VI through any currently executing subVIs (the path may be forking as there may be multiple subVIs running in parallel)
  • That path would have temporary lines going to VIs that are invoked using the Call By Reference node (as opposed to reordering the hierarchy tree to put such VIs as subVIs of the caller)
  • A glyph showing any VIs that have breakpoints on them and a different glyph if the VI is actually stopped at a breakpoint.
  • Reentrant clones of VIs, so that call chains can actually be seen, including the ability to double click on a particular reentrant clone to open its front panel
  • Any other execution state information that can be easily expressed as glyphs and highlighted connections among VIs and/or other file types shown in the hierarchy window (open to brainstorming).
  • Whether debugging is enabled or disabled on each VI

The VI Hierarchy window has already been updated in LV 2009 and 2010 to show all the connections among different files and resources. Finishing it out to show the full state of the system would make it a powerful debugging tool.

Aesthetic issue: thick wires connected to Select inputs show as ugly corners behind the triangle icon, probably a result of the underlying connector pattern.This does not happen for other triangular blocks, at least not up to a reasonable wire thickness (to make a wire thicker, just make a N-dim array of something).

corners.png

I've been using block diagram cleanup extensively over the past year in an attempt to speed up my LabVIEW programming.  I am definitely faster as a result of using the feature, but there are still some VIs that I have to arrange myself, because diagram cleanup's arrangement is unacceptable.  So the feature still has a ways to go in making all my diagrams acceptably clean.  It's my understanding that there are many more configuration options in diagram cleanup that could potentially be exposed to the user, but I think an easier way to conform diagram cleanup to my standards would be to point it at a folder of VIs that I have personally deemed "clean", and have diagram cleanup mimic the arrangement in those VIs when cleaning up other VIs.

 

As an example, I am ok with input tunnels into a case structure overlapping somewhat, if those tunnels are coming straight from subVI output terminals that are close together.  Diagram cleanup insists on adding space between the tunnels so that they don't overlap, which results in unnecessarily crooked wires.  Ideally, I would have VIs in my "clean" folder that have slightly overlapping tunnels, diagram cleanup would discover that I'm ok with this, and subsequent cleanups would allow this arrangement.

For pilot plants, we make P&ID's, the plant's interface (not PID) with decorations.

 

Now it would be nice to have more then two widths. But the real pain starts when we need to draw tracing. The standard for this is a dashed line. There is no way to put a dashed line on the frond panel! Amazing, since we're using a graphical language!

 

Now I have to make a line in powerpoint, but it can't be resized. Or use a picture control, but that adds code and complexity. Or put 200 tiny solid lines evenly spaced on a line.

 

This is all I'm asking for (inthis post anyway):

Right click.jpg

Line endings would be niced too. Arrow, dot, etc. Like line endings in office.

 

I tried searching for a similar suggestion but couldn't find one but I would bet that this has been suggested several times.

Why is the routing to multiple adjacent array terminals (or similar) so terrible ? The top Build Array shows the standard routing chosen by LV when wiring from a group of refs starting at the top. Starting from the bottom isn't any better. The lower Build Array is what I always change it to !!  Why is this not the standard routing ? 

I'm sure all of you VI meisters with OCD can sympathise.Smiley Wink

 

Wire routing.JPG

Hi,

 

Currently I didn't see any option where I can just select particular control or indicator and convert it from one type to other.

Example: I have one classic control and want to convert it to other modern or System control type.

It will be great if I am able to do that just on right click.

As per my knowledge currently we need to replace contlol which I selected to other type for converting it. It takes lots of time if I need to do this for multiple controls or indicators.

 Any thoughts on this?

Hello,

 

I propose a new floating/Dockable Text formatting tool for editing the FP controls/Indicators as shown below.

 

untitled.GIF

 

 Presently it takes multiple iteration to make a control Label to justify, bold,change the color , change the font etc.

 

This new floating bar can have the following features like

 

->Select font

->Text color

->Text Size

->Alignment/Justify

-> Bold, italic,underline

->etc etc

 

 

Also this floating bar can be put as part of the existing tools window here (circled in RED)

 

1.GIF

 

or as a replacement for the "Application font" selection ring

untitled.GIF

 

 

Regards

Guru

Now that the SSP package is delivered on USB instead of DVDs (good stuff!), I have a minor request: Could you have the USB label include a release/version name on its label?

It might add too much of a cost depending on how you get them customized, but if that is not an issue it would be very practical to be able to see what the USB contains by its label (as we could with the DVDs).Smiley Happy

 

On a side note: Many companies have strict regulations on the use of USBs, and the need for such has increased with weaknesses like BadUSB. Perhaps NI could state something about how the USB sticks they send out are protected, either in the delivery package, or just as a statement on ni.com? That way people who need to convince their IT departments to allow them to use the NI USB sticks will have something to show (I'm sure you will have to add some legal disclaimers there as well , but that's OK).

Hi.

 

SubVIs are sometimes easily missed in a block diagram when you glance over it, and their current configuration is impossible to determine unless you open up each subVI and examine its VI Properties. I suggest a quick way to highlight and configure subVIs within a BD. Consider this section of code:

 

SubVI_Clean.png

 

Then one could hold down the ALT-key (or some other easily accessible interface) to get this view, which gives you an interactive highlight glyph overlay on top of each visible subVI. Letting go of the ALT-key returns your BD to normal of course:

 

SubVI_Alt.png

 

The interactive highlight glyph gives you direct access to this for each subVI:

 

- It highlights where in the BD there is a subVI.

- It shows if the subVI has unsaved changes.

- It shows the runtime priority of each subVI (more on that later).

- It shows the reentrancy mode of the subVI (as well as inlined/subroutine state).

- It highlights any unwired required inputs of that subVI.

- It shows if the subVI has debugging enabled (which can have a negative impact on performance).

- It illustrates if the subVI is otherwise configured for optimum performance (more on that later).

 

More on the subVI highlight glyph:

 

 

SubVI_Highlight_Details.png

 

I imagine tooltips might pop up containing additional info if you hover the mouse pointer over the elements in the glyph. I think clicking the "unsaved changes" asterisk should save the subVI with all the bells-and-whistles as if you opened it and did CTRL+S on it. I think clicking the "Debugging enabled?" element should toggle the Allow debugging property of the subVI directly. I think clicking on the colored frame should open the reentrancy setup dialog of the subVI. The colored icon frame is part of many LabVIEW style guides for icons btw, but not everybody is familiar with them, and thus don't use icon frame colors like this. Also such colors might clash with other style guides - class icon templates for instances, or company logo colors. That is why I propose the reentrancy setting being part of this subVI highlight glyph.

 

More on subVI priority:

 

I have earlier proposed a much simpler way of defining subVI priority with a number, which is along the lines of how it's defined in a timed structure, instead of the current way of setting Priority and Preferred Execution System in VI Properties (which many people find hard to figure out and keep mixing it with timed structures). That idea can be found here. This priority number is what I propose is located on the subVI highlight glyph. Clicking on this element in the glyph should open the subVI's Priority setup dialog directly.

 

More on the "optimum performance" element:

 

I haven't really thought deeply about this element, but I see it as an indicator of if "all the rest" about the subVI is optimized for best performance and least runtime pitfalls. Stuff like making sure Enable automatic error handling and Auto handle menus at launch are disabled. Anything outside of the optimum will light this indicator. Clicking on it should open the subVI's VI Properties dialog or similar.

 

What do you think?

 

Cheers,

Steen

While LabVIEW supports units (partly), the lack of ability to display them nicely in the Unit Label can make for ugly front panels where they're used.  A couple of small changes that would improve things would be:

  • to render "^2" as "²" and "^3" as "³" (that covers probably 99% of unit exponents used)
  • to render "u" as "µ"

The Unit Editor doesn't need to change, nor the way units are typed in, but these changes could then be automatically applied.  All three characters exist in most fonts.

 

Let's assume the following two classes. Prop 1 is of type Class 2.lvclass. Both data members have their corresponding property accesors created.

 

Class1     Class2

 

 

I suggest simplifying the access to the nested class properties using dot convention similar to cluster elements. Like this

 

Read

 

 

 

 

 

 

 

 

 

Write

Traditionally LabVIEW has treated Strings and Unsigned Byte Arrays as being the same. This is nowadays a little unfortunate as all UI systems use some kind of encoding so Strings are not generally interchangeable with Byte Arrays anymore.

In trying to stay for binary data as much as possible with Byte Arrays instead of Strings, since that would be the sensible thing to do, the Unflatten from String (which should rather be called Unflatten from Stream) puts a totally unnecessary wrench into this.

I always had hoped that LabVIEW would change the default binary data stream format to a Byte Array at some point but this while it would be possible, is a fairly pervasive change that would require many backwards compatibility decisions that I unfortunately don't see NI going to spend time on anymore. This change however would be a very small change that has zero backwards compatibility concerns and almost no work to add to the existing LabVIEW software.

This same change has been for instance made to the TCP Write node some versions back already and could be also applied to the VISA Write! Smiley LOL

facf.jpg

 A picture is worth a thousand words.

This new button should finish the actual VI and close it instantly.

Hi all,
For a lot of reasons, I have to work with several LabVIEW versions.

My biggest fear is to save something in a later version : projects are quite big, and a save for previous version is hard when using terce parts (such as OpenG, JKI, etc.)

My whish would be to have a warning message when I save a vi in a new version, such as :

"You are saving a 8.2 file in 11.0 : do you want to continue ?"

 

 

Have a nice day !

This is a follow through for Zekasa's Idea posted here. It was suggested that the function be a separate one, which I agree. I would like to see this in LabVIEW's basic package, without adding things onto the install, or coding it.

 

Search 1D Array Until Done.png