LabWindows/CVI Idea Exchange

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

One nice feature of menu bars is their capability of grouping different items using a separator.

 

Having ring controls with many text entries it would be nice from a user perspective if these many entries also could be grouped using one or more separators.

 

What would be also convenient is the ability to dim or hide a specified entry; right now it is possible to rebuild the ring programmatically with one or several entries less (or more), but this is some overhead that could be minimized by simply hiding or showing an indexed entry.

Adding to the many pending feature suggestions for tooltips (here, herehere, here and here) I'd like to suggest one more: please make tooltips more beautiful, i.e., drawn with rounded rectangles and with a shadow, see below.

 

tt.png

CVI currently provides a way for alligning controls (using the dotted matrix). But, with large UIs, this method is inefficient and users must align controls over large distances by hand from the Property Browser. I propose an upgrade that would help users achieve alignment by drawing lines that unite the control being moved and any other control that happens to be close to alignment with it (Figure 1).

This feature would increase usability and productivity (which seems to be decreasing by increasing the size and complexity of UIRs).

 

 

Visual Studio's alignment for the C# Interface Editor

Figure 1: Control alignment in Microsoft's Visual Studio 2010, for the C# interface editor.

The place where tooltips are needed most is on menu bars, since the text you can put there is fairly limited and right clicks can not be used to provide help as can be done with buttons. I would love to see this added to CVI soon.

Hello,

 

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 Smiley Wink

Instead I am adding yet another suggestion on this subject Smiley Happy

 

Please provide the possibility to enter tab stops, see my comment here

 

Because this is such a modest request, please also consider this one Smiley Wink

 

THANK YOU!

Starting from CVI2010, the User Interface Browser and the Attribute Browser are both located on the right of the UIR editor in the Workspace window.

 

I'd like to be able to hide these windows when required: when working on small screens like when you use a laptop these windows occupy a lot of space even if you reduce their size at the minimum.

 

In addition, the ability to choose which window to display on the bottom left could be a good option: up to version 2009 the bottom left side of the workspace window switched between the library tree (source editor) and the attribute browser (UIR editor).

 

Ideally, while in the UIR editor I would like to be able to:

  • Choose whether to show some window on the right side or not
  • In case nothing is shown on the right, choose whether to have the attribute browser, the library tree or the user interface browser in the bottom left angle

Personally I don't like the "unsorted" look of the libs as it is now. I always create a libs branch and put them there. This way the branch can be collapsed and saves space I don't have to scroll when having multiple projects in one workspace. Libs are files I don't edit that often so I don't have to see them all the time.

For every other file type CVI "knows" at the Add Files to Project sub menu, there is automatically a branch created - but not for libs.

When using the UI functions, a neat feature is the ability to pull up a dialog of valid control IDs when specifying the control:

 

1.png

 

clicking the elipses displays this dialog showing all valid control IDs:

 

2.png

 

If you are using the function panel however, you cannot access this dialog and you are on your own for figuring out the correct control ID:

 

3.png

 

I think we should add this functionality in the function panel for any function that has a control ID parameter.

 

 

I added the tab control into panel to my project. Overtime, I added 20 items into the single Tab Control. But since were so many items in the tab control, I decided to re-arrange items (indexes) in the tab control by either moving them left or right depending on the alphabetical order. But here is my problem.

 

Since I re-arranged the items (indexes), the indexes have all changed for all the items. Now I have to go everywhere the function GetPanelHandleFromTabPage is called and manually update the index numbers to match panel handles for the index. There are 20 different places where this could occur. The number of items (indexes) on the tab control could grow even more and may have to be re-arranged again in the future. Just a big pain.

 

Suggestion for improvement: Provide a another function that can obtain the index of the item on the tab control dynamically. This could be done by using the "Constant name:" issued in the edit tab panel of the edit tab control. So if the items (index) inside the tab control are re-arranged then the index value for that item is carried with the new index value.

 

Also the index would be included in the header file generated by the panel editor for CVI so that now the index value can be used thus eliminating the hard coded the index value.

Hi,

 

designing a screen layout I frequently encounter the wish to have not only rectangular (and circular) decoration elements, but also one of the type shown below.

 

decoration.jpg

 

Only the upper right rectangular shape can be realized now, while the more complex shape on the left is what I would like to see added in the future.

Instead of two parameters width and height four parameters would be required (two heights and two widths), may be even a fifth parameter specifying the orientation of the shape: as shown, mirrored in x, mirrored in y, mirrored in x and y.

 

Without doubt grouping control elements is useful; unfortunately these groups may differ in the number and type of control elements.

 

Thanks for consideration,

 

Wolfgang

I'd like to be able to use custom backgrounds for controls like knobs, dials, and gauges.  I'd also like to be able to change the needle image as well.

Hi,

 

in my application, several panels exist. Their size is fixed and can not be changed by the user, but they can be minimized and restored by the user. It would be nice to have the possibility to programmatically react to these MINIMIZE and RESTORE events. Right now, I have to poll the panel zoom attribute.

 

Thanks!

 

 

A useful CVI GUI tool would be the addition of sideways tree-style tab control.  I am surprised to see no mention of it in the forums.  Is there already some solution for it, or perhaps some Active-X that can do it?    Nevertheless, it would greatly modernize the GUI arsenal.

Hi,

 

Currently, when a CVI application is deployed on a PC with a DPI setting different than the development machine, the application will generally not look like how the programmer intended as the fonts get resized while the other UI elements do not, leading to overlapping text, awkwardly resized controls, etc.  One way that DPI scaling could be implemented in CVI would be to use the same functionality as the 'Scale Contents on Resize' option for panels, where internally CVI could resize the panel and use this scaling to rescale all the UI elements (including fonts) on the panel to the appropiate size per the Windows DPI setting.  This would make the panel look a lot closer to what the programmer intended and would generally make most applications usable with different DPI settings without any additional work from the programmer.  Per my other suggestion, I would request that the programmer has the capability of disabling this functionality so they can handle DPI scaling themselves should they wish to do so.

 

Thanks.

Attaching controls to a splitter in the UIR editor can be a pain if the panel has several controls on it. I'll make an example using CVI example SendMail: trying to add a vertical splitter and attach all controls to it in order to rearrange the panel when the user resizes it. This is the original panel, you can see the vertical splitter in the upper right corner:

 

SendMail.png

 

 

First of all, if several controls are selected, they overlap in the right panel of the editor in a way different from the original panel. Here you can see that the decoration indicated by the arrow overlaps two string controls that I'm not able to operate on to select desired  attachment mode. This means that I need to proceed to attach controls in steps, hoping new controls added are not overlapped by previous ones. Alternatively I can move controls in the right panel to encover hidden ones, but this ingenerates confusion as controls are no more in the original position besides being a waste of time.

SendMail_Overlap.png

 

Second item: if selected controls are on the "wrong" side of the panel, they are all grouped (and possibly overlapped) on the closest boundary of the right window. See this example: Send and Quit buttons are only partially visible on the lower left corner of the right window and additionally they are overlapped (in the small box how they appear if I select one of them and move it upwards):

SendMail_Arrangment.png

 

 

I suggest that this function is improved with these additions:

 

  • Honour the z-plane order of the original panel when controls are selected for attachment and moved to the right side
  • Maintain original controls position when moved to the right panel. Consequently:
  • Have both scrollbars enabled in Controls on the Splitter window in order to navigate to the controls; at present only one of them is enabled, whether vertical or horizontal depending on the type of splitter

The regular graph for analog data has the capability to zoom. However, in an application where you may have a large amount of digital data, the digital graph has no native zoom features. Current workaround could be to have an input for the min and max and use the SetAxisScalingMode function to change how much of the data you view. However, it would be helpful to have the same zoom features as the regular graph.

 

As discussed here earlier I am using tooltips that show 'dynamic' information, e.g. the permitted data range of the respective control, available user actions..., These frequently depend on several other controls and parameters.

 

Right now, all other affected controls etc. need to call a function to re-build the tooltip text, and to more than 90% this is wasted effort because the tooltip text is changed again before it may get displayed...

 

Thus I would like to suggest a 'dimmer callback', similar to the menu dimmer callback. This 'tooltip dimmer callback' should be called just before the tooltip is going to be displayed, allowing to build/update the tooltip text only when needed.

 

Thanks

Hello,

 

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.

 

Thanks

 

popup menu.png

It would be nice to be able to add some comments on UIR objects in the editor.

 

I'm mainly concerned about versioning: sometimes I happen to apply some modifications to existing panels / objects that are not self evident and I run the risk of forgetting them while revising the project after a couple of weeks.

As an example, I have recently modified some string and text message controls using "Greek" character set so that I can embed omega and delta symbols in them. At present I have a text file describing all modifications I have done in the project, including those in the UIRs, but it means I need to revise this file when I open the project again. It would be good if I could  add a comment on those controls and have a visual reminder of it directly in the editor (e.g. with a little symbol like when you add a comment on an Excel cell) so that every time I open the UIR I see the presence of comments at a glance.

Hello,

 

I miss a display format that will automatically switch from Floating Point to Scientific if the displayed number exceeds a certain threshold.

 

Lets say, 1 234 should be displayed as 1234, but 123 456 789 123 456 789 should be displayed as 1.2345 E17 because typically such a large number of digits is not meaningful. This display format is considered to be useful both for regular numeric controls but also for graphs, because right now very long numbers increase the frame size and decrease the remaining graph size. Of course, one could do this automatically, after plotting a new plot analyze the new plot for maxima and minima and then adjust the display format accordingly. What I suggest that this is done automatically, similar to the good old 'G' formatting option.

 

As a consequence, this new display format would require an additional attribute when to change from Floating Point to Scientific and vice verse, say NUMBER_OF_USEFUL_DIGITS. Default might be 6 digits.

 

I consider this wish important because right now, when plotting functions on a graph where the range is not known in advance, this may result in much too many displayed digits. Even 17 digits (resolution of double) will not be meaningful in most cases, while for numbers such as 12.5 there is no need to use an exponent...

 

Thanks a lot!