Release Notes

JViews Gantt 8.5 Release Notes

This document describes the main changes that have been made to JViews Gantt since version 8.1.

Incompatibilities
General Changes
Multi-Date Activities
Hiding the Root Row
Limiting the Horizontal Zoom
Hover Highlighting
Tooltips on Activity Symbols
Rendering of Activity Labels
Model Object Properties
Synchronized X Axis between a Schedule and a Gantt Chart
Customization of Resource Data Sets
Improved Tree Widget
Utility Functions for Use in CSS
Utility Methods for Shapes
Use of Generic Types
Improved Applet Integration
Improved Eclipse/RCP Integration
Improved SWT Integration
Other Changes in Gantt Classes
Other Changes in Graphic Framework Classes
Other Changes in DHTML JavaServer Faces Components
Other Changes in Utility Classes
Example Changes


Incompatibilities


General Changes


Multi-Date Activities

Activities that are specified by more than two dates can be displayed. This can be used for the following purposes: See the documentation section "JViews Gantt 8.5 > Programmer's documentation > Developing with the JViews Gantt SDK > Gantt charts > Customizing activity rendering" for details.

New Interfaces and Classes

ilog.views.gantt.model.IlvPropertyHolderActivity

The interface IlvPropertyHolderActivity denotes an activity that has a number of specific time points.

ilog.views.gantt.graphic.interactor.IlvActivitySelection

The interface IlvActivitySelection denotes a graphic selection object that is associated with an activity graphic.

Modified Classes

ilog.views.gantt.model.IlvSimpleActivity

ilog.views.gantt.model.general.IlvGeneralActivity

ilog.views.gantt.model.table.IlvTableActivity

ilog.views.gantt.graphic.renderer.IlvActivityRenderer

ilog.views.gantt.graphic.renderer.IlvActivityGraphicRenderer

ilog.views.gantt.graphic.renderer.IlvActivityLabel

ilog.views.gantt.graphic.renderer.composite.IlvActivityCompositeGraphicRenderer

ilog.views.gantt.graphic.renderer.IlvActivityCompositeRenderer

ilog.views.gantt.graphic.interactor.IlvActivityGraphicSelection


Hiding the Root Row

The root row in a Gantt or Schedule chart can now be hidden. The method for doing this is IlvHierarchyChart.setRootRowVisible. Many of the examples now contain an item on the Row menu that allows you to control this feature.

New Interfaces and Classes

ilog.views.gantt.event.RootRowVisibilityChangedEvent

A RootRowVisibilityChangedEvent is fired by a Gantt configuration to notify interested VerticalExpansionListener2s when the root row has been shown or hidden.

ilog.views.gantt.event.VerticalExpansionListener2

The VerticalExpansionListener2 interface defines a simple extension of the VerticalExpansionListener interface.

Modified Classes

ilog.views.gantt.IlvHierarchyChart

ilog.views.gantt.IlvGanttConfiguration

ilog.views.gantt.IlvVerticalDisplayController

ilog.views.gantt.IlvVerticalExpansionMaster

ilog.views.gantt.swing.IlvJTree

ilog.views.gantt.graphic.IlvGanttSheet


Limiting the Horizontal Zoom

The zoom level of a Gantt or Schedule chart can now be bounded. The method to achieve this is IlvHierarchyChart.setMinVisibleDuration.

New Interfaces and Classes

ilog.views.gantt.event.TimeScrollListener2

The TimeScrollListener2 interface defines a simple extension of the TimeScrollListener interface.

Modified Classes

ilog.views.gantt.IlvHierarchyChart

ilog.views.gantt.IlvGanttConfiguration

ilog.views.gantt.graphic.IlvGanttSheet

ilog.views.gantt.IlvJScrollGanttSheet

ilog.views.schedule.IlvScheduleDataChart

ilog.views.gantt.IlvTimeScrollable

ilog.views.gantt.IlvTimeScrollUtil

ilog.views.gantt.IlvBasicTimeScrollController

ilog.views.gantt.IlvBasicTimeScrollSupport

ilog.views.gantt.scale.IlvTimeScale

ilog.views.gantt.swing.IlvTimeScrollBar


Hover Highlighting

Activities in a Gantt sheet now support hover highlighting. Several kinds of graphical effects are supported.

Modified Classes

ilog.views.gantt.graphic.IlvGanttSheet


Tool Tips on Activity Symbols

The text displayed by tool tips on activity symbols (usually positioned at the start or end of an activity) can be customized.

Modified Classes

ilog.views.gantt.graphic.renderer.IlvActivitySymbol


Rendering of Activity Labels

The labels of activities can now be rendered with anti-aliasing, and their positioning can be adjusted.

Modified Classes

ilog.views.gantt.graphic.renderer.IlvBasicActivityBar

ilog.views.gantt.graphic.renderer.IlvBasicActivityLabel


Model Object Properties

Properties of objects in a Gantt model can be accessed in a more systematic way: A superinterface of IlvStringProperty and IlvTimeProperty has been introduced and also an interface for properties of number type. In addition, singleton instances have been added to the classes IlvActivityStartTimeProperty and IlvActivityEndTimeProperty.

New Interfaces and Classes

ilog.views.gantt.property.IlvProperty

IlvProperty defines a common interface for accessing a property of target objects.

ilog.views.gantt.property.IlvNumberProperty

IlvNumberProperty defines a common interface for accessing a numeric property of target objects.

Modified Classes

ilog.views.gantt.property.IlvActivityStartTimeProperty

ilog.views.gantt.property.IlvActivityEndTimeProperty


Synchronized X Axis between a Schedule and a Gantt Chart

IlvScheduleDataChart no longer implements the IlvTimeScrollable interface. Use the new methods instead.

Modified Classes

ilog.views.schedule.IlvScheduleDataChart


Customization of Resource Data Sets

Resource data sets can now be customized by creating a subclass of IlvResourceDataChart.

Modified Classes

ilog.views.schedule.IlvResourceDataChart

ilog.views.schedule.data.IlvResourceDataSet


Improved Tree Widget

More API is provided around IlvJTree.

New Interfaces and Classes

ilog.views.util.swing.tree.IlvDefaultTreeCellRenderer

ilog.views.gantt.swing.IlvDefaultJTreeCellRenderer

IlvDefaultJTreeCellRenderer is a cell renderer that is specifically designed to work with the IlvJTree component.


Utility Functions for Use in CSS

A collection of predefined CSS functions are provided, for convenient use in CSS files.

New Interfaces and Classes

ilog.views.gantt.graphic.renderer.IlvGanttFunction

A collection of CSS functions.


Utility Methods for Shapes

Utility methods are now provided for translating shapes and for determining the distance between a point and a shape.

New Interfaces and Classes

ilog.views.util.java2d.IlvShapeUtil

The class IlvShapeUtil contains static methods that are useful when working with Java2D Shape objects.

ilog.views.util.java2d.IlvTranslatedShape

This class is a translation of a given shape by a given translation vector.

ilog.views.util.java2d.IlvPolygon2D

An IlvPolygon2D instance describes a closed (circular) polyline with no specific starting or end points, that is, a polygon.


Use of Generic Types

Whenever an API method expects or returns an object of type Collection, List, Set, Iterator, ..., the argument type or return type uses generics. This allows for stricter type checking and more useful warnings.

Improved Applet Integration

Modified Classes

ilog.views.util.IlvResourceUtil


Improved Eclipse/RCP Integration

Support for garbage collection of ClassLoaders has been added. In situations where class loaders have a limited lifetime, for example in Eclipse/RCP, JViews now drops cached objects that belong to a class loader when unregisterClassLoader is called.

New Interfaces and Classes

ilog.views.util.event.ClassLoaderLifetimeEvent

This class describes a turning point in the lifetime of a ClassLoader.

ilog.views.util.event.ClassLoaderLifetimeListener

This interface allows you to react on turning points of class loaders.

Modified Classes

ilog.views.util.IlvClassLoaderUtil


Improved SWT Integration

It is now possible to tell the AWT toolkit to ignore some events when you know that SWT will already react on them. In particular, it allows you to prevent AWT from terminating the application while SWT is still saving the application state.

New Interfaces and Classes

ilog.views.util.swt.IlvAWTEventFilter

This interface specifies a filter that allows you to ignore some events on the AWT side, knowing that the SWT side of the GUI will handle them.

Modified Classes

ilog.views.util.swt.IlvEventThreadUtil


Other Changes in Gantt Classes

Modified Classes

ilog.views.gantt.IlvGanttModelUtil

ilog.views.gantt.IlvTimeInterval

ilog.views.gantt.action.IlvZoomInAction

ilog.views.gantt.action.IlvZoomOutAction

ilog.views.gantt.action.IlvZoomToFitAction

The default behavior has been changed to compute the time interval that best fits the bounding boxes of all the graphics displayed in the Gantt sheet.

ilog.views.gantt.event.ActivityGraphicReshapedEvent

ilog.views.gantt.event.RowHeightChangedEvent

ilog.views.gantt.event.TimeChangedEvent

ilog.views.gantt.event.VisibleTimeChangedEvent

ilog.views.gantt.event.VisibleDurationChangedEvent

ilog.views.gantt.graphic.IlvActivityTileLayout

ilog.views.gantt.graphic.IlvDefaultActivityRendererFactory

ilog.views.gantt.graphic.IlvTimeIndicator

ilog.views.gantt.print.IlvScaledPrintablePage

ilog.views.gantt.scale.IlvBasicTimeScaleRow

ilog.views.gantt.scale.IlvTimeScale.PaintContext

ilog.views.gantt.swing.IlvJTable

ilog.views.gantt.xml.IlvGanttReaderException


Other Changes in Graphic Framework Classes

Modified Classes

ilog.views.IlvAccelerator

ilog.views.interactor.IlvSelectInteractor

ilog.views.interactor.IlvSelectInteractorMultipleSelection

ilog.views.java2d.IlvLinearGradientPaint

ilog.views.java2d.IlvRadialGradientPaint


Other Changes in DHTML JavaServer Faces Components

Modified Classes

ilog.views.faces.IlvFacesUtil

ilog.views.faces.component.IlvFacesContextualMenu

ilog.views.faces.dhtml.IlvDHTMLConstants

ilog.views.faces.dhtml.interactor.IlvFacesObjectSelectInteractor

ilog.views.faces.dhtml.interactor.IlvFacesObjectSelectRectInteractor

ilog.views.faces.dhtml.interactor.IlvObjectSelectInteractor

ilog.views.faces.dhtml.renderkit.IlvFacesContextualMenuRenderer

ilog.views.faces.dhtml.taglib.IlvObjectSelectInteractorTag

ilog.views.faces.taglib.IlvBaseTag

ilog.views.faces.taglib.IlvMenuTag

ilog.views.gantt.faces.dhtml.interactor.IlvFacesNodeSelectInteractor


Other Changes in Utility Classes

Modified Classes

ilog.views.util.collections.IlvCollections

ilog.views.util.collections.IlvUnsynchronizedStack

ilog.views.util.data.IlvTableModelMappingException

ilog.views.util.java2d.IlvLinearGradientPaint

ilog.views.util.java2d.IlvMultipleGradientPaint

ilog.views.util.java2d.IlvRadialGradientPaint

ilog.views.util.print.IlvPage

ilog.views.util.print.IlvPrintingController

ilog.views.util.styling.IlvCSSFunction

ilog.views.util.swing.IlvSwingUtil

ilog.views.util.swing.calendar.IlvJTimeChooser

ilog.views.util.swing.layout.IlvVerticalFlowLayout

ilog.views.util.time.IlvTimeIterator


Example Changes