Gantt
Gantt Chart Add-on
Gantt Chart helps you to orginize schedules for projects. Divide your project in steps and adjust start time and length easily by dragging and moving them on the screen.
List of features:
- Server side API allows to modify timeline options and step options
- adjustable timeline range
- timeline supports Hour, Day and Week resolutions
- modify step's start date and end date by dragging and moving the step
- reorder steps by drag and dropping
- scrolling enabled horizontally and vertically for a large chart content
- scales the small timeline and content width up to fit in the space available
- vaadin Table or Grid can be used as a row header, vertical scrolling is mirrored to the table and vice versa
- background grid
- dynamically modifiable predecessor relations between steps
- sub-steps
- tooltips for steps
- touch support
- supports Valo theme
- current time indicator.
Sample code
import java.util.Calendar; import java.util.Date; import org.tltv.gantt.Gantt; import org.tltv.gantt.Gantt.MoveEvent; import org.tltv.gantt.Gantt.ResizeEvent; import org.tltv.gantt.client.shared.Step; ... gantt = new Gantt(); gantt.setWidth(100, Unit.PERCENTAGE); gantt.setHeight(500, Unit.PIXELS); gantt.setResizableSteps(true); gantt.setMovableSteps(true); Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); gantt.setStartDate(cal.getTime()); cal.add(Calendar.YEAR, 1); gantt.setEndDate(cal.getTime()); cal.setTime(new Date()); Step step1 = new Step("First step"); step1.setStartDate(cal.getTime().getTime()); cal.add(Calendar.MONTH, 2); step1.setEndDate(cal.getTime().getTime()); gantt.addStep(step1); gantt.addClickListener(new Gantt.ClickListener() { @Override public void onGanttClick(org.tltv.gantt.Gantt.ClickEvent event) { Notification.show("Clicked" + event.getStep().getCaption()); } }); gantt.addMoveListener(new Gantt.MoveListener() { @Override public void onGanttMove(MoveEvent event) { Notification.show("Moved " + event.getStep().getCaption()); } }); gantt.addResizeListener(new Gantt.ResizeListener() { @Override public void onGanttResize(ResizeEvent event) { Notification.show("Resized " + event.getStep().getCaption()); } });
Links
Compatibility
Was this helpful? Need more help?
Leave a comment or a question below. You can also join
the chat on Discord or
ask questions on StackOverflow.
Version
- added current time indicator (optional)
- added Gantt.setTimelineHourFormat(String)
- added OSGi support
- various bug fixes
- Released
- 2018-09-21
- Maturity
- STABLE
- License
- Apache License 2.0
Compatibility
- Framework
- Vaadin 8.1+
- Vaadin 7.1+ in 0.0.2
- Vaadin 7.1 in 0.2.2
- Vaadin 7.0 in 0.2.2
- Vaadin 7.2+ in 0.3.0
- Vaadin 7.7+ in 0.9.4
- Vaadin 8.0+ in 1.0.0
- Browser
- Firefox
- Safari
- Google Chrome
- Internet Explorer
- Microsoft Edge
Gantt - Vaadin Add-on Directory
Gantt Chart Add-onOnline Demo
Issue Tracker
Source Code
Gantt version 0.1.0
* Added guide lines when moving or resizing steps
* improved timeline accuracy when scaled (IE9+)
* Bug fixes
Gantt version 0.1.1
- Bug fixes
- Additions to component API: more control on timeline's year/month visibility and date formatting.
Gantt version 0.2.0
* New resolution: Hour
* Improved Timezone support
* Bug fixes
Gantt version 0.2.1
* Timezone fix for Day/Week resolutions
Gantt version 0.2.2
* Switched to use scss theme
* Improved touch scrolling
* fixed week number calculation logic
* allow HTML content in steps with Step.CaptionMode.HTML
Gantt version 0.3.0
* Upgraded to support Vaadin Framework 7.2.0
* Fixed week calculation logic for all locales
Gantt version 0.4.0
Bug fixes and New Features:
* table component can be used as a row header, vertical scrolling is mirrored to the table and vice versa
* background grid
* supports Valo theme
Gantt version 0.9.0
New features:
* dynamically modifiable predecessor relations between steps
* sub-steps
* tooltips for steps
Improvements:
* performance improvement: lazy on-scroll rendering of timeline
* several fixes and smaller improvements
Gantt version 0.9.1
- Improved background grid for Chrome (better performance and flex timeline)
- Added optional read-only progress bar into steps
- Several bug fixes and API improvements.
Gantt version 0.9.3
- Improved timezone offset handling and timeline range stability
- Added AbstractStep.setResizable(boolean)
- Several bug fixes
New dependency requirement: vaadin-client-7.x.x.jar due to usage of TimeZoneConstants.
Gantt version 0.9.4
* better configurable minimum grid cell width
* fixed few issues with predecessors and steps (#36, #40, #41)
* included TimeZoneConstants.properties in addon and using it by default
* works better with Vaadin 7.7
Gantt version 0.9.5
- #48 Disable mouse move events when resizing and move features are disabled
- #49 Detect Right Mouse Click in Clickevent
- #50 drag and drop steps between lines
- #57 move listener + ctrl key
- #54 Step double click detection
- Fixed #58: scrolling issues with latest build
- Fixed #55 Gantt undefined height bugfix
Gantt version 1.0.0
Vaadin Framework 8 compatible
Gantt version 1.0.1
- Vaadin Framework 8.1 compatible
- Added Grid and TreeGrid support
Gantt version 1.0.2
Few Bug fixes.
Last version including Table with V7 compatibility dependencies.
Gantt version 1.0.3
Removed Table support along V7 compatibility dependencies. Grid replaces Table.
Gantt version 1.0.4
* added current time indicator (optional)
* added Gantt.setTimelineHourFormat(String)
* added OSGi support
* various bug fixes