LabWindows/CVI Idea Exchange

Community Browser
About LabWindows/CVI Idea Exchange

Do you have a feature idea for how to improve LabWindows/CVI? Submit and vote on ideas now!
  1. Browse by label or search in the LabWindows/CVI Idea Exchange to see if your idea has previously been submitted. If your idea exists, be sure to vote for the idea by giving it kudos to indicate your approval!
  2. If your idea has not been submitted click New Idea to submit a product idea. You should submit a separate post for each idea. Watch as the community gives your idea kudos and adds their input.
  3. Give kudos to other ideas that you would like to see implemented!
  4. NI R&D will review ideas that have been submitted and update the status.

Note: the LabWindows/CVI Idea Exchange is not the appropriate forum to submit technical support questions.

The LabWindows/CVI R&D team is committed to reviewing every idea submitted via the LabWindows/CVI Idea Exchange. However, we cannot guarantee the implementation of any LabWindows/CVI Idea Exchange submission.

Top Kudoed Authors
User Kudos Count
1
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

There are many library functions that return several parameters. Many of which you may not care about. Some functions allow you to pass NULL to ignore some returned parameters, but many do not.

For instance:

LinFit (X, Y, NbP, NULL, NULL, &Intercept, &Err);

if you are only interested in the Intercept and error values, will crash on run with a "Null pointer argument to library function" fatal error.

The way it's currently written , you have to (correctly) declare plenty of dummy arguments for your calls.

At present CVI is missing a serious report printing facility that permits to create flexible, professional and good looking reports.

A quick search in CVI forum shows that periodically somebody posts questions about reporting but available instruments at the moment are not satisfactory in my experience.

 

As far as I can tell, a good reporting instrument:

 

  1. Should integrate easily with CVI
  2. Should be fully documented, with some example for the more typical types of reports (text + table, text + graph, text + image...)
  3. Should not rely on external programs (some customers have rigid constraints on the software installed on equipment machines; additionally, asking them to have full Word or Excel or Diadem installed only for reporting is just not serious)
  4. Should not rely on ActiveX controls to be licensed separately (same as above)
  5. Should permit to include text and graphics (images, graphs...) and define headers, footers, page numbering and other common features normally present in reports
  6. Should output data directly to the printer or in PDF format
  7. Should have a preview facility both for development and for the user (something that NIReports hasn't and will never have)

Hi,

 

there has been the valuable suggestion of a "Picture and Text" button allowing more modern buttons.

 

For all those focusing on programming instead of UI design it would be also nice if CVI could provide more default buttons ready to use as some examples shown in the image below (taken from the NI community).

 

As they seem to be already available in LabVIEW it shouldn't be much effort for NI to adapt them to CVI... - hopefully Smiley Wink

 

 

buttons.jpg 

Under labwindows CVI 2015, I develop a program using a state machine. For this I use a "switch".
The program is voluminous, and in order to browse it more quickly, it would be very interesting to allow the collapse and the expansion of the boxes in a structure "switch"

Summary:

Display more struct member information during source editing and during debug.

 

Description:

While editing source code, CVI only displays the struct members, but no information regarding the type of the member (or declaration information, line file and line).

Add a tooltip to the right of the pop-up displaying the struct members in the source editor to display this information. Similar to this picture:

struct.jpg

Also add support for displaying nested structs and even display the member values while debugging, in form of a tree, when execution is suspended (CVI currently only displays the memory address of that struct variable).

 

We have recently dropped CVI (as of 2009) as an option for use with our many data visualization applications.  The graphic performance is just too slow and clunky to put up with any longer and gets worse as we add features or try to make 'native looking' applications (that resize, animate, etc).  

 

Things like dragging/updating cursors is noticably clunky when you have more than one graph updating (linked cursors across more than one graph).  

 

Updating datasets in large tables is slow enough to watch it step through the rows.  Even using suggest tips like using ATTR_CTRL_VAL instead of SetTableCellVal, when a large table has to update... it's painfully noticeable. Basically any operation that updates a large portion of the UI.

 

Another example, try to resize and move controls (as most other applications do) on the EVENT_PANEL_SIZING?

 

I'm going to go out on a limb and guess that CVI doesn't use any graphics card acceleration? since workstation or netbook doesn't seem to make much difference in graphic performance.  

 

Our clients notice when our applications look 'clunky' and 'slow' when compared to smooth, responsive apps/interfaces from competitors.  It's often the little things that make a big difference in appearance.


Greg

 

I realize that there may be open source solutions for this but I would love a robust easy to use email function on completion. Essentially, I am gearing up to run some larger batched analysis routines on a remote workstation for our user group. The analysis time and queue length will vary from minutes to hours (hopefully not days yet). I would love the option to email the user on completion, failure, or email me if something really goes crazy.

 

The problem with the current simple email solution (unless authentication was really recently implemented) is that almost every SMTP server requires additional  authentication to combat spammers I suppose.

In CVI there are two kind of buttons:

  • the classic text button (i.e. a button with a text where you can't insert an image)
  • the picture button (i.e. a button with an image where you can't add a text)

But if you try to design a modern interface (like the MS Outlook 2010 ribbon, for example) you need a button where you can have both

  • an image statically or dynamically  loaded from file)
  • a text string localized through the UIR localizer

Even in the new CVI 2010 SP1 there isn't a convenient workaround (see here, for example).

In LabVIEW, otherwise, this kind of buttons can be easily created.

 

An interesting feature would be also a setting to set the text position referred to the picture (top, bottom, left, right).

I have had severe problems in development, due to a high synergy between my lack of attention and CVI behavior in search/replace dialogs.

I am talking about the fact that Find/Replace parameters [namely search directories] are stored at REGISTRY level, so that they remain the same across different workspaces.

Having to work with different version of the same software product, I have found myself looking into the wrong sources, or even doing mass updates, due to the fact that different projects have identically named sources and includes, just in different directory trees, and rapidly switching from one workspace

to the next I didn't "mind the step"

My suggestion, thus, is to store find/replace parameters at workspace or project level, so as to avoid the aforementioned inconvenience

Summary:

Data Tooltip should also display the name of the function, when displaying the value of a function pointer variable.

 

Description:

While debugging a CVI application, when hovering the mouse cursor over a function pointer variable, the Data Tooltip displays the address of that function, referenced by the variable.

It would be very useful in cases when you have multiple function pointer variables referencing several different variables, to have the Data Tooltip not only display the address of those functions, but the name of the functions as well.

 

Data Tooltip With Function Pointer

 

When operating graphs in Labview, it is easy to change the scale of an axis of a graph (at runtime): to change e.g. the maximum value, you select the current maximum value with your mouse, type in the maximum number you want and hit enter. To achieve the same in Labwindows, you have to use a numeric control and a button, which is a bit cumbersome. The same applies for zooming: In Labview, you can click a small button attached to the graph and select the way you want to zoom, and then just use the mouse. In Labwindows, you have to know that zooming is done using the ctrl button, ctrl+space restores the previous setting, etc. It would also be nice to be able to enable autoscale by right-clicking on an axis and having a popup menu which allows to do so (just like in Labview). And if the user changes e.g. the maximum value while autoscale is enabled, it would be nice to automatically disable autoscale (unlike in Labview).

 

So in general, it would be nice to have more comfort in operating graph controls.

 

Thanks.

Summary:

Improve the Breakpoints Window, so that breakpoints can be more easily managed.


Description:

1. Change the Breakpoints Window, from a modal dialog to a dockable window (similar to the Watch Window). Debugging can be more easy this way.

2. Allow breakpoints to be grouped, disabled/enabled and edited in user defined categories. This allows users to easily collectively manage several breakpoints at a time. It also helps the user to logically group breakpoints, depending on various issues issues that he might be working on.

3. Breakpoints could also be sorted from a pop-up menu by filename, line, hit count, etc.

 

Breakpoints Window

As suggested by Daniel (D-Cubed) an improved version of GetCVIVersion is needed in order to determine the patch level programmatically. Right now, no simple approach exists for an executable to determine if the CVIRTE is a patched version or not. For example, GetCVIVersion returns 1300 both for the patched and the unpatched 2013 release.

 

Thanks.

I know we used to have this web server feature 6-7 years ago.

I would request a function where we can export designated panel which user can control from web. Also provides an option to have read only or read/write access. Also password options.

 

Something like this.

 

ExportPanelToWebServer (panelHandle, READ_ONLY_FLAG, PASSWORD_FLAG, PASSWORD);

//This starts web server automatically and ready for connection on port 80.

 

This opens door to lots of applications which requires web control. I think LabVIEW has similar feature. (Web publishing tool)

we are daily dealing with "constant name" field's values that canNOT exceed 21 characters due to restriction on labwindows/CVI.

even the latest CVI/2009 SP1 v9.1.1 (450) has this restriction.

 

this is very tedious because our software makes use of this value to make cross searches in the registers' table of our component.

as such, if the "constant name" field's value must be trimmed down to <=21 chars to comply with CVI restriction above, this makes the cross-search unusable.

 

please increase this limit up to 32 chars (at least).

 

Pascal Janin

STMicro Grenoble France.

I would like to have the possibility to store the uir-file not as a tui-file (old-fashioned ini file), instead as a xml file.

Even after using CVI for many years I still find the DirSelectPopup confusing, because it provides a file selector, displays files, and even allows to select files...

 

I would prefer an improved/modified function such that the DirSelectPopup only shows directories, does not provide a file selector, etc.... This should make it much more obvious that one is selecting a directory, not a file...

 

Thanks!

Similiar to LabVIEW, I would like to have a "save as" option to store all files within the prj-file to a new location (maybe also for store a cws, res all mentioned prj-files).

Would make it easier to handle over a CVI-project.

Currently, there is no way to access the historical data on a stripchart.  The only way to manage this data is to maintain a separate buffer and update it whenever you add data to the strip chart, which is inefficient and tedious. Accessing data is possible for graph controls using the data attribute:

 

GetPlotAttribute (panel, PANEL_GRAPH, plotHandle, ATTR_PLOT_XDATA, &data);

 Something similar should be implemented for the strip chart, either as an attribute in the getTraceAttribute function, or as a standalone function (getTraceData, etc.)

Seriously, NI should look over the newer Visual Studio IDE's as well as NetBeans for some good ideas ...

 

Here's a few:

 

1.  When using the F2 function to find a previously marked spot, you can't easily look for the next bookmark going backwards or restricitng the search to the current module.  You can in Viusal Studio.

2.  There's no clue offered for the extent of a block - other IDE's either backlight the match braces (VS 2008) or draw vertical lines showing the block extent (a popular VB add-in tool does this).

3.  Refine the search selection to be current module, current project, or current workspace ...

4.  Allow concurrent builds of multiple projects within a workspace - VS 2008 allows this, in fact, the default is to build everything in the current solution (solution = workspace).

5.  Allow toggled commenting of multiple lines of selected text, rather than the "exclude" option that won't let you save excluded lines without commenting them - then the IDE lets you comment them, but not until then.  Same thing with un-comment.

6.  Implement a lazy background re-compile that re-compiles as you type - saves you a jillion CTRL-K keystrokes to do it yourself.  Couple this with near real time notification of compile errors as you type.

7.  Fix the &*!)$@^ CVI linker to allow 16 byte alignment.

8.  Implement full C99 (MS hasn't done this though and apparently never will).

9.  Dim conditionally compiled source that isn't going to compile - nothing is more irritating to me when editing than forcing yourself to ignore conditionally compiled code that's not going to compile.  It's tricky to make this work right but it'd stil be worth a try.  VS 2008 kind of does this.

10. Provide a pull down menu of functions within a module - this is better than the CVI source browser which is a PITA to use - ti's no wonder to me that this is the most requested improvement so far.