New Toolkit Features
Server for JSP Servlets
New Look and Feel of Graph Widgets
RollBack Scrolling Type
New Selection Type for Tooltips
GLG Script Extensions
Font Rendering Improvements for Windows Platforms
Java Applet Improvements
OpenGL Driver New Features and Bug Fixes
New GLG Graphics Builder Features
Updated Look and
Feel of the Graphics Builder
Mouse Dragging Support in the Color Palette
Configurable Color Palette with Scrolling
Spinners for Changing Attribute and Resource Values with the Mouse
New Ctrl-A Accelerator
DataGen Support for Relative Paths
New Map Server Features
Negotiation and Automatic Decluttering
Text Box Line Width Attribute
Enhanced Error Handling Features
New Elevation Layer Features
The GLG Graphics Server is a new addition to the GLG Toolkit family of products, and provides the server-side support for AJAX-based thin-client web applications.
In the Java Server Pages (JSP) environment, the Graphics Server
is deployed as a Java Servlet and may be used with any compliant
Java2EE Application server.
Click here to
run online AJAX demos.
Click here for more information on the GLG Graphics Server.
The look and feel of all GLG graph widgets have been improved by adding gradient rendering to the datasamples, markers and other elements of the graphs. Shadows and transparency have been added where appropriate as well.
Use the following links to see examples of the new graphs' look and feel:AJAX Dashboard Demo
Click here to view new 2D and 3D graph palettes.
A new graph scrolling type was introduced to decrease CPU requirements of the scrolling real-time graphs. The new scrolling type allows the graph to "roll-back" by a specified number of datasamples to free space for new data when the graph gets completely filled. A new RollBack attribute was added to the graphs to control the number of datasamples to "roll-back" when the graph gets completely filled.
Since the graph gets scrolled only when it gets completely filled, it will significantly reduce the CPU load compared with the scrolling graph that scrolls on every data update.
The RollBack resource may also be used to implement a graph which "wraps" until it gets completely filled with data and then starts scrolling. This behavior may be implemented by setting the graph's RollBack resource to 1.
The RollBack attribute of the graph's time axis labels should be set to a proper value to match the settings of the graph's RollBack. Refer to the RollBack Scrolling chapter of the GLG Widgets Reference Manual for more information.
A new GLG_TOOLTIP_SELECTION selection type has been added to the GlgCreateSelectionMessage method to query objects with a TooltipString resource at a given screen location. This selection type is used by the GLG Graphics Server to process tooltips in AJAX environment. It may also be used in a Trace callback in C/C++ and Java environments to determine if the mouse event will activate an object tooltip.
New commands were added to the GLG script to allow the script to traverse points of polygons, traverse elements of groups and viewports, load objects from a file, and add text box and rendering attributes to objects.
Performance of the rotated text rendering on Windows platform was greatly increased.
Handling of fonts with the DEFAULT_CHARSET on Windows was changed by using the codepage from current locale. This increased the usability of the default font table by automatically inheriting the current locale setting.
The invokeLater method was used in the GlgBean's start and stop methods to handle the applet's asynchronous life cycle. This change fixed Java exceptions when a running applet was destroyed in the middle of updating its graphics with new data.
The GLG Java demos and examples were changed to better handle asynchronous invocation of the applet's method by the web page's Java Script. The SendRequest method was added to handle Java Script invocations in a synchronous way.
The visual appearance of the icons in the Graphics Builder was updated to use the gradients, shadows, transparency and other new features to provide more sophisticated look and feel.
Support for mouse dragging was added to the color and other palettes of the Graphics Builder for more convenience. By clicking in the color palette and dragging the mouse with the mouse button pressed, the user can experiment with the colors without a need for repeated clicking on the palette.
The mouse dragging support is also provided to the GlgPalette input handlers in all GLG applications via a new ValueChange action.
Support for scrolling color palettes with a large number of colors has been added to the Graphics Builder to make color selection more convenient.
When the number of colors in the Builder's color palette is increased by setting GlgDefaultColorFactor to the value greater than 3 in the glg_config file, the scrolling sliders of the color palette will be automatically activated. The number of color grades for each of the color palettes' hues may be changed by setting the GlgDefaultNumColorGrades parameter of the glg_config file.
Spinner objects were added to the Graphics Builder interfaces to facilitate changing the attribute or resource values with the mouse. Each spinner provides two sets of buttons, one set for increasing or decreasing the value by 1, and another for changing the value by 10.
The SelectAll option with the Ctrl-A accelerator was added to the Graphics Builder to select all objects in the drawing. In conjunction with the Ctrl-Click grouping option and Ctrl-Shift-Click option for traversing hierarchies of groups and viewports, it allows for more convenient editing of large drawings.
Support for better handling of the relative paths was added to the data generator's -script and -datafile options. The options will now interpret relative path names relatively to the load path of the drawing, making it easier to associate animation scripts with the drawings. If the script is still not found, the data generator will search for the script file in the directories defined in the GLG_PATH search path.
A priority-based label layout negotiation feature was added to the map server to facilitate a better layout of intersecting labels and automatic label decluttering depending on the zoom factor.
The label layout may be activated for the layer by specifying the LAYOUT TYPE parameter in the layer's LIF file. The label layout may be performed only for the labels in the layer or globally, for labels in all layers.
A priority value may be assigned to Labels of different types or labels in different layers to control the label priority. A LAYOUT MARGIN parameter of the LIF file may be used to specify a minimum gap between the labels.
A new LIF file parameter which specifies the line width of a text box has been added for increased control over the text box's rendering.
The ERROR FONT and DEFAULT FONT parameters were added to the SDF files to control the font used for error messages as well as the default font for all layers.
A new elevation mode option for displaying elevation data as color images was added to the elevation layers to facilitate testing and debugging.
Support for attribute maps was added to image layers to enable "dimming" elevation shaded relief effect for high zoom factors, to improve visual appearance.
An earth elevation shadow relief dataset was added to the map