Release Notes 
  

JViews 2.0 Release Notes

This document describes the changes that have been made to JViews since version 1.1.

General Changes
Library Changes
Demonstration Changes
Editor Changes
Documentation Changes
Bug Fixes
Previous Release Notes


General Changes

JViews 2.0 contains three new modules, in addition to changes in the core library (that is, JViews 1.1).

The Graph Layout Package

JViews provides special support for applications that need to display graphs (networks) of nodes and links. Any graphic object can be defined to behave like a node and be connected to other nodes via links, which themselves can have many different forms. Used in conjunction with layout algorithms, the JViews grapher is often used to display network topologies for telecommunication networks and system management applications.
The Graph Layout package provides high-level, ready-to-use graph drawing services that allow you to easily obtain readable representations.

The Graph Layout classes are located in the Java package ilog.views.graphLayout.

The Maps Package

The ability to create applications that need to display geographic data has been significantly enhanced in JViews 2.0. A new library of projections is now available, new geographic file formats are now supported in addition of the ESRI Shapefile reader: DTED, CADRG, DXF (the readers of these formats are located in the <installdir>/demos/maps directories). In addition to these readers, a bridge to the OGDI (Open Geospatial Datastore Interface) technology of the Global Geomatics company (formerly L.A.S www.las.com) allows you to import many other types of geographic data.

The geographic classes are located in the Java package ilog.views.maps, ilog.views.maps.projection.

The Business Graphic Objects Package (also called Prototype Package)

Application developers often need to define custom graphic objects to represent real-life objects that are specific to their domain. The JViews Prototypes package provides a simple and efficient solution to build such business graphic objects (abbreviated as BGOs).
BGOs are created using IlvEdit, the WYSIWYG JViews editor. Creating a BGO requires no coding at all: you define the look of your objects by composing basic JViews graphic objects (lines, shapes, images, and so on). You can also include other BGOs to build complex structured objects. You attach predefined behaviors to your objects to animate them and to define their properties. You can create instances of your BGOs and use them in managers like basic JViews graphic objects. You can edit and modify a BGO at any time: its instances will be automatically updated.

The Business Graphic Objects classes are located in the Java package ilog.views.prototypes.
 

Mixing Swing and JViews

The classes IlvManagerViewPanel and IlvScrollManagerView that are used to display JViews objects does not integrate well with the JFC Swing component set, mainly because they are heavyweight components. These classes have been re-implemented on top of the Swing library by the classes IlvJManagerViewPanel and IlvJScrollManagerView in the new package ilog.views.swing.
 

Jar File Organization

JViews 1.1 classes were stored in one single JAR (Java ARchive) file. JViews 2.0 comes with a new JAR file for each main feature:

jviews.jar - Package ilog.views and ilog.views.ui

prototypes.jar - Package ilog.views.prototypes

maps.jar - Package ilog.views.maps and ilog.views.maps.projection

graphlayout.jar - Package ilog.views.graphLayout

jviewsswing.jar - Package ilog.views.swing

jviewsall.jar - All packages

Obfuscation

Some IDEs do not support Unicode names for classes and methods. That is why JViews 2.0 is now obfuscated using ASCII names instead of UNICODE names.


Library Changes

Graphic Objects IlvManagerView

It is now possible to set the minimum, maximum, and preferred size of the IlvManagerView for a better integration with the layout managers.

IlvScrollManagerView

You can now replace the scroll bars of an IlvScrollManagerView by anything that implements the Adjustable interface.

IlvInputStream, IlvOutputStream, and IVL format

It is now possible to store an IVL file in a binary way. This is done by using IlvManager.write(String filename, boolean binary). This binary format is more compact and faster to read. The IlvManager.read methods will automatically detect whether the file is binary.

IlvPersistentObject

This interface allows you to store additional objects in an IVL file. If you need to store an object in an IVL file, the class must implement the IlvPersistentObject interface.

IlvManager

You can now install a selection factory (IlvSelectionFactory) in the manager. This factory is responsible for creating the selection objects.

The methods addObject, removeObject, moveObject, and reshapeObject will now throw an exception if the object argument is null.

IlvPolyPoints and subclasses

The class IlvPolyPoints and its subclasses have a new constructor that does not copy the array of points. This allows you to reduce the amount of memory used when the array of points is not needed by another object.

IlvNamedProperty

A new type of user properties can be set either on a graphic object (IlvGraphic), a layer (IlvManagerLayer), or a manager (IlvManager). These properties are subclasses of IlvNamedProperty, which is an abstract class. A named property is identified by its name and can be stored in an IVL file.

IlvManagerLayer

It is now possible to associate a name to a layer of a manager.

ManagerSelectionChangedEvent

The selection notification has been enhanced. The ManagerSelectionChangedEvent has two new methods:

isAdjusting() - Returns true if this event is part of a series of several events.
isAdjustmentEnd() - Returns true if this event is the last of a series of several events.


Demonstrations Changes

Several examples have been added to illustrate the new features.


Editor Changes

The IlvEdit editor now uses the Swing component set and allows editing of several IVL files at the same time.

The editing of the layers has been enhanced so that you can now give a name to each layer and change the position of the layers. You can also specify the layer when objects will be inserted.

An extended version of IlvEdit allows you to create the Business Graphic Objects. To launch this extended version use the command: ilvedit -prototypes

To use this extended version, read the Business Graphic Objects User's Manual.


Documentation Changes

Three new sections are added to the User's Manual: The User's Manual is now provided in two formats: HTML and PDF.


Bug Fixes


Previous Release Notes

JViews 1.1 Release Notes