© 2012 BeeSoft ®
This page contains descriptions of JavaGantt's most essential features:
Standard view -
Standard chart appearance and behavior customizable settings.
There are a treetable and a chart component side by side. The treetable on the left hand side, and the chart component on the right.
Exactly as you know it from other gantt components. But you can modify their appearance as you need.
Advanced treetable -
The treetable has a few very interesting features: It is derived from eu.beesoft.gaia.swing.JTreeTable,
so it has the features of JTable and JTree - it is easy to use it, if you are familiar with Swing programming.
JTreeTable can paint "zebra" background and also show / hide columns on user selection
(right click on treetable header displays popup menu with column names to hide / show).
There is also built-in support for the context popup menu and double click processing.
Data binding - Model for JavaGantt is oriented on the easy programming and usage.
One of its features is automated data binding.
You can set a name of the property of your domain object you want to display in some column
and JavaGantt displays it without any more programming. And the same it does with setting user-changed visual data to domain object.
Lazy loading - If your application works with a large dataset,
it is suitable to load to the memory just the visible part of the data.
JavaGantt treetable listens to treeexpand event and if node is expanded for the first time,
it invokes method explore() on GanttModel.
This is the place you can load data for node's user object and build subnodes.
Do you know any more simple solution?
Layers - Gantt chart is painted in some layers.
You can choose which layers you want install into gantt chart, and also you can hide / show layers at runtime.
Each layer has specific purpose and paints only the gadgets it is programmed for.
You can develop new layers or customize the existing. This is the way you can customize the whole chart,
change the shape of timeline objects or dependency lines or add an absolutelly new functionality.
In each layer you can solve also a mouse service, there is a built-in support.
Relationships - Timeline objects (tasks) can have relationship with each other.
You can define constraints on such relationship (for example: this task can start after that task is finished).
In the JavaGantt you need implement one interface on the domain objects level.
And you can subclass layer for dependencies painting to get your own visualization of dependencies,
if the delivered is not suitable for you.
Actions - JavaGantt comes with predefined set of actions. There are actions for zoom-in and zoom-out,
creating, deleting and moving nodes (and their user-objects) in the tree hierarchy, and also
actions for undo and redo operations. And also abstract superclasses for the smart building another actions.
Localization - JavaGantt uses data from resource bundle for treetable column names and action properties.
There is a built-in mechanism to do it without any programming.
If your application contains more resource bundles for more languages, you can build a multi-lingual gantt chart in a very simple way.
JavaGantt listens to the language changes at runtime and repaints itself if gets an event.