/* * Smart GWT (GWT for SmartClient) * Copyright 2008 and beyond, Isomorphic Software, Inc. * * Smart GWT is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3 * as published by the Free Software Foundation. Smart GWT is also * available under typical commercial license terms - see * http://smartclient.com/license * * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */ import java.util.Date; import com.smartgwt.client.data.DataSource; import com.smartgwt.client.data.fields.DataSourceDateTimeField; import com.smartgwt.client.data.fields.DataSourceSequenceField; import com.smartgwt.client.data.fields.DataSourceTextField; import com.smartgwt.client.types.TimeUnit; import com.smartgwt.client.widgets.Canvas; import com.smartgwt.client.widgets.calendar.HeaderLevel; import com.smartgwt.client.widgets.grid.ListGridField; import com.smartgwt.client.widgets.calendar.Timeline; import com.smartgwt.sample.showcase.client.data.TimelineData; import com.smartgwt.sample.showcase.client.data.TimelineLaneData; import com.google.gwt.core.client.EntryPoint; public class DataBoundTimelineSample implements EntryPoint { public void onModuleLoad() { DataSource eventDS = new DataSource(); DataSourceSequenceField eventIdField = new DataSourceSequenceField("eventId"); eventIdField.setPrimaryKey(true); DataSourceTextField nameField = new DataSourceTextField("name"); DataSourceTextField descField = new DataSourceTextField("description"); DataSourceDateTimeField startDateField = new DataSourceDateTimeField("startDate"); DataSourceDateTimeField endDateField = new DataSourceDateTimeField("endDate"); DataSourceTextField laneField = new DataSourceTextField("lane"); eventDS.setFields(eventIdField, nameField, descField, startDateField, endDateField, laneField); eventDS.setClientOnly(true); eventDS.setTestData(TimelineData.getRecords()); Timeline calendar = new Timeline(); calendar.setHeight(451); calendar.setStartDate(new Date(112, 5, 2)); calendar.setEndDate(new Date(112, 5, 22)); calendar.setData(TimelineData.getRecords()); calendar.setLanes(TimelineLaneData.getRecords()); calendar.setCanEditLane(true); calendar.setShowEventDescriptions(false); HeaderLevel[] headerLevels = new HeaderLevel[]{ new HeaderLevel(TimeUnit.WEEK), new HeaderLevel(TimeUnit.DAY) }; calendar.setHeaderLevels(headerLevels); calendar.setLaneFields(new ListGridField[]{ new ListGridField("title", "Developer", 120)}); calendar.setDataSource(eventDS); calendar.setAutoFetchData(true); calendar.draw(); } }