Copyright Â© 2014, Brian Hoover (hooovahh)
Brian Hoover (hooovahh)
LabVIEW 2011 and up
Windows only (likely XP and newer) due to .NET dependency
This is a toolbar class designed to make toolbars in the UI, which appear more like normal toolbars seen in Windows.
The idea for this came about because I wanted a way to make a simple toolbar, but didn't want to have to make all the button states for mouse not over, mouse over, mouse down. I just wanted to provide one PNG file for a button, and have it take care of how the button should look.
I also wanted a way to handle when there are more buttons than there is room for horizontally. When this happens I wanted a More Options button to appear which when clicked gives a vertical list of the remaining buttons, and a veritcial scrollbar if there are too many buttons to show vertically.
I also wanted support for basic veritcal and horizontal separators.
This toolbar class can do all these things, and all that is needed is to provide the buttons as PNG files with alpha layers. other file types like JPG, and BMP are supported but won't look as good just because buttons don't need to be a rectangle and can have soft edges. The Add Icon(s).vi is a polymorphic and also can add images from Image Data, or the native LabVEW picture data type. But these image types have the same issue mentioned with JPG and BMP that they don't support alpha layers.
This relies on the following OpenG packages, a VIPC is included.
OpenG Error Library-184.108.40.206
OpenG Application Control Library-220.127.116.11
OpenG File Library-18.104.22.168
OpenG String Library-22.214.171.124
OpenG Array Library-126.96.36.199
OpenG LabVIEW Data Library-188.8.131.52
Installation and instructions:
At the moment this is not distributed as a package but just a zip with the required files in it. Install the OpenG packages required or install the Required Packages.vipc. Then run the Example Toolbar under the Example folder. This uses images from within the Example Images folder and must be in the same directory as the Example Toolbar.vi. There is also a Toolbar Tree.vi which shows the public functions as they could appear on the palette.
This code was downloaded from the LAVA Code Repository found at lavag.org