It would be nice to be able to set the ON and OFF values on toggle buttons the same way that they can be set for binary switches, instead of having them hardcoded to be 1 and 0. Thanks..
Quite often I need to look at one project source code while working on a second one
So, I use Windows File Explorer, find my project of interrest then double click on the .cws file
In this case, CVI load the cws file in the running instance of the IDE
This is not really what I want
I would like CVI opens the workspace in a new instance of the IDE (similar to what is done when, in a function panel help, you click on the "open sample code" button)
For what I remember I believe the above behavior is the one adopted by Visual Studio Express 2013
So far, I must remember to run a second instance of CVI first and then drag'n drop the cws file
PS : drag'n drop a .cws or .prj should work on the CVI Welcome page
While it is possible to programmatically add a menubar to a tab page with LoadMenuBar, it is not possible to do that in the UIR editor.
Sometimes I use a tab control to display different scenarios to the user hiding tabs so that he's not aware of the pages not shown: this permits to have a single panel with all elements properly placed and designed on the different pages and programmatically choose which page to display depending on operating conditions or other characteristics. In such a case the tab page behaves like a "normal" panel, but while you can have a standard child panel with its own menubar, you cannot add one to a tab page other than programmatically.
It would be a handy to be able to add a menubar to tab pages too in the editor.
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
in many of my applications, I have to verifiy some conditions recursively and they can generate an error, for example when checking the presence of a file (see below).
Imagine to have a task doing this control and imagine the task is scheduled every 5 seconds or less.
This means you'll get the popup window continuosly and it makes almost impossible to debug your code.
I know I can reduce the Debugging level from Extended or Standard to No RunTime Checking in order to block that popup window, but sometime I need a deeper level of debug to fix my problems.
What do you think about adding a third button to ignore, for the current debugging session only, the run time errors generated from the same instruction in the same thread?
More, what do you think about adding a fourth button to ignore, for the current debugging session only, the run time errors of the same type?
In these days, I have been debugging a complex application(almost 12,000 lines of code) and it was very hard to do a map showing the relationshing at least of some critical functions.
For this reason, I consider that a very helpful debugging tool could be to add in LabWindows/CVI, a window like the VI Hierarchy in LabVIEW; that shows the relationship beetween the functions inside all the module in a CVI project. This windows will show which functions calls a particular function.
Here, there is a very simple example:
The current features of the UI editor with respect to editing tooltips are VERY limited. I am not complaining because one has to start somewhere
Instead I am adding yet another suggestion on this subject
Please provide the possibility to enter tab stops, see my comment here
Because this is such a modest request, please also consider this one
because I had installed CVI2010 on a brand new Windows 7 machine, I was curios to find out about all the service processes running on the system.
It seems that there are quite a few NI services that start after log-on. Some of them seem superfluous, such as the Lookout Citadel service (no LabVIEW, no Lookout installed), but due to the lack of any information I did not bother trying to stop them
1) NI should critically review the services and only start the services that are absolutely needed.
2) Services that are optional might be selected by a checkbox during installation or from the Options / Environment setting
3) NI should provide some documentation / explanation of each service and why it is needed.
usually I work on my projects on two different computers (home/work or development/lab). I would like to see a possibility to more easily move my project back and forth, say by providing two new menu commands
File / Import Project and File / Export Project
I imagine that the Export command generates a zip file consisting of all files required to build the executable (and a distribution) and also exports the editor preferences (probably without the window positions because different computers may have different screen resolutions) etc. The Import command then should load the *c., .cds, .cws, *.fp, *.h, *.prj and *.uir files, import the editor settings, adjust the library menu and load any instruments.
Display more struct member information during source editing and during debug.
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:
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).
It would be great if NI could provide standard translations of the NI runtime message file msgrte.txt in commonly-used languages.
Whilst we can get translations done ourselves, it is normally done by translators who have little knowledge of the runtime context so the quality is rather variable; also, I get the feeling that we are duplicating effort that may have been already spent elsewhere.
If it helps, I for one would be willing to pay for a decent translation.
right clicking in the source code brings up a popup menu, see below.
Some of its items are dimmed or adapted to the context. For example, 'Format File' versus 'Format Selection'. This is nice and as I would expect it for a context menu!
Unfortunately, there are some entries that are available even if they are more ore less superfluous.
For example, 'Edit DAQ task' shows up even if no DAQ is installed. Selecting this menu entry only shows 'This feature requires DAQmx' - so why not dim it if no DAQmx library is available?
The same is true for 'Edit IVI Specific Driver Attributes...' and the IVI library.
But also 'Recall Function Panel', 'Browse Identifier' and 'Find UI object' don't care about their context.
'Open Quoted Text' for example, does! (which is good)
So I would suggest to have the popup menu act more consistently and only provide commands that are meaningful.
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.
The option tooltip is very good feature what is the problem is it is only for the controls. If I want to show tooltip for listbox then it is fine but what if someone wants to show tooltip for active rows. It simply doesn't.
This is very basic but one of the disadvantage of labview over .NET.
This needs to be fixed
I noticed that LabVIEW has two ways to download instrument drivers: direct downloads from IDNET and through the NI Instrument Driver Finder.
[NI Instrument Driver Finder Menu Option Image]
[Alternative NI Instrument Driver Finder Menu Option Image]
When downloading drivers directly from IDNET, the file must first be unzipped and then placed in the <National Instruments>/labview xxxx/instr.lib folder.
The easier option when working with LabVIEW, the NI Instrument Driver Finder, downloads the files, unzips them, and instantly gives you access to example code or palette of VIs for communicating with said instrument.
If possible, could we add a similar tool to LabWindows CVI? It would be nice to have a menu option which would open a CVI Instrument Driver Finder.
The interface could then allow users to easily find a driver, download it to their Instruments Folder, see example code and start work.
Since probably 30% of all LabVIEW adoption comes from driver downloads and driver development, maybe this is an investment of resources worth looking into?
[Image of NI Instrument Driver Finder]
[Image of Instrument Driver Finder example code, project access, and palette access]
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
While developing code, having correct indentations is very helping in making sure you have all the right brackets and to see where your structures are nested easily. Sometimes, whether by copying and pasting or just rapidly getting out a section of code, a whole segment might have incorrect indentation, which is tedious to correct.
This is where an auto indent tool could be a big time saver. From somewhere like the Edit menu, where similar functionality is located in other development environments, you could select Format Selection to do a highlighted section or Format File to do the whole file. Then, CVI can format the tabs for you:
Although this is a simple example, auto indent becomes even more useful when you have multiple nested structures and decide, for instance, to add or remove another nested loop.
Customer who has used CVI for years and likes it was looking a Mstudio for the reason that a lot of his new engineers can't or don't do the regular C programming. He likes Mstudio as an idea but, with the extra cost of adding MS Visual Studio and dealing with a they support/We support issues of having two SW pkg from 2 different companies gives him pause about purchasing. He stated he likes CVI because if there is an issue (even if rare) he know that NI will help to figure it out. I let him know I'd provide the feedback.
Using CVI I can't find an easy way of moving inside a source code file.
Based on my experience with other C editors, I suggest these 3 little features that I think are really useful:
I have thease features in an open source C/C++ editor (Code::Blocks) I use for other projects, and I think they're really useful to reduce the coding time.
When you have large source files with a lot of functions, with CVI is't difficult to easily see where you are inside the file; moreover it's quite common scrolling the file jumping from a function to another.
Improve the Breakpoints Window, so that breakpoints can be more easily managed.
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.
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.