@Override public Widget createWidget() { timelineWidget = new TimeLineWidget(); timelineWidget.setHeight("100%"); timelineWidget.setWidth("100%"); return timelineWidget; }
@Override public void update(Delta<VisualItem> delta, LightweightCollection<Slot> updatedSlots) { // TODO pull up if (!timelineWidget.isAttached()) { return; } LightweightCollection<VisualItem> addedVisualItems = delta.getAddedElements(); if (!addedVisualItems.isEmpty()) { createTimeLineItems(addedVisualItems); addEventsToTimeline(addedVisualItems); updateStatusStyling(addedVisualItems); } LightweightCollection<VisualItem> updatedVisualItems = delta.getUpdatedElements(); if (!updatedVisualItems.isEmpty()) { updateStatusStyling(updatedVisualItems); } LightweightCollection<VisualItem> removedVisualItems = delta.getRemovedElements(); if (!removedVisualItems.isEmpty()) { removeEventsFromTimeline(removedVisualItems); } // TODO refactor if (!updatedSlots.isEmpty()) { for (VisualItem visualItem : getVisualItems()) { TimeLineItem timelineItem = (TimeLineItem) visualItem.getDisplayObject(); for (Slot slot : updatedSlots) { if (slot.equals(BORDER_COLOR)) { timelineItem.updateBorderColor(); } else if (slot.equals(COLOR)) { timelineItem.updateColor(); } } } } }
public int getOverviewBandZoomIndex() { return timelineWidget.getZoomIndex(1); }
public int getMainBandZoomIndex() { return timelineWidget.getZoomIndex(0); }
public final String getEventElementID(int bandIndex, String elementType, JsTimeLineEvent event) { return timelineWidget.getEventElementID(bandIndex, elementType, event); }
public Date getCenterVisibleDate() { return timelineWidget.getCenterVisibleDate(); }
private void addEventsToTimeline(LightweightCollection<VisualItem> addedResourceItems) { timelineWidget.addEvents(getTimeLineEvents(addedResourceItems)); }
@Override public void setSize(int width, int height) { super.setSize(width, height); timelineWidget.layout(); }
public void setOverviewBandZoomIndex(int zoomIndex) { timelineWidget.setZoomIndex(1, zoomIndex); }
public void setMainBandZoomIndex(int zoomIndex) { timelineWidget.setZoomIndex(0, zoomIndex); }
public void setCenterVisibleDate(Date date) { timelineWidget.setCenterVisibleDate(date); }
private void removeEventsFromTimeline(LightweightCollection<VisualItem> removedResourceItems) { timelineWidget.removeEvents(getTimeLineEvents(removedResourceItems)); }