Release Notes - FlexGantt - Version 8.0
- Code cleanup / new project structure.
- Compatibility with Java 8
- New deployment vehicle: ZIP instead of install4j installer
Release Notes - FlexGantt - Version 2.1
New Features
- Added spreadsheet feature (see: ISpreadsheet, SpreadsheetLayer, etc...)
- Enhanced the printing routine. Print outs can now be decorated with a title, a logo,
and three different footer texts (left, center, right). Printing also supports several variables
for adding page numbers, page count, the date, the username. Please take a look at the PrintSetup
class for more information.
- Added a new system layer called ActionLayer, which is used to display a timeline object-specific
toolbar with action buttons. Please take a look at the IActionProvider, DefaultActionProvider,
and ActionLayer classes.
- Brought back the "old" cursors for dragging and resizing timeline objects. They are disabled
by default but can be activated via DragLayer.setShowingDefaultCursors(false).
- Made the number of clicks needed to trigger a zoom operation inside the dateline configurable.
Dateline.setZoomClicks(int);
- Added packages for scheduling logic support. Introduced a constraint concept, which can cause
violations. Violations can be automatically resolved.
- Extended IRelationship with method setType(RelationshipType t);
- LassoLayer can now be completely disabled by calling setVisible(false);
- Added a method to time granularities to return the standard duration of one unit of the granularity.
See: IGranularity.getStandardDuration();
- Made ITimeSpan serializable
- Added a MultiGanttChartSynchController class to synchronize scrolling in several Gantt charts at the
same time.
Bug Fixes
- Fixed a bug that threw an exception when the user used the mouse wheel over an empty gantt chart.
- Fixed a bug that painted the alternating background / row color in the wrong row when the gantt chart was empty.
- Fixed printing for Java 7
Release Notes - FlexGantt - Version 2.0
- Disabled the focus background color change in various places of the UI
- Zooming into a timespan now requires a double click on a cell grid in the timeline (used to be single click)
- Fixed flickering in the row header components.
- Removed the drag cursors for "moving", "linking", "change start/end time". Now
using the default Java cursors.
- The "percentage complete" value of activity timeline objects can now be edited
without pressing the SHIFT key. The "change start time" option on the left-hand
side of the object has been disabled. However, this behaviour can still be configured
via the help of the IEditModeController class.
- Introduced support for different relationship types (E-S, S-E, S-S, E-E). Added
enumerator RelationshipType.
- Introduced a PathCalculator object used to calculate paths based on the
relationship type.
- Added a new system layer called "LinkLayer" used to nicely visualize the creation
process of creating relationships between timeline objects. Linking used to
be supported by the DragLayer.
- Contains the INodeFilter support introduced in 1.1.4 BETA
- Relationships are now "objects"
- They can be selected
- They show focus
- Added several methods to IRelationship / DefaultRelationship
- Changed the IRelationshipRenderer interface (now returns bounds of relationship)
- Changed the ILayerContainerMenuProvider interface (now passes relationships at popup trigger location)
- Changed the RelationshipLayer: added method getRelationshipsAt(int x, int y)
- Changed the IRelationshipPolicy to support deletion of relationships
- Added new commands: DefaultDelete(Multiple)RelationshipsCommand
- Added labels to IRelationship
- Timeline objects and relationships can have the same set of labels (tooltip, statusbar, name, ...),
hence refactored the set/getLabel() methods of timeline object and moved it into a separate class
called LabelTypeSupport.
- Added more icon maps: Gif16EclipseIconMap, Png16XPIconMap, Png24XPIconMap, Png16VistaIconMap, Png24IconMap
- Introduced IRenderer interface for all renderers in FlexGantt
- Extended the component factory
- Changed the look of the layer container row header
- Removed the indentation policy and the indentation commands (using the node
edit policy and the reassign nodes command instead).
see: INodeEditPolicy.isReassignable()
INodeEditPolicy.getReassingNodesCommand()
ITreeTableNode.isReassignable()
DefaultReassignNodesCommand
- Added isEmpty() method to ITimelineObjectLayerSelectionModel
- Contains support for more Mac-style Gantt charts
see package com.dlsc.flexgantt.swing.mac
- Expanding and collapsing nodes is now animated if the user triggered the expand/collapse.
see: TreeTable.expandNodeAnimated()
TreeTable.collapseNodeAnimated()
TreeTable.setNodeAnimationSettings()
- Renamed ITimelineObjectLayerSelectionModel to ITimelineObjectSelectionModel. The "layer" fragment was
not really necessary. As a result also renamed other related classes and methods.
- Added a Macintosh support package: com.dlsc.flexgantt.swing.mac containing a couple of classes useful
for creating a more Mac-like user experience.
- TreeTableColumn now supports column-specific renderers