LabWindows 2.3 Product Feature 

by John Pasquarette, LabWindows marketing manager 
   National Instruments 
   6504 Bridge Point Parkway 
   Austin, TX 78730-5039 
   (512) 794-0100 fax: (512) 794-8411 
-----------------------------------------------------------------
LabWindows Version 2.3 Simplifies GUI Coding

LabWindows Version 2.3 is an exciting new utility to help you quickly and
easily develop event-driven programming related to graphical user
interfaces (GUIs). In addition to library enhancements, LabWindows 2.3
features a new utility called CodeBuilder for simplifying event-driven
programming. With CodeBuilder, LabWindows users can design and test their
programs quickly and easily in minutes, replacing the hours of development
time required in past versions.

LabWindows 2.0, released in April 1991, opened the door to event-driven
programming for many scientists and engineers. The User Interface Editor
introduced in this version made it possible for anyone to create
sophisticated graphical user interfaces (GUIs) for their programs. Users
quickly discovered that they could combine multiple panels within a single
program, creating a truly dynamic look and feel to their applications
during run time. However, some users had trouble deciding which functions
to use from the User Interface Library to display and control their GUIs.
Also, many scientists and engineers had never written an event-driven
program before, and had trouble structuring their programs to recognize
mouse or keyboard events and respond to them accordingly. CodeBuilder
addresses of all these issues.

CodeBuilder Takes the Mystery Out of Event Loops 

CodeBuilder helps users create an outline, then generates the code for
event-driven programming. Available in LabWindows 2.3, CodeBuilder
represents a new step in the application development process in
LabWindows. Once users have created their GUI in LabWindows, they launch
CodeBuilder to set up their program shell or outline and then generate the
actual event-driven code. CodeBuilder has a list of simple options from
which users choose to interactively build their program outline. For a
simple GUI containing a single panel, CodeBuilder automatically generates
the code to load the panel into memory, displays it, and sets up an event
loop to respond to all possible events on that panel.

While developers use CodeBuilder to outline their programs, they can
interactively test their work without writing a single line of code in C
or BASIC. By selecting "Test Template" from the options menu in
CodeBuilder, users can actually see how their programs will run based on
the outline they have defined in CodeBuilder. CodeBuilder acts as a
prototyping tool for LabWindows users to design the structure of their
program. Once satisfied with their program outline, users simply select
Generate Source Code from the options menu to automatically convert their
program outline into a C or BASIC source file.

The output from CodeBuilder is a structured, commented C or BASIC program
that loads and displays GUI panels and sets up event loops to respond to
any events on these panels. Developers can then use LabWindows function
panels to insert single lines of code into this program to acquire,
analyze, and present their data. With the addition of CodeBuilder,
LabWindows can generate the source code for the majority of your
programs.

256 Color Graphics Compatibility 

Using PCX images to enhance a LabWindows GUI is a common technique in
LabWindows. However, the color palette from Windows Paint and color
palettes used by LabWindows were not always compatible, leading to PCX
images with blue and red colors reversed. In LabWindows 2.3, the User
Interface Editor can interpret a Windows-based PCX image and automatically
switch the blue and red values in the color palette. In addition,
LabWindows 2.3 now handles 256 colors. And, users can even
programmatically set or change the color palette to match specific RGB
values.

Graph Controls and Cursors Get an Overhaul 

LabWindows graph controls and graph cursors received an overhaul in
LabWindows 2.3 and are now much more functional interactive graphics
tools. In the past, graph controls handled all data the same way once it
was displayed on a graph. Users did not have access to individual data
traces on a graph control. For example, a user could not delete a single
trace from a multiplot graph, or programmatically set cursors to snap to a
particular data trace.

All plotting functions in LabWindows 2.3 have been restructured to return a
handle for each array plotted on a graph. Therefore, users have total
control over each individual plot on a graph. Users can delete individual
traces on a graph, snap cursors to a specified trace, and even get the
index of the plotted array to which the cursor is snapped. We've also
added tools for plotting geometric shapes, such as squares, rectangles,
ovals, and arcs, on graph controls. With these new geometric functions,
users can annotate displayed data easier, or even build their own bar and
pie charts in LabWindows.

Improved Debugging and Editing 

We have found that the only way to support our products better than through
our applications engineers support line is to make it easier for users to
find solutions to their own problems. LabWindows now has dynamic
breakpoint capability for faster, more efficient debugging. At any time
during program execution, users can pause to insert a breakpoint and then
continue without recompiling your code. In addition, a new debugging mode
called Breakpoint on Error automatically traps and displays any errors
returned by a LabWindows function. The LabWindows environment can do error
checking for you!

For stand-alone library users, LWMAKE is now a truly flexible application
management tool, featuring dynamic editing of any source, .UIR, or header
files in a file list. Simply double click on the filename to invoke the
appropriate editor. Users can even link their favorite text editor into
LWMAKE for editing source files.

  +---------------------------------------------------------------+
  |   From the America Online - New Product Information Services  |
  +===============================================================+
  | This information was processed from data provided by the      |
  | above mentioned company. For additional details, contact the  |
  | company at the address or telephone number indicated above.   |
  |    All submissions for this service should be addressed to    |
  |   BAKER ENTERPRISES, 20 Ferro Drive, Sewell, NJ 08080 U.S.A.  |
  +---------------------------------------------------------------+
