LabWindows/CVI Idea Exchange

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

Summary:

Implement Swap Lines shortcut key (Alt+Up/Down).

 

Description:

Often, I need to swap two lines of code in my source file or maybe just move one or several lines up or down inside my code.

In order to do this, you normally have to do a cut and paste in order to move the lines.

 

Having a Swap Lines feature in the CVI source editor could significantly speed up this process, especially when you have to handle big chunks of code.

The Swap Lines mechanism could be triggered by the Alt+Up/Down.

This feature should also support multiple lines selections.

Hello,

 

I miss an event that is fired whenever an axis, set to autoscale, changes its minimum/maximum values.

 

Imagine the following scenario: On a xy graph, I have several plots and also some 'regions of interest' that are visualized either by lines or rectangles. Now, if a new plot is added that results in a different axis scale, I also need to redraw my regions of interest. At present, this requires bookkeeping of xmin, xmax, ymin, ymax and comparing the current axes ranges with the previous ones. It appears to be simpler if one could rely on a suitable event that is fired whenever the axis range is changed.

 

Thanks Smiley Wink

Hello,

 

I would consider it quite convenient having a simple CVI function, similar to GetPanelDisplayBitmap, providing a true screenshot image of a CVI panel.

 

As discussed here, the CVI function GetPanelDisplayBitmap does not provide a screenshot image of the panel, i.e. the bitmap lacks all OS-specific features (color theme etc.).

 

For backward compatibility reasons, NI should provide a new function, returning a bitmap that looks the same as if I would have pressed Alt+Prt Sc

 

 

Thanks!

Presently there is a context menu for menu elements to generate / jump to a menu item callback. These items are not present in top level menus that have a callback function installed (those with the exclamation mark appended), where only 'Edit' item is present. It would be handy to have these options added to those items too.

 

See this image:

ContextMenuOnMenus.PNG

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.

The active configuration (Debug, Release, custom ones, ...) is shown in the bottom-right corner of the status bar (see attached config01.jpg).

I think that it would be better if this would be a menu ring that can be used to change the active configuration, without having to select Build >> Configuration >> xxxx (see config02.jpg)

 

 

Download All

It has been suggested much earlier here, but obviously passed out of mind:

 

When using 'Go to Definition' (CTrl+I) while in release configuration, CVI tells that no source code information was found for the identifier '...', because 'Browse information is not available in the Release configuration'... (still true for CVI2010)

 

This can and should be improved!

 

And it might be a good opportunity to also add the reverse process, 'Goto Declaration', suggested here

Using SetTableCellRangeVals to update several thousands table cells is very effective.(better than using ATTR_CTRL_VAL)

I miss similar function for set atribute values in the same way. In example:i need  to set text to be bold or  set background color for each table cell separately.

Ithik that usability of SetTableCellRangeVals will be better if SetTableCellRangeAttributes will be avivaible because there will be the same program approach/logic for values and attributes,instead of mixing multiple cell vallue update and one by one cell attribute update.

 

Hello,

 

I am glad that the event EVENT_MOUSE_WHEEL_SCROLL was added some time earlier to CVI. In principle, now it is possible to operate numeric controls, ring controls, etc. not only via keyboard and mouse, but also via the mouse wheel. This allows very smooth operations, great!

 

However, the integration level is inconsistent: While pressing the ARROW_UP key on a selected control will increase the value displayed in the control automatically, i.e. without the need of the programmer to react to a specific event, achieving the same result with the mouse wheel requires adding code to each callback. This is possible, but inconvenient as it adds a lot of overhead.

 

Right now, in every callback of a numeric or ring control that shall support the mouse wheel I have the following lines:

 

    switch ( event )
    {
        case EVENT_MOUSE_WHEEL_SCROLL:
            if ( eventData1 == MOUSE_WHEEL_SCROLL_UP )
            {
                FakeKeystroke ( VAL_UP_ARROW_VKEY );
            }
            else if ( eventData1 == MOUSE_WHEEL_SCROLL_DOWN )
            {
                FakeKeystroke ( VAL_DOWN_ARROW_VKEY );
            }

            break;
        case EVENT_VAL_CHANGED:
    ...

 

Hence I suggest

  • either to treat a mouse wheel on a selected control like an ARROW_UP or ARROW_DOWN keypress (personally preferred)
  • or to add one more attribute allowing to treat a mouse wheel on a selected control like an ARROW_UP or ARROW_DOWN keypress. In the UI editor, then there should be a checkmark (allow mouse wheel support), similar to the check marks initially dimmed etc. This attribute could be useful if there are concerns of backward compatibility - may be some users don't want to support the mouse wheel...

 

Thanks!

 

Make sure ALL the function panels use the right controls 

For example in the CVIDynamicMemoryInfo function panel below, the "Options" parameter should not use the String Ctrl.

Instead it would be "safer" to use a list box, a ring or whatever make sense to display the two available choices :  DYNAMIC_MEMORY_SHOW_ALLOCATED_MEMORY or DYNAMIC_MEMORY_SHOW_ALLOCATED_MEMORY_SUMMARY


This would help to reduce the typo errors etc.

Regards, 40tude


fp.png

Ok, I guess everything is in the title

Open a source code where you fill an array

Put a breakpoint

Click on the name of the array

SHIFT F7

I would like to see the display in the bottom part of the IDE, not in a window

 

Regards, 40tude 

Hi,

 

Almost all function keys found on my keyboard have a corresponding keycode that can be used e.g. in FakeKeystroke () - except 'Print Screen'. It's not obvious why this one has been left out, it would be convenient to also have support for this key, e.g. for generating a screenshot or a printout.

 

Thanks.

If you have, say, three controls called MAX_1, MAX_2, MAX_3 arranged vertically. If I select them all, copy and paste, the new controls appear as MAX_4, MAX_5 and MAX_6 but in the wrong order to what you would expect.

i.e.

MAX_1

MAX_2

MAX_3

 

becomes

 

MAX_1

MAX_2

MAX_3

MAX_6

MAX_5

MAX_4 

 

A similar issue occurs with assigning a group of controls to a control array, they always seem to be in the wrong order, usually reversed.

I find it desirable to have the UI engine run, in debug mode and only optionally in release mode, a duplicate check on keyboard accelerators on controls (like labels or command buttons, as in __Quit being rendered as Quit and enabling the user to press [Alt]+[Q]). All too often, on bigger panels, when adding a feature, I find that a shortcut/accelerator is already assigned.

 

Note that the UI editor per se isn't sufficient while controls can be added programmatically.

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 

Hello,

 

I have a minor but well-hung suggestion: In case that one is changing the workspace to a different project while the Resource Tracking window is open, this Resource Tracking Window should be closed.

 

As discussed in some detail here the Resource Tracking Window should only show up if there is a memory leak - so after a new project is loaded CVI can't know if there is a memory leak, and hence it should not cause confusion by staying open 😉

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:

 

autoindent.png

 

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.

In the process of developing a function one typically has to change the number (and type) of parameters. This has to be done both for the function and the function declaration. Hence I would consider it useful to have an option 'Goto Declaration'.

 

Right now the IDE provides the right click menu 'Goto Definition', so if I change the declaration it is easy to jump to the function and adjust it accordingly. It would be nice if the reverse process would also be possible...

 

Thanks.

Hi,

 

In an application I allow users to select

  • one file (using FileSelectPopup)
  • one or more files (using MultiFileSelectPopup) or 
  • all files in a given directory using DirSelectPopup.

 

Unfortunately it is not possible to select two or three directories. Of course this can be emulated using MultiFileSelectPopup and marking all the files in all directories - but without the comfort of simply clicking a few folder names.

 

I thus would like to see a companion function MultiDirSelectPopup allowing the selection of several directories, in close analogy to MultiFileSelectPopup.

 

 

Thanks!

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!