com.smartgwt.client.widgets.calendar

## Class Calendar

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.smartgwt.client.widgets.BaseWidget
      - - com.smartgwt.client.widgets.Canvas
        - - com.smartgwt.client.widgets.calendar.Calendar

- All Implemented Interfaces:
    com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.HasVisibility, com.google.gwt.user.client.ui.IsWidget, LogicalStructure, HasBackgroundClickHandlers, HasBackgroundMouseDownHandlers, HasBackgroundMouseUpHandlers, HasCurrentViewChangedHandlers, HasDateChangedHandlers, HasDayBodyClickHandlers, HasDayHeaderClickHandlers, HasEventAddedHandlers, HasEventChangedHandlers, HasEventClickHandlers, HasEventHoverHTMLHandlers, HasEventMovedHandlers, HasEventRemoveClickHandlers, HasEventRemovedHandlers, HasEventRepositionMoveHandlers, HasEventRepositionStopHandlers, HasEventResizedHandlers, HasEventResizeMoveHandlers, HasEventResizeStopHandlers, HasTimelineEventMovedHandlers, HasTimelineEventResizedHandlers, DataBoundComponent, HasClickHandlers, HasDoubleClickHandlers, HasDragCompleteHandlers, HasDragMoveHandlers, HasDragRepositionMoveHandlers, HasDragRepositionStartHandlers, HasDragRepositionStopHandlers, HasDragResizeMoveHandlers, HasDragResizeStartHandlers, HasDragResizeStopHandlers, HasDragStartHandlers, HasDragStopHandlers, HasDropCompleteHandlers, HasDropHandlers, HasDropMoveHandlers, HasDropOutHandlers, HasDropOverHandlers, HasFetchDataHandlers, HasFocusChangedHandlers, HasHoverHandlers, HasHoverHiddenHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseStillDownHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasMovedHandlers, HasParentMovedHandlers, HasResizedHandlers, HasRightMouseDownHandlers, HasRuleContextChangedHandlers, HasScrolledHandlers, HasShowContextMenuHandlers, HasVisibilityChangedHandlers
  Direct Known Subclasses:
    Timeline

      public class Calendar
      extends Canvas
      implements DataBoundComponent, HasBackgroundClickHandlers, HasBackgroundMouseDownHandlers, HasBackgroundMouseUpHandlers, HasCurrentViewChangedHandlers, HasDateChangedHandlers, HasDayBodyClickHandlers, HasDayHeaderClickHandlers, HasEventAddedHandlers, HasEventChangedHandlers, HasEventClickHandlers, HasEventMovedHandlers, HasEventRemoveClickHandlers, HasEventRemovedHandlers, HasEventRepositionMoveHandlers, HasEventRepositionStopHandlers, HasEventResizedHandlers, HasEventResizeMoveHandlers, HasEventResizeStopHandlers, HasEventHoverHTMLHandlers, HasTimelineEventMovedHandlers, HasTimelineEventResizedHandlers

  The Calendar component provides several different ways for a user to view and edit a set of events. Note that the `Calendar module` must be loaded to make use of the Calendar class.

  CalendarEvents

  Events are represented as ordinary JavaScript Objects (see `CalendarEvent`). The Calendar expects to be able to read and write a basic set of properties on events: name, startDate, endDate, description, etc, which can be stored under configurable property names (see eg `startDateField`).

  Much like a `ListGrid` manages it's ListGridRecords, the Calendar can either be passed an ordinary Array of CalendarEvents or can fetch data from a DataSource. When this is the case, if the DataSource does not contain fields with the configured property names, an attempt is made to auto-detect likely-looking fields from those that are present. To see logs indicating that this has happened, switch default logging preferences to INFO level in the Developer Console.

  If the calendar is bound to a DataSource, event changes by user action or by calling methods will be saved to the DataSource.

  Navigation

  The calendar supports a number of views by default: `day`, `week`, `month` and `timeline`. The user can navigate using back and forward buttons or via an attached `DateChooser`.

  Event Manipulation

  Events can be created by clicking directly onto one of the views, or via the `Add Event` button. In the day, week and timeline views, the user may click and drag to create an event of a specific duration.

  Creating an event via click or click and drag pops up the `EventDialog`, which provides a simple form for quick event entry (for normal events, only the description is required by default - for events that are shown in a `lane`, that field is also required).

  A separate editor called the `EventEditor` provides an interface for editing all possible properties of an event, including custom properties. The EventEditor is used whenever a pre-existing event is being edited, and can also be invoked by the user wherever the simpler EventDialog appears.

  Events can also be programmatically `added`, `removed`, or `updated`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `com.google.gwt.user.client.ui.UIObject.DebugIdImpl, com.google.gwt.user.client.ui.UIObject.DebugIdImplEnabled`

  - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.widgets.BaseWidget

      `config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Calendar()`
    `Calendar(com.google.gwt.core.client.JavaScriptObject jsObj)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.google.gwt.event.shared.HandlerRegistration` | `addBackgroundClickHandler(BackgroundClickHandler handler)` Add a backgroundClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addBackgroundMouseDownHandler(BackgroundMouseDownHandler handler)` Add a backgroundMouseDown handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addBackgroundMouseUpHandler(BackgroundMouseUpHandler handler)` Add a backgroundMouseUp handler.
    `void` | `addCalendarEvent(CalendarEvent event)` Create a new event in this calendar.
    `void` | `addCalendarEvent(CalendarEvent event, java.util.Map customValues)` Create a new event in this calendar.
    `com.google.gwt.event.shared.HandlerRegistration` | `addCurrentViewChangedHandler(CurrentViewChangedHandler handler)` Add a currentViewChanged handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDateChangedHandler(DateChangedHandler handler)` Add a dateChanged handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDayBodyClickHandler(DayBodyClickHandler handler)` Add a dayBodyClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDayHeaderClickHandler(DayHeaderClickHandler handler)` Add a dayHeaderClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDragCompleteHandler(DragCompleteHandler handler)` Add a `com.smartgwt.client.widgets.DragCompleteHandler`.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDropCompleteHandler(DropCompleteHandler handler)` Add a `com.smartgwt.client.widgets.DropCompleteHandler`.
    `void` | `addEvent(java.util.Date startDate, java.util.Date endDate, java.lang.String name, java.lang.String description)` Create a new event in this calendar instance.
    `void` | `addEvent(java.util.Date startDate, java.util.Date endDate, java.lang.String name, java.lang.String description, java.util.Map otherFields)` Create a new event in this calendar instance.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventAddedHandler(EventAddedHandler handler)` Add a eventAdded handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventChangedHandler(EventChangedHandler handler)` Add a eventChanged handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventClickHandler(EventClickHandler handler)` Add a eventClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventHoverHTMLHandler(EventHoverHTMLHandler handler)` Deprecated. Please use setEventHoverHTMLCustomizer instead, this will be removed in a future release.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventMovedHandler(EventMovedHandler handler)` Deprecated. Please use addEventReposition[Move/Stop]Handler instead, this will be removed in a future release.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventRemoveClickHandler(EventRemoveClickHandler handler)` Add a eventRemoveClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventRemovedHandler(EventRemovedHandler handler)` Add a eventRemoved handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventRepositionMoveHandler(EventRepositionMoveHandler handler)` Add a eventRepositionMove handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventRepositionStopHandler(EventRepositionStopHandler handler)` Add a eventRepositionStop handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventResizedHandler(EventResizedHandler handler)` Deprecated. Please use addEventResize[Move/Stop]Handler instead, this will be removed in a future release.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventResizeMoveHandler(EventResizeMoveHandler handler)` Add a eventResizeMove handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addEventResizeStopHandler(EventResizeStopHandler handler)` Add a eventResizeStop handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addFetchDataHandler(FetchDataHandler handler)` Add a fetchData handler.
    `void` | `addFormulaField()` Convenience method to display a `com.smartgwt.client..FormulaBuilder` to create a new Formula Field.
    `void` | `addIndicator(CalendarEvent indicator)` Adds a new `indicator` to the calendar.
    `void` | `addLane(Lane lane)` Adds a new `Lane` to the calendar, for display in the `timeline view`, and in the `day view` if `showDayLanes` is true.
    `void` | `addLaneEvent(Lane laneName, java.util.Date startDate)` Deprecated. in favor of `addCalendarEvent()`
    `void` | `addLaneEvent(Lane laneName, java.util.Date startDate, java.util.Date endDate)`
    `void` | `addLaneEvent(Lane laneName, java.util.Date startDate, java.util.Date endDate, java.lang.String name)`
    `void` | `addLaneEvent(Lane laneName, java.util.Date startDate, java.util.Date endDate, java.lang.String name, java.lang.String description)`
    `void` | `addLaneEvent(Lane laneName, java.util.Date startDate, java.util.Date endDate, java.lang.String name, java.lang.String description, java.lang.Object otherFields)` Deprecated. in favor of `addCalendarEvent()`
    `void` | `addSummaryField()` Convenience method to display a `com.smartgwt.client..SummaryBuilder` to create a new Summary Field.
    `com.google.gwt.event.shared.HandlerRegistration` | `addTimelineEventMovedHandler(TimelineEventMovedHandler handler)` Deprecated. Please use addEventReposition[Move/Stop]Handler instead, this will be removed in a future release.
    `com.google.gwt.event.shared.HandlerRegistration` | `addTimelineEventResizedHandler(TimelineEventResizedHandler handler)` Deprecated. Please use addEventResize[Move/Stop]Handler instead, this will be removed in a future release.
    `void` | `addZone(CalendarEvent zone)` Adds a new `zone` to the calendar.
    `java.lang.Boolean` | `anySelected()` Whether at least one item is selected
    `static boolean` | `calendarLoaded()` Static method indicating whether the optional Calendar module is loaded for the page.
    `void` | `cancelEditing()` Cancels the current edit-session, closing the builtin event `dialog` or `editor` and clearing any visible edit-selection from the `current CalendarView`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)` Changes the defaults for Canvas AutoChildren named `autoChildName`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)` Changes the defaults for FormItem AutoChildren named `autoChildName`.
    `protected com.google.gwt.core.client.JavaScriptObject` | `create()`
    `boolean` | `dateIsWorkday(java.util.Date date)` Should the parameter date be considered a workday? By default this method tries to find the parameter date day in `workdays`, and returns true if found.
    `void` | `deselectAllRecords()` Deselect all records
    `void` | `deselectRecord(int record)` Deselect a `Record` passed in explicitly, or by index.
    `void` | `deselectRecord(Record record)` Deselect a `Record` passed in explicitly, or by index.
    `void` | `deselectRecords(int[] records)` Deselect a list of `Record`s passed in explicitly, or by index.
    `void` | `deselectRecords(Record[] records)` Deselect a list of `Record`s passed in explicitly, or by index.
    `void` | `disableHilite(java.lang.String hiliteID)` Disable a hilite
    `void` | `disableHiliting()` Disable all hilites.
    `void` | `editFields()` Shows a FieldPicker interface allowing end-users to rearrange the order and visibiility of the fields in the associated DataBoundComponent.
    `void` | `editHilites()` Shows a HiliteEditor interface allowing end-users to edit the data-hilites currently in use by this DataBoundComponent.
    `void` | `enableHilite(java.lang.String hiliteID)` Enable / disable a `hilites`
    `void` | `enableHilite(java.lang.String hiliteID, boolean enable)` Enable / disable a `hilites`
    `void` | `enableHiliting()` Enable all hilites.
    `void` | `enableHiliting(boolean enable)` Enable all hilites.
    `void` | `eventsRendered()` A notification method fired when the events in the current view have been refreshed.
    `void` | `exportData()` Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the current filter and sort criteria for this component, then exports the resulting data to a file or window in the requested format.
    `void` | `exportData(DSRequest requestProperties)` Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the current filter and sort criteria for this component, then exports the resulting data to a file or window in the requested format.
    `void` | `fetchData()` Retrieves data from the DataSource that matches the specified criteria.
    `void` | `fetchData(Criteria criteria)` Retrieves data from the DataSource that matches the specified criteria.
    `void` | `fetchData(Criteria criteria, DSCallback callback)` Retrieves data from the DataSource that matches the specified criteria.
    `void` | `fetchData(Criteria criteria, DSCallback callback, DSRequest requestProperties)` Retrieves data from the DataSource that matches the specified criteria.
    `void` | `filterData()` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `void` | `filterData(Criteria criteria)` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `void` | `filterData(Criteria criteria, DSCallback callback)` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `void` | `filterData(Criteria criteria, DSCallback callback, DSRequest requestProperties)` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `Record` | `find(AdvancedCriteria adCriteria)` Filters all objects according to the AdvancedCriteria passed and returns the first matching object or null if not found
    `Record[]` | `findAll(AdvancedCriteria adCriteria)` Filters all objects according to the AdvancedCriteria passed
    `int` | `findIndex(AdvancedCriteria adCriteria)` Finds the index of the first Record that matches with the AdvacendCriteria passed.
    `int` | `findNextIndex(int startIndex, AdvancedCriteria adCriteria)` Like `RecordList.findIndex(java.util.Map)`, but considering the startIndex parameter.
    `int` | `findNextIndex(int startIndex, AdvancedCriteria adCriteria, int endIndex)` Like `RecordList.findIndex(java.util.Map)`, but considering the startIndex and endIndex parameters.
    `java.lang.Integer` | `getActiveDay()` Gets the day of the week (0-6) that the mouse is currently over.
    `java.util.Date` | `getActiveTime()` Gets a date object representing the date over which the mouse is hovering for the current selected view.
    `java.lang.Boolean` | `getAddDropValues()` Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key.
    `ImgButton` | `getAddEventButton()` An `ImgButton` that appears in a Calendar's week/day/month views and offers an alternative way to create a new `event`.
    `java.lang.String` | `getAddEventButtonHoverText()` The text to be displayed when a user hovers over the `add event` toolbar button
    `java.lang.String` | `getAddFormulaFieldText()` Text for a menu item allowing users to add a formula field
    `java.lang.String` | `getAddOperation()` `operationId` this component should use when performing add operations.
    `java.lang.String` | `getAddSummaryFieldText()` Text for a menu item allowing users to add a formula field
    `java.lang.Boolean` | `getAllowDurationEvents()` When set to true, allows events to be managed by duration, as well as by end date.
    `java.lang.Boolean` | `getAlternateLaneStyles()` When showing a `Timeline`, or a `day view` when `showDayLanes` is true, whether to make lane boundaries more obvious by showing alternate lanes in a different color.
    `java.lang.Boolean` | `getAutoFetchAsFilter()` If `DataBoundComponent.setAutoFetchData(Boolean)` is true, this attribute determines whether the initial fetch operation should be performed via `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()`
    `java.lang.Boolean` | `getAutoFetchData()` If true, when this component is first drawn, automatically call `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()` depending on `DataBoundComponent.getAutoFetchAsFilter()` .
    `TextMatchStyle` | `getAutoFetchTextMatchStyle()` If `autoFetchData` is `true`, this attribute allows the developer to specify a textMatchStyle for the initial `DataBoundComponent.fetchData()` call.
    `java.lang.String` | `getBackButtonTitle()` The title of the `month` on Handsets when the `month view` is the current visible view.
    `java.lang.String` | `getBaseStyle()` The base name for the CSS class applied to the grid cells of the day and week views of the calendar.
    `java.lang.Boolean` | `getBringEventsToFront()` If set to true, clicking an event will bring it to the front of the zorder.
    `java.lang.Boolean` | `getCanAddFormulaFields()` Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the `com.smartgwt.client..FormulaBuilder`.
    `java.lang.Boolean` | `getCanAddSummaryFields()` Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the `com.smartgwt.client..SummaryBuilder`.
    `IButton` | `getCancelButton()` An `com.smartgwt.client.types.AutoChild` of type `IButton`, used to cancel editing of an event and close the `eventEditor`.
    `java.lang.String` | `getCancelButtonTitle()` The title for the `Cancel button` in the `event editor`.
    `java.lang.Boolean` | `getCanCreateEvents()` If true, users can create new events.
    `java.lang.Boolean` | `getCanDeleteEvents()` Deprecated. in favor of `canRemoveEvents`
    `java.lang.Boolean` | `getCanDragCreateEvents()` A boolean value controlling whether new events of varying length can be created by dragging the cursor.
    `java.lang.String` | `getCanDragEventField()` Name of the field on each `CalendarEvent` that determines whether an `EventCanvas` can be moved or resized by dragging with the mouse.
    `java.lang.Boolean` | `getCanDragEvents()` A boolean value controlling whether users can drag-reposition events.
    `java.lang.Boolean` | `getCanEditEvents()` If true, users can edit existing events.
    `java.lang.String` | `getCanEditField()` Name of the field on each `CalendarEvent` that determines whether it can be edited in the `event editor`.
    `java.lang.Boolean` | `getCanEditLane()` Can events be moved between lanes? If so, the event can be dragged to a different `lane`, and the event `quick dialog` and `editor` allow a lane to be selected with a drop-down chooser.
    `java.lang.String` | `getCanEditLaneField()` Name of the field on each `CalendarEvent` that determines whether that event can be moved between lanes.
    `java.lang.Boolean` | `getCanEditSublane()` Can events be moved between sublanes?
    `java.lang.String` | `getCanEditSublaneField()` Name of the field on each `CalendarEvent` that determines whether that event can be moved between individual `sublanes` in a `Lane`.
    `java.lang.Boolean` | `getCanGroupLanes()` If true, allows the lanes in a Timeline to be grouped by providing a value for `laneGroupByField`.
    `java.lang.Boolean` | `getCanRemoveEvents()` If true, users can remove existing events.
    `java.lang.String` | `getCanRemoveField()` Name of the field on each `CalendarEvent` that determines whether an event shows a remove button.
    `java.lang.Boolean` | `getCanReorderLanes()` If true, lanes can be reordered by dragging their `laneFields` with the mouse.
    `java.lang.String` | `getCanResizeEventField()` Name of the field on each `CalendarEvent` that determines whether an event can be resized by dragging.
    `java.lang.Boolean` | `getCanResizeEvents()` Can `events` be resized by dragging appropriate edges of the `canvas`? Only has an effect when both `canEditEvents` and `canDragEvents` are true.
    `java.lang.Boolean` | `getCanResizeTimelineEvents()` Deprecated. in favor of `canResizeEvents`;
    `java.util.Date` | `getCellDate()` Return the Date instance associated with the passed co-ordinates in the passed or selected view.
    `java.util.Date` | `getCellDate(java.lang.Integer rowNum)`
    `java.util.Date` | `getCellDate(java.lang.Integer rowNum, java.lang.Integer colNum)`
    `java.util.Date` | `getCellDate(java.lang.Integer rowNum, java.lang.Integer colNum, CalendarView view)` Return the Date instance associated with the passed co-ordinates in the passed or selected view.
    `java.lang.String` | `getCellHoverHTML(CalendarView view, Record record, java.lang.Integer rowNum, java.lang.Integer colNum, java.util.Date date, java.lang.String defaultValue)` Returns the hover HTML for the cell at the passed co-ordinates in the passed view.
    `java.util.Date` | `getChosenDate()` The date for which events are displayed in the day, week, and month tabs of the calendar.
    `java.lang.Integer` | `getColumnsPerPage()` When using the Next and Previous arrows to scroll a Timeline, this is the number of columns of the `timelineGranularity` to scroll by.
    `HLayout` | `getControlsBar()` An `HLayout` shown above the Calendar views and displaying a set of controls for interacting with the current view - namely, the `next`, `previous` and `add` buttons, the `date label` and the `date-picker` icon.
    `ViewName` | `getCurrentViewName()` The name of the view that should be visible initially by default.
    `CalendarEvent[]` | `getData()` A List of CalendarEvent objects, specifying the data to be used to populate the calendar.
    `com.google.gwt.core.client.JavaScriptObject` | `getDataAsJSList()`
    `FetchMode` | `getDataFetchMode()` How to fetch and manage records retrieve from the server.
    `int` | `getDataPageSize()` When using `data paging`, how many records to fetch at a time.
    `DataSource` | `getDataSource()` The DataSource that this component should bind to for default fields and for performing `DataSource requests`.
    `java.lang.String` | `getDateCellAlign(java.util.Date date, java.lang.Integer rowNum, java.lang.Integer colNum, CalendarView view)` When `getDateHTML` returns a value, this method returns the horizontal alignment for that value in its cell, in the passed view.
    `java.lang.String` | `getDateCellVAlign(java.util.Date date, java.lang.Integer rowNum, java.lang.Integer colNum, CalendarView view)` When `getDateHTML` returns a value, this method returns the vertical alignment for that value in its cell, in the passed view.
    `DateChooser` | `getDateChooser()` `DateChooser` used to select the date for which events will be displayed.
    `java.lang.String` | `getDateCSSText(java.util.Date date, java.lang.Integer rowNum, java.lang.Integer colNum, CalendarView view)` Return CSS text for styling the cell associated with the passed date and/or rowNum & colNum, which will be applied in addition to the CSS class for the cell, as overrides.
    `DateEditingStyle` | `getDateEditingStyle()` Indicates the type of controls to use in event-windows.
    `DateDisplayFormat` | `getDateFormatter()` Date formatter for displaying events.
    `java.util.Date` | `getDateFromPoint()` Returns a Date instance representing the point at the passed offsets into the body of the current view.
    `java.util.Date` | `getDateFromPoint(java.lang.Integer x)`
    `java.util.Date` | `getDateFromPoint(java.lang.Integer x, java.lang.Integer y)`
    `java.util.Date` | `getDateFromPoint(java.lang.Integer x, java.lang.Integer y, java.lang.Boolean snapOffsets)`
    `java.util.Date` | `getDateFromPoint(java.lang.Integer x, java.lang.Integer y, java.lang.Boolean snapOffsets, CalendarView view)` Returns a Date instance representing the point at the passed offsets into the body of the current view.
    `java.lang.String` | `getDateHeaderTitle(java.util.Date date, int dayOfWeek, java.lang.String defaultValue, CalendarView view)` Return the title text to display in the header-button of the ListGridField showing the passed date, in the passed view.
    `java.lang.String` | `getDateHTML(java.util.Date date, java.lang.Integer rowNum, java.lang.Integer colNum, CalendarView view)` Return the HTML to be displayed in the associated date-cell in the passed view.
    `Label` | `getDateLabel()` The `com.smartgwt.client.types.AutoChild` `Label` used to display the current date or range above the selected calendar view.
    `java.lang.String` | `getDateLabelText(java.lang.String viewName, java.util.Date startDate, java.util.Date endDate)` Returns the text to display with the navigation buttons above the Calendar - indicates the visible date range.
    `ImgButton` | `getDatePickerButton()` An `ImgButton` that appears above the various views of the calendar and offers alternative access to a `DateChooser` to pick the current day.
    `java.lang.String` | `getDatePickerHoverText()` The text to be displayed when a user hovers over the `date picker` toolbar button
    `java.lang.String` | `getDateStyle(java.util.Date date, java.lang.Integer rowNum, java.lang.Integer colNum, CalendarView view)` Return the CSS styleName for the associated date-cell in the passed view.
    `java.lang.String` | `getDayBodyBaseStyle()` The base name for the CSS class applied to the day body of the month view of the calendar.
    `protected java.lang.String` | `getDayBodyHTML(java.util.Date date, CalendarEvent[] events, Calendar calendar, int rowNum, int colNum)` Return the HTML to be shown in the body of a day in the month view.
    `java.lang.String` | `getDayHeaderBaseStyle()` The base name for the CSS class applied to the day headers of the month view.
    `CalendarView` | `getDayView()` `CalendarView` used to display events that pertain to a given day.
    `java.lang.String` | `getDayViewTitle()` The title for the `day view`.
    `java.lang.Boolean` | `getDeepCloneOnEdit()` Before we start editing values in this DataBoundComponent, should we perform a deep clone of the underlying values.
    `int` | `getDefaultTimelineColumnSpan()` The number of columns of the `timelineGranularity` to give the timeline by default if no `endDate` is provided.
    `java.lang.String` | `getDescriptionField()` The name of the description field on a `CalendarEvent`.
    `java.lang.String` | `getDetailsButtonTitle()` The title for the edit button in the quick `quick event dialog`.
    `java.lang.Boolean` | `getDisableWeekends()` If true, weekend days appear in a disabled style and events cannot be created on weekends.
    `Record[]` | `getDragData()` During a drag-and-drop interaction, this method returns the set of records being dragged out of the component.
    `DragDataAction` | `getDragDataAction()` Indicates what to do with data dragged into another DataBoundComponent.
    `java.lang.String` | `getDragHoverHTML(CalendarView view, CalendarEvent event, java.lang.String defaultValue)` Returns the HTML to show in a hover when an existing event is dragged, or when a new event is being created by dragging with the mouse.
    `java.lang.String` | `getDragTrackerStyle()` CSS Style to apply to the drag tracker when dragging occurs on this component.
    `java.util.Map` | `getDropValues()` When an item is dropped on this component, and `addDropValues` is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that Smart GWT will apply to the dropped object before updating it.
    `java.lang.String` | `getDuplicateDragMessage()` Message to show when a user attempts to transfer duplicate records into this component, and `preventDuplicates` is enabled.
    `java.lang.String` | `getDurationField()` The name of the `duration` field on a `CalendarEvent`.
    `java.lang.String` | `getDurationUnitField()` The name of the `durationUnit` field on a `CalendarEvent`.
    `java.lang.String` | `getEditFormulaFieldText()` Text for a menu item allowing users to edit a formula field
    `java.lang.String` | `getEditSummaryFieldText()` Text for a menu item allowing users to edit the formatter for a field
    `java.util.Date` | `getEndDate()` The end date of the calendar timeline view.
    `java.lang.String` | `getEndDateField()` The name of the end date field on a `CalendarEvent`.
    `java.lang.Boolean` | `getEventAutoArrange()` If set to true, enables the auto-arrangement of events that share time in the calendar.
    `java.lang.String` | `getEventBodyHTML(CalendarEvent event)` Returns the description text for the passed event, for display in the body area of an event canvas.
    `java.lang.String` | `getEventBodyHTML(CalendarEvent event, CalendarView view)` Returns the description text for the passed event, for display in the body area of an event canvas.
    `EventCanvas` | `getEventCanvas()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `HLayout` | `getEventCanvasButtonLayout()` HLayout that snaps to the top-right of an event canvas on rollover and contains the `close` and/or `context` buttons.
    `ImgButton` | `getEventCanvasCloseButton()` The close button that snaps to the top-right of an event canvas on rollover and allows an event to be removed from a `CalendarView`.
    `ImgButton` | `getEventCanvasContextButton()` The context button that snaps to the top-right of an event canvas on rollover and shows a custom `context menu` when clicked.
    `Menu` | `getEventCanvasContextMenu()` Context menu displayed when an `event canvas` is right-clicked, or when the rollover `context button` is clicked.
    `Img` | `getEventCanvasGripper()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `Img` | `getEventCanvasHResizer()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `Label` | `getEventCanvasLabel()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `MenuItem[]` | `getEventCanvasMenuItems(EventCanvas canvas)` If this method returns a value, it is expected to return an array of `items` applicable to the passed canvas and its event.
    `java.lang.String` | `getEventCanvasStyle(CalendarEvent event)` Returns the `styleName` to use for the passed `event`, in the passed `view`.
    `java.lang.String` | `getEventCanvasStyle(CalendarEvent event, CalendarView view)` Returns the `styleName` to use for the passed `event`, in the passed `view`.
    `Img` | `getEventCanvasVResizer()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `java.lang.String` | `getEventDescriptionFieldTitle()` The title for the `descriptionField` field in the quick `event dialog` and the detailed `editor`.
    `Window` | `getEventDialog()` An `com.smartgwt.client.types.AutoChild` of type `Window` that displays a quick event entry form in a popup window.
    `java.lang.Integer` | `getEventDragGap()` The number of pixels to leave to the right of events so overlapping events can still be added using the mouse.
    `java.lang.String` | `getEventDurationFieldTitle()` The title for the `duration field` in the quick `event dialog` and the detailed `editor`.
    `java.lang.String` | `getEventDurationUnitFieldTitle()` The title for the `duration unit field` in the quick `event dialog` and the detailed `editor`.
    `DynamicForm` | `getEventEditor()` An `com.smartgwt.client.types.AutoChild` of type `DynamicForm` which displays `event data`.
    `HLayout` | `getEventEditorButtonLayout()` An `com.smartgwt.client.types.AutoChild` of type `HLayout` which houses the `Save`, `Remove` and `Cancel` buttons in the `eventEditor`.
    `Window` | `getEventEditorLayout()` An `com.smartgwt.client.types.AutoChild` of type `Window` that displays the full `event editor`
    `java.util.Date` | `getEventEndDate(CalendarEvent event)` Returns the `end date` of the passed event.
    `java.lang.String` | `getEventEndDateFieldTitle()` The title for the `endDateField` in the quick `event dialog` and the detailed `editor`.
    `int` | `getEventHeaderHeight()` When `eventHeaderWrap` is false and `showEventDescriptions` is true, this is the fixed height for the `header area` in event canvases.
    `java.lang.String` | `getEventHeaderHTML(CalendarEvent event)` Returns the title text for the passed event, for display in the header area of an event canvas.
    `java.lang.String` | `getEventHeaderHTML(CalendarEvent event, CalendarView view)` Returns the title text for the passed event, for display in the header area of an event canvas.
    `boolean` | `getEventHeaderWrap()` When rendering the `canvas` for an event, whether to allow the content of the `header area` to wrap to multiple lines.
    `Lane` | `getEventLane(CalendarEvent event)` Returns the `lane` associated with the passed event, in the passed view
    `Lane` | `getEventLane(CalendarEvent event, CalendarView view)` Returns the `lane` associated with the passed event, in the passed view
    `java.lang.String` | `getEventLaneFieldTitle()` The title for the `laneNameField` in the quick `event dialog` and the detailed `editor`.
    `void` | `getEventLength(CalendarEvent event)` Returns the length of the passed `event` in the passed `unit`.
    `void` | `getEventLength(CalendarEvent event, TimeUnit unit)` Returns the length of the passed `event` in the passed `unit`.
    `java.lang.String` | `getEventNameFieldTitle()` The title for the `nameField` in the quick `event dialog` and the detailed `editor`.
    `java.lang.Boolean` | `getEventOverlap()` When `eventAutoArrange` is true, setting eventOverlap to true causes events that share timeslots to overlap each other by a percentage of their width, specified by `eventOverlapPercent`.
    `java.lang.Boolean` | `getEventOverlapIdenticalStartTimes()` When set to true, events that start at the same time will not overlap each other to prevent events having their close button hidden.
    `int` | `getEventOverlapPercent()` The size of the overlap, presented as a percentage of the width of events sharing timeslots.
    `java.lang.Integer` | `getEventSnapGap()` The number of minutes that determines the positions to which events will snap when rendered, and when moved or resized with the mouse.
    `java.util.Date` | `getEventStartDate(CalendarEvent event)` Returns the `start date` of the passed event.
    `java.lang.String` | `getEventStartDateFieldTitle()` The title for the `startDateField` in the quick `event dialog` and the detailed `editor`.
    `java.lang.String` | `getEventStyleName()` The base name for the CSS class applied to `events` when they're rendered in calendar views.
    `java.lang.String` | `getEventStyleNameField()` The name of the field used to override `eventStyleName` for an individual `CalendarEvent`.
    `Lane` | `getEventSublane(CalendarEvent event)` Returns the `sublane` associated with the passed event, in the passed view
    `Lane` | `getEventSublane(CalendarEvent event, CalendarView view)` Returns the `sublane` associated with the passed event, in the passed view
    `java.lang.String` | `getEventSublaneFieldTitle()` The title for the `sublaneNameField` in the quick `event dialog` and the detailed `event editor`.
    `EventWindow` | `getEventWindow()` Deprecated. in favor of `eventCanvas`
    `java.lang.String` | `getEventWindowStyle()` Deprecated. in favor of `eventStyleName`
    `java.lang.String` | `getEventWindowStyleField()` Deprecated. in favor of `eventStyleNameField`
    `java.lang.Boolean` | `getExportAll()` Setting exportAll to true prevents the component from passing its list of fields to the export call.
    `java.lang.String[]` | `getExportFields()` The list of field-names to export.
    `java.lang.String` | `getFetchOperation()` Operation ID this component should use when performing fetch operations.
    `Alignment[]` | `getFieldAlignments()` Returna an array of field alignments for this grid
    `int` | `getFieldCount()` Return the number of fields.
    `com.google.gwt.core.client.JavaScriptObject[]` | `getFieldsAsJavaScriptObjects()` Return the fields as JavaScriptObjects rather than as SmartGWT Java wrappers of the field class type (e.g.
    `java.lang.Integer` | `getFirstDayOfWeek()` The numeric day (0-6) which the calendar should consider as the first day of the week - if unset, the default is taken from the current locale.
    `java.lang.String` | `getHeaderHoverHTML(CalendarView view, HeaderLevel headerLevel, java.util.Date startDate, java.util.Date endDate, java.lang.String defaultValue)` Returns the hover HTML to show in a hover when the mouse moves over the header area.
    `HeaderLevel[]` | `getHeaderLevels()` Configures the levels of `headers` shown above the event area, and their time units.
    `java.lang.Boolean` | `getHideUnusedLanes()` When set to true, hides any `lane` that doesn't have any active events in the current dataset.
    `java.lang.String` | `getHiliteProperty()` Marker that can be set on a record to flag that record as hilited.
    `Hilite[]` | `getHilites()` Return the set of hilite-objects currently applied to this DataBoundComponent.
    `java.lang.String` | `getHiliteState()` Get the current hilites encoded as a String, for saving.
    `IndicatorCanvas` | `getIndicatorCanvas()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `java.lang.String` | `getIndicatorCanvasStyle(CalendarEvent indicator)` Returns the `styleName` to use for the passed `indicator`, in the passed `view`.
    `java.lang.String` | `getIndicatorCanvasStyle(CalendarEvent indicator, CalendarView view)` Returns the `styleName` to use for the passed `indicator`, in the passed `view`.
    `java.lang.String` | `getIndicatorHoverHTML(CalendarEvent indicator, IndicatorCanvas indicatorCanvas, CalendarView view, java.lang.String defaultValue)` Gets the hover HTML for an `indicator` being hovered over.
    `CalendarEvent[]` | `getIndicators()` An array of CalendarEvent instances representing instants in time, to be highlighted in `timeline views`.
    `java.lang.String` | `getIndicatorStyleName()` CSS style to apply to the `canvases` created for each specified `indicator`.
    `Criteria` | `getInitialCriteria()` Criteria to use when `DataBoundComponent.setAutoFetchData(Boolean)` is used.
    `java.lang.String` | `getInvalidDateMessage()` The message to display in the `eventEditor` when the 'To' date is greater than the 'From' date and a save is attempted.
    `Lane` | `getLane(java.lang.String lane)` Returns the `lane` with the passed name, in the passed view
    `Lane` | `getLane(java.lang.String lane, CalendarView view)` Returns the `lane` with the passed name, in the passed view
    `java.lang.Integer` | `getLaneEventPadding()` The pixel space to leave between events and the edges of the `lane` or `sublane` they appear in.
    `CalendarEvent[]` | `getLaneEvents(Lane lane)` For views that support `lanes`, returns the array of events in the current dataset that apply to the passed lane in the passed or current view.
    `CalendarEvent[]` | `getLaneEvents(Lane lane, CalendarView view)` For views that support `lanes`, returns the array of events in the current dataset that apply to the passed lane in the passed or current view.
    `CalendarEvent[]` | `getLaneEvents(java.lang.String lane)` For views that support `lanes`, returns the array of events in the current dataset that apply to the passed lane in the passed or current view.
    `ListGridField[]` | `getLaneFields()` Field definitions for the frozen area of the `timelineView`, which shows data about the timeline `lanes`.
    `Lane` | `getLaneFromPoint()` Returns the `Lane` at the passed co-ordinates.
    `Lane` | `getLaneFromPoint(java.lang.Integer x)`
    `Lane` | `getLaneFromPoint(java.lang.Integer x, java.lang.Integer y)`
    `Lane` | `getLaneFromPoint(java.lang.Integer x, java.lang.Integer y, CalendarView view)` Returns the `Lane` at the passed co-ordinates.
    `java.lang.String` | `getLaneGroupByField()` For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
    `java.lang.String[]` | `getLaneGroupByFieldAsString()` For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
    `java.lang.String` | `getLaneNameField()` The name of the field which will determine the `lane` in which this event will be displayed in `Timeline`s and in the `day view`, if `showDayLanes` is true.
    `java.lang.Integer` | `getLanePadding()` For views that support `lanes`, returns the padding to apply to events rendered in lanes in the passed or current view.
    `java.lang.Integer` | `getLanePadding(CalendarView view)` For views that support `lanes`, returns the padding to apply to events rendered in lanes in the passed or current view.
    `Lane[]` | `getLanes()` An array of `Lane` definitions that represent the rows of the `timelineView`, or the columns of the `dayView` if `showDayLanes` is true.
    `java.lang.String` | `getLeadingDateField()` The name of the leading date field for each event.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `getLogicalStructure()` Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `TabSet` | `getMainView()` `TabSet` for managing calendar views when multiple views are available (eg, `day` and `month`).
    `boolean` | `getMinimalUI()` A boolean value controlling whether the Calendar shows tabs for available calendar views.
    `java.lang.Integer` | `getMinimumDayHeight()` In the `month view` when `showDayHeaders` is true, this is the minimum height applied to a day cell and its header combined.
    `java.lang.Integer` | `getMinLaneWidth()` When showing `vertical lanes` in the `dayView`, this attribute sets the minimum width of each column or field.
    `java.lang.Integer` | `getMinutesPerRow()` The number of minutes per row in `day` and `week` views.
    `NavigationButton` | `getMonthButton()` A `NavigationButton` that appears to the left of other navigation controls in the `controls bar` on Handset devices.
    `java.lang.String` | `getMonthButtonTitle()` The title of the `month button`, used for showing and hiding the `month view` on Handsets.
    `java.lang.String` | `getMonthMoreEventsLinkTitle()` The title of the link shown in a cell of a `month view` when there are too many events to be displayed at once.
    `Menu` | `getMonthMoreEventsMenu()` AutoChild Menu, shown when a user clicks the `more events` link in a cell of the `monthView`.
    `CalendarView` | `getMonthView()` `CalendarView` used to display events that pertain to a given month.
    `java.lang.String` | `getMonthViewHoverHTML(java.util.Date date, CalendarEvent... events)` This method returns the hover HTML to be displayed when the user hovers over a cell displayed in the calendar month view tab.
    `java.lang.String` | `getMonthViewTitle()` The title for the `month view`.
    `java.lang.String` | `getNameField()` The name of the name field on a `CalendarEvent`.
    `ImgButton` | `getNextButton()` An `ImgButton` that appears above the week/day/month views of the calendar and allows the user to move the calendar forwards in time.
    `java.lang.String` | `getNextButtonHoverText()` The text to be displayed when a user hovers over the `next` toolbar button
    `static Calendar` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `java.lang.String` | `getOtherDayBlankStyle()` The CSS style applied to both the header and body of days from other months in the `month view`, when `showOtherDays` is false.
    `java.lang.String` | `getOtherDayBodyBaseStyle()` The base name for the CSS class applied to the day body of the month view of the calendar.
    `java.lang.String` | `getOtherDayHeaderBaseStyle()` The base name for the CSS class applied to the day headers of the month view.
    `SortSpecifier[]` | `getOverlapSortSpecifiers()` A set of `sort-specifiers` for customizing the render order of events that overlap.
    `java.util.Date` | `getPeriodEndDate()` Returns the end of the period selected in the passed, or current, calendar view.
    `java.util.Date` | `getPeriodEndDate(CalendarView view)` Returns the end of the period selected in the passed, or current, calendar view.
    `java.util.Date` | `getPeriodStartDate()` Returns the start of the selected week or month depending on the current calendar view.
    `java.util.Date` | `getPeriodStartDate(CalendarView view)` Returns the start of the selected week or month depending on the current calendar view.
    `java.lang.Boolean` | `getPreventDuplicates()` If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via `DataBoundComponent.transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent)`.
    `ImgButton` | `getPreviousButton()` An `ImgButton` that appears above the week/day/month views of the calendar and allows the user to move the calendar backwards in time.
    `java.lang.String` | `getPreviousButtonHoverText()` The text to be displayed when a user hovers over the `previous` toolbar button.
    `java.lang.Boolean` | `getProgressiveLoading()` Indicates whether or not this component will load its data `progressively`
    `int` | `getRecordIndex(Record record)` Get the index of the provided record.
    `RecordList` | `getRecordList()` Return the underlying data of this DataBoundComponent as a `RecordList`.
    `IButton` | `getRemoveButton()` An `com.smartgwt.client.types.AutoChild` of type `IButton`, used to permanently remove an event from the `eventEditor`.
    `java.lang.String` | `getRemoveButtonTitle()` The title for the `Remove button` in the `event editor`.
    `java.lang.String` | `getRemoveOperation()` `operationId` this component should use when performing remove operations.
    `ResultSet` | `getResultSet()` Return the underlying data of this DataBoundComponent as a `ResultSet`.
    `int` | `getRowHeight()` The height of time-slots in the calendar.
    `java.lang.Integer` | `getRowTitleFrequency()` A minute value that indicates which rows should show times in vertical views, like `day` and `week`.
    `IButton` | `getSaveButton()` An `com.smartgwt.client.types.AutoChild` of type `IButton`, used to save an event from the `eventEditor`.
    `java.lang.String` | `getSaveButtonTitle()` The title for the `Save button` in the `quick event dialog` and the `event editor`.
    `java.lang.Boolean` | `getScrollToWorkday()` If set, causes the `workday hours` to be sized to fill the available space in the day view and week view, and automatically scrolls these views to the start of the workday when the calendar is first displayed and whenever the user switches to a new day or week.
    `java.lang.Boolean` | `getSelectChosenDate()` When true, shows the current `chosenDate` in a selected style in the `month view` Has no effect in other views.
    `java.lang.String` | `getSelectedCellStyle()` The base name for the CSS class applied to a cell that is selected via a mouse drag.
    `CalendarView` | `getSelectedView()` Returns the currently selected `view`.
    `java.lang.Boolean` | `getShowAddEventButton()` Set to false to hide the `Add Event` button.
    `java.lang.Boolean` | `getShowCellHovers()` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the normal cells in the body of CalendarViews.
    `java.lang.Boolean` | `getShowComplexFields()` Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no `component.fields`.
    `java.lang.Boolean` | `getShowControlsBar()` If false the controls bar at the top of the calendar will not be displayed - this means that the `controlsBar` will be hidden, so the autoChildren (`previousButton`, `dateLabel`, `nextButton`, `addEventButton`, and `datePickerButton`) will not be created or shown.
    `java.lang.Boolean` | `getShowDateChooser()` Determines whether the `dateChooser` is displayed.
    `java.lang.Boolean` | `getShowDatePickerButton()` Set to false to hide the `datePickerButton` that allows selecting a new base date for this Calendar.
    `java.lang.Boolean` | `getShowDayHeaders()` If true, the default, show a header cell for each day cell in the `month view`, with both cells having a minimum combined height of `minimumDayHeight`.
    `java.lang.Boolean` | `getShowDayLanes()` If set to true, the `day view` uses `lanes` to render multiple vertical "lanes" within the day, very much like a vertical `Timeline`.
    `java.lang.Boolean` | `getShowDetailFields()` Whether to show fields marked `detail:true` when a DataBoundComponent is given a DataSource but no `component.fields`.
    `java.lang.Boolean` | `getShowDragHovers()` When `showViewHovers` is true, dictates whether to display hover prompts when an event is being dragged with the mouse.
    `boolean` | `getShowEventDescriptions()` When rendering the `canvas` for an event, whether to show the `body area`, typically containing brief details of the event - `by default`, `its description`.
    `boolean` | `getShowEventHeaders()` When rendering the `canvas` for an event, whether to show the `header area`, typically containing suitable title text - `by default`, the event's `name`.
    `java.lang.Boolean` | `getShowEventHovers()` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over an `event canvas` in a calendarView.
    `java.lang.Boolean` | `getShowHeaderHovers()` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the `header levels` in a `CalendarView`.
    `java.lang.Boolean` | `getShowHiddenFields()` Whether to show fields marked `hidden:true` when a DataBoundComponent is given a DataSource but no `component.fields`.
    `java.lang.Boolean` | `getShowIndicators()` Set to true to render any defined `indicators` into `timeline views`.
    `boolean` | `getShowIndicatorsInFront()` In `indicator lines` are showing, this attribute affects where in the z-order their canvases will be rendered: either in front of, or behind normal calendar events.
    `java.lang.Boolean` | `getShowLaneFieldHovers()` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over the cells in a `laneField`.
    `java.lang.Boolean` | `getShowLaneRollOver()` When set to true, causes `Timelines`, and `day views` with `showDayLanes` set, to highlight the Lane under the mouse with the "Over" style.
    `java.lang.Boolean` | `getShowMonthButton()` Set to false to prevent the `Month` button from displaying on Handset devices.
    `java.lang.Boolean` | `getShowNextButton()` Set to false to hide the `Next` button.
    `java.lang.Boolean` | `getShowOtherDays()` If set to true, in the `month view`, days that fall in an adjacent month are still shown with a header and body area, and are interactive.
    `java.lang.Boolean` | `getShowPreviousButton()` Set to false to hide the `Previous` button.
    `java.lang.Boolean` | `getShowQuickEventDialog()` Determines whether the quick event dialog is displayed when a time is clicked.
    `java.lang.Boolean` | `getShowTimelineView()` If set to true, show the `Timeline view`.
    `java.lang.Boolean` | `getShowViewHovers()` When set to true, the default value, causes the Calendar to show customizable hovers when the mouse moves over various areas of a CalendarView.
    `java.lang.Boolean` | `getShowWeekends()` Suppresses the display of weekend days in the `week`, `month` and `timeline` views, and disallows the creation of events on weekends.
    `java.lang.Boolean` | `getShowWorkday()` If set, causes the calendar to use `workdayBaseStyle` for cells falling within the workday as defined by `workdayStart` and `workdayEnd`, in both the `weekView` and `dayView`.
    `java.lang.Boolean` | `getShowZoneHovers()` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over a `zone` in a calendarView.
    `java.lang.Boolean` | `getShowZones()` Set to true to render any defined `zones` into `timeline views`.
    `java.lang.Boolean` | `getSizeEventsToGrid()` If true, events will be sized to the grid, even if they start and/or end at times between grid cells.
    `java.util.Date` | `getStartDate()` The start date of the calendar `timeline view`.
    `java.lang.String` | `getStartDateField()` The name of the start date field on a `CalendarEvent`.
    `Lane` | `getSublane(java.lang.String lane, java.lang.String sublane)` Returns the `sublane` with the passed name, from the `lane` with the passed name, in the passed view.
    `Lane` | `getSublane(java.lang.String lane, java.lang.String sublane, CalendarView view)` Returns the `sublane` with the passed name, from the `lane` with the passed name, in the passed view.
    `CalendarEvent[]` | `getSublaneEvents(Lane lane, Lane sublane)` For views that support `lanes` and allow `sublanes`, returns the array of events in the current dataset that apply to the passed lane and sublane in the passed or current view.
    `CalendarEvent[]` | `getSublaneEvents(Lane lane, Lane sublane, CalendarView view)` For views that support `lanes` and allow `sublanes`, returns the array of events in the current dataset that apply to the passed lane and sublane in the passed or current view.
    `Lane` | `getSublaneFromPoint()` Returns the `sublane` at the passed co-ordinates.
    `Lane` | `getSublaneFromPoint(java.lang.Integer x)`
    `Lane` | `getSublaneFromPoint(java.lang.Integer x, java.lang.Integer y)`
    `Lane` | `getSublaneFromPoint(java.lang.Integer x, java.lang.Integer y, CalendarView view)` Returns the `sublane` at the passed co-ordinates.
    `java.lang.String` | `getSublaneNameField()` The name of the field which will determine the `sublane` in which this event will be displayed, within its parent Lane, in `Timeline`s and in the `day view`, if `showDayLanes` is true.
    `TimeDisplayFormat` | `getTimeFormatter()` Display format to use for the time portion of events' date information.
    `TimeUnit` | `getTimelineGranularity()` The granularity in which the `timelineView` will display events.
    `int` | `getTimelineUnitsPerColumn()` How many units of `timelineGranularity` each cell represents.
    `CalendarView` | `getTimelineView()` `CalendarView` used to display events in lanes in a horizontal `Timeline` view.
    `java.lang.String` | `getTimelineViewTitle()` The title for the `timeline view`.
    `java.lang.String` | `getTitleField()` Method to return the fieldName which represents the "title" for records in this Component. If this.titleField is explicitly specified it will always be used. Otherwise, default implementation will check `titleField` for databound components. For non databound components returns the first defined field name of `"title"`, `"name"`, or `"id"`.
    `java.lang.String` | `getTitleFieldValue(Record record)` Get the value of the titleField for the passed record
    `java.lang.String` | `getTodayBackgroundColor()` The background color for cells that represent today in all `CalendarView`s.
    `java.lang.String` | `getTrailingDateField()` The name of the trailing date field for each event.
    `java.lang.Boolean` | `getTwentyFourHourTime()` If set to true, causes the `eventEditor` to hide the AM/PM picker and provide the full 24-hour range in the hour picker.
    `java.lang.String` | `getUpdateOperation()` `operationId` this component should use when performing update operations.
    `java.lang.Boolean` | `getUseAllDataSourceFields()` If true, the set of fields given by the "default binding" (see `fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.
    `boolean` | `getUseEventCanvasRolloverControls()` By default, the `close buttons` and the `horizontal` and `vertical` resizer widgets for event canvases are shown only when the mouse is over a given event.
    `java.lang.Boolean` | `getUseFlatFields()` The `useFlatFields` flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.
    `java.lang.Boolean` | `getUseSublanes()` When set to true, causes `lanes` to be sub-divided according to their set of `sublanes`.
    `CalendarView` | `getView(ViewName viewName)` Returns the `view` with the passed `name`.
    `java.util.Date` | `getVisibleEndDate()` Returns the last visible date in the passed, or currently selected, calendar view.
    `java.util.Date` | `getVisibleEndDate(CalendarView view)` Returns the last visible date in the passed, or currently selected, calendar view.
    `java.util.Date` | `getVisibleStartDate()` Returns the first visible date in the passed, or currently selected, calendar view.
    `java.util.Date` | `getVisibleStartDate(CalendarView view)` Returns the first visible date in the passed, or currently selected, calendar view.
    `int[]` | `getWeekendDays()` An array of integer day-numbers that should be considered to be weekend days by this Calendar instance.
    `java.lang.Boolean` | `getWeekEventBorderOverlap()` Augments the width of week event windows slightly to avoid duplicate adjacent borders between events.
    `java.lang.String` | `getWeekPrefix()` The text to appear before the week number in the title of `week-based` `HeaderLevel`s when this calendar is showing a timeline.
    `CalendarView` | `getWeekView()` `CalendarView` used to display events that pertain to a given week.
    `java.lang.String` | `getWeekViewTitle()` The title for the `week view`.
    `java.lang.String` | `getWorkdayBaseStyle()` If `showWorkday` is set, this is the style used for cells that are within the workday, as defined by `workdayStart` and `workdayEnd`, or by a date-specific range provided in `getWorkdayStart()` and `getWorkdayEnd()` implementations.
    `java.lang.String` | `getWorkdayEnd(java.util.Date date)` When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.
    `java.lang.String` | `getWorkdayStart(java.util.Date date)` When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.
    `ZoneCanvas` | `getZoneCanvas()` Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists.
    `java.lang.String` | `getZoneCanvasStyle(CalendarEvent zone)` Returns the `styleName` to use for the passed `zone`, in the passed `view`.
    `java.lang.String` | `getZoneCanvasStyle(CalendarEvent zone, CalendarView view)` Returns the `styleName` to use for the passed `zone`, in the passed `view`.
    `java.lang.String` | `getZoneHoverHTML(CalendarEvent zone, ZoneCanvas zoneCanvas, CalendarView view, java.lang.String defaultValue)` Gets the hover HTML for a `zone` being hovered over.
    `CalendarEvent[]` | `getZones()` An array of CalendarEvent instances representing pre-defined periods of time to be highlighted in `timeline views`.
    `java.lang.String` | `getZoneStyleName()` CSS style to apply to the `canvases` created for each specified `zone`.
    `VerticalAlignment` | `getZoneTitleOrientation()` The vertical alignment of the header-text in each `zone`.
    `void` | `groupLanesBy(java.lang.String... groupFieldName)` When `canGroupLanes` is true, this method allows the grouping in `timeline`s to be altered at runtime.
    `void` | `groupLanesBy(java.lang.String groupFieldName)` When `canGroupLanes` is true, this method allows the grouping in `timeline`s to be altered at runtime.
    `void` | `invalidateCache()` Invalidate the current data cache for this databound component via a call to the dataset's `invalidateCache()` method, for example, `ResultSet.invalidateCache()`.
    `void` | `moveToEvent(CalendarEvent event)` Rests the current visible range of a calendar view so that it shows the date on which the passed event occurs.
    `void` | `next()` Move to the next day, week, or month, depending on which tab is selected.
    `protected void` | `onInit_Calendar()`
    `protected void` | `onInit()`
    `void` | `previous()` Move to the previous day, week, month, or timeline range depending on which tab is selected.
    `void` | `refreshEvent(CalendarEvent event)` Refreshes the passed event in the current view.
    `void` | `removeEvent(CalendarEvent event)` Remove an event from this calendar.
    `void` | `removeIndicator(CalendarEvent indicator)` Removes a `indicator` from the calendar.
    `void` | `removeIndicator(java.lang.String indicator)` Removes a `indicator` from the calendar.
    `void` | `removeLane(Lane lane)` Removes a lane from the calendar in `timelineView` mode.
    `void` | `removeLane(java.lang.String laneName)` Removes a lane from the calendar in `timelineView` mode.
    `void` | `removeZone(CalendarEvent zone)` Removes a `zone` from the calendar.
    `void` | `removeZone(java.lang.String zone)` Removes a `zone` from the calendar.
    `void` | `scrollToTime(java.lang.String time)` Scroll the calendar Day or Week views to the specified time.
    `void` | `selectAllRecords()` Select all records
    `void` | `selectRecord(int record)` Select/deselect a `Record` passed in explicitly, or by index.
    `void` | `selectRecord(int record, boolean newState)` Select/deselect a `Record` passed in explicitly, or by index.
    `void` | `selectRecord(Record record)` Select/deselect a `Record` passed in explicitly, or by index.
    `void` | `selectRecord(Record record, boolean newState)` Select/deselect a `Record` passed in explicitly, or by index.
    `void` | `selectRecords(int[] records)` Select/deselect a list of `Record`s passed in explicitly, or by index.
    `void` | `selectRecords(int[] records, boolean newState)` Select/deselect a list of `Record`s passed in explicitly, or by index.
    `void` | `selectRecords(Record[] records)` Select/deselect a list of `Record`s passed in explicitly, or by index.
    `void` | `selectRecords(Record[] records, boolean newState)` Select/deselect a list of `Record`s passed in explicitly, or by index.
    `void` | `selectTab(int tabnum)` Selects the calendar view in the passed tab number.
    `void` | `setAddDropValues(java.lang.Boolean addDropValues)` Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key.
    `void` | `setAddEventButtonHoverText(java.lang.String addEventButtonHoverText)` The text to be displayed when a user hovers over the `add event` toolbar button
    `void` | `setAddFormulaFieldText(java.lang.String addFormulaFieldText)` Text for a menu item allowing users to add a formula field
    `void` | `setAddOperation(java.lang.String addOperation)` `operationId` this component should use when performing add operations.
    `void` | `setAddSummaryFieldText(java.lang.String addSummaryFieldText)` Text for a menu item allowing users to add a formula field
    `void` | `setAllowDurationEvents(java.lang.Boolean allowDurationEvents)` When set to true, allows events to be managed by duration, as well as by end date.
    `void` | `setAlternateLaneStyles(java.lang.Boolean alternateLaneStyles)` When showing a `Timeline`, or a `day view` when `showDayLanes` is true, whether to make lane boundaries more obvious by showing alternate lanes in a different color.
    `void` | `setAutoFetchAsFilter(java.lang.Boolean autoFetchAsFilter)` If `DataBoundComponent.setAutoFetchData(Boolean)` is true, this attribute determines whether the initial fetch operation should be performed via `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()`
    `void` | `setAutoFetchData(java.lang.Boolean autoFetchData)` If true, when this component is first drawn, automatically call `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()` depending on `DataBoundComponent.getAutoFetchAsFilter()` .
    `void` | `setAutoFetchTextMatchStyle(TextMatchStyle autoFetchTextMatchStyle)` If `autoFetchData` is `true`, this attribute allows the developer to specify a textMatchStyle for the initial `DataBoundComponent.fetchData()` call.
    `void` | `setBackButtonTitle(java.lang.String backButtonTitle)` The title of the `month` on Handsets when the `month view` is the current visible view.
    `void` | `setBaseStyle(java.lang.String baseStyle)` The base name for the CSS class applied to the grid cells of the day and week views of the calendar.
    `void` | `setBringEventsToFront(java.lang.Boolean bringEventsToFront)` If set to true, clicking an event will bring it to the front of the zorder.
    `void` | `setCanAddFormulaFields(java.lang.Boolean canAddFormulaFields)` Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the `com.smartgwt.client..FormulaBuilder`.
    `void` | `setCanAddSummaryFields(java.lang.Boolean canAddSummaryFields)` Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the `com.smartgwt.client..SummaryBuilder`.
    `void` | `setCancelButtonTitle(java.lang.String cancelButtonTitle)` The title for the `Cancel button` in the `event editor`.
    `void` | `setCanCreateEvents(java.lang.Boolean canCreateEvents)` If true, users can create new events.
    `void` | `setCanDeleteEvents(java.lang.Boolean canDeleteEvents)` Deprecated. in favor of `canRemoveEvents`
    `void` | `setCanDragCreateEvents(java.lang.Boolean canDragCreateEvents)` A boolean value controlling whether new events of varying length can be created by dragging the cursor.
    `void` | `setCanDragEventField(java.lang.String canDragEventField)` Name of the field on each `CalendarEvent` that determines whether an `EventCanvas` can be moved or resized by dragging with the mouse.
    `void` | `setCanDragEvents(java.lang.Boolean canDragEvents)` A boolean value controlling whether users can drag-reposition events.
    `void` | `setCanEditEvents(java.lang.Boolean canEditEvents)` If true, users can edit existing events.
    `void` | `setCanEditField(java.lang.String canEditField)` Name of the field on each `CalendarEvent` that determines whether it can be edited in the `event editor`.
    `void` | `setCanEditLane(java.lang.Boolean canEditLane)` Can events be moved between lanes? If so, the event can be dragged to a different `lane`, and the event `quick dialog` and `editor` allow a lane to be selected with a drop-down chooser.
    `void` | `setCanEditLaneField(java.lang.String canEditLaneField)` Name of the field on each `CalendarEvent` that determines whether that event can be moved between lanes.
    `void` | `setCanEditSublane(java.lang.Boolean canEditSublane)` Can events be moved between sublanes?
    `void` | `setCanEditSublaneField(java.lang.String canEditSublaneField)` Name of the field on each `CalendarEvent` that determines whether that event can be moved between individual `sublanes` in a `Lane`.
    `void` | `setCanGroupLanes(java.lang.Boolean canGroupLanes)` If true, allows the lanes in a Timeline to be grouped by providing a value for `laneGroupByField`.
    `void` | `setCanRemoveEvents(java.lang.Boolean canRemoveEvents)` If true, users can remove existing events.
    `void` | `setCanRemoveField(java.lang.String canRemoveField)` Name of the field on each `CalendarEvent` that determines whether an event shows a remove button.
    `void` | `setCanReorderLanes(java.lang.Boolean canReorderLanes)` If true, lanes can be reordered by dragging their `laneFields` with the mouse.
    `void` | `setCanResizeEventField(java.lang.String canResizeEventField)` Name of the field on each `CalendarEvent` that determines whether an event can be resized by dragging.
    `void` | `setCanResizeEvents(java.lang.Boolean canResizeEvents)` Can `events` be resized by dragging appropriate edges of the `canvas`? Only has an effect when both `canEditEvents` and `canDragEvents` are true.
    `void` | `setCanResizeTimelineEvents(java.lang.Boolean canResizeTimelineEvents)` Deprecated. in favor of `canResizeEvents`;
    `void` | `setCellHoverCustomizer(CellHoverCustomizer customizer)` Customize the Hover text to display when the mouse hovers over cells in a CalendarView
    `void` | `setChosenDate(java.util.Date chosenDate)` The date for which events are displayed in the day, week, and month tabs of the calendar.
    `void` | `setColumnsPerPage(java.lang.Integer columnsPerPage)` When using the Next and Previous arrows to scroll a Timeline, this is the number of columns of the `timelineGranularity` to scroll by.
    `void` | `setCurrentViewName(ViewName currentViewName)` The name of the view that should be visible initially by default.
    `void` | `setData(CalendarEvent[] data)` A List of CalendarEvent objects, specifying the data to be used to populate the calendar.
    `void` | `setData(Record[] data)` An array of Record objects, specifying the data to be used to populate the DataBoundComponent.
    `void` | `setData(RecordList data)` An List of Record objects, specifying the data to be used to populate the DataBoundComponent.
    `void` | `setDataFetchMode(FetchMode dataFetchMode)` How to fetch and manage records retrieve from the server.
    `void` | `setDataPageSize(int dataPageSize)` When using `data paging`, how many records to fetch at a time.
    `void` | `setDataSource(DataSource dataSource)` The DataSource that this component should bind to for default fields and for performing `DataSource requests`.
    `void` | `setDataSource(java.lang.String dataSource)` The DataSource that this component should bind to for default fields and for performing `DataSource requests`.
    `void` | `setDateCellAlignCustomizer(DateCellAlignCustomizer customizer)` This method installs a customizer that returns the horizontsal Alignment to display in the passed date-cell when rendered in the passed view
    `void` | `setDateCellVAlignCustomizer(DateCellVAlignCustomizer customizer)` This method installs a customizer that returns the VerticalAlignment to display in the passed date-cell when rendered in the passed view
    `void` | `setDateCSSTextCustomizer(DateCSSTextCustomizer customizer)` This method returns the CSS class name for the passed event when rendered in the passed view
    `void` | `setDateEditingStyle(DateEditingStyle dateEditingStyle)` Indicates the type of controls to use in event-windows.
    `void` | `setDateFormatter(DateDisplayFormat dateFormatter)` Date formatter for displaying events.
    `void` | `setDateHeaderCustomizer(DateHeaderCustomizer customizer)` This method installs a customizer to determine the HTML to be displayed in the header for a given date column in a CalendarView
    `void` | `setDateHTMLCustomizer(DateHTMLCustomizer customizer)` This method installs a customizer that returns the HTML to display in the passed date-cell when rendered in the passed view
    `void` | `setDatePickerHoverText(java.lang.String datePickerHoverText)` The text to be displayed when a user hovers over the `date picker` toolbar button
    `void` | `setDateStyleCustomizer(DateStyleCustomizer customizer)` This method installs a customizer that returns the CSS class name for the passed date-cell when rendered in the passed view
    `void` | `setDayBodyBaseStyle(java.lang.String dayBodyBaseStyle)` The base name for the CSS class applied to the day body of the month view of the calendar.
    `void` | `setDayHeaderBaseStyle(java.lang.String dayHeaderBaseStyle)` The base name for the CSS class applied to the day headers of the month view.
    `void` | `setDayViewTitle(java.lang.String dayViewTitle)` The title for the `day view`.
    `void` | `setDeepCloneOnEdit(java.lang.Boolean deepCloneOnEdit)` Before we start editing values in this DataBoundComponent, should we perform a deep clone of the underlying values.
    `static void` | `setDefaultProperties(Calendar calendarProperties)` Class level method to set the default properties of this class.
    `void` | `setDefaultTimelineColumnSpan(int defaultTimelineColumnSpan)` The number of columns of the `timelineGranularity` to give the timeline by default if no `endDate` is provided.
    `void` | `setDescriptionField(java.lang.String descriptionField)` The name of the description field on a `CalendarEvent`.
    `void` | `setDetailsButtonTitle(java.lang.String detailsButtonTitle)` The title for the edit button in the quick `quick event dialog`.
    `void` | `setDisableDateCustomizer(DisableDateCustomizer customizer)` Return true from the customizer to have the passed event considered disabled in the passed view
    `void` | `setDisableWeekends(java.lang.Boolean disableWeekends)` If true, weekend days appear in a disabled style and events cannot be created on weekends.
    `void` | `setDragDataAction(DragDataAction dragDataAction)` Indicates what to do with data dragged into another DataBoundComponent.
    `void` | `setDragHoverCustomizer(DragHoverCustomizer customizer)` Customize the Hover text to display during a drag operation
    `void` | `setDragTrackerStyle(java.lang.String dragTrackerStyle)` CSS Style to apply to the drag tracker when dragging occurs on this component.
    `void` | `setDropValues(java.util.Map dropValues)` When an item is dropped on this component, and `addDropValues` is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that Smart GWT will apply to the dropped object before updating it.
    `void` | `setDuplicateDragMessage(java.lang.String duplicateDragMessage)` Message to show when a user attempts to transfer duplicate records into this component, and `preventDuplicates` is enabled.
    `void` | `setDurationField(java.lang.String durationField)` The name of the `duration` field on a `CalendarEvent`.
    `void` | `setDurationUnitField(java.lang.String durationUnitField)` The name of the `durationUnit` field on a `CalendarEvent`.
    `void` | `setEditFormulaFieldText(java.lang.String editFormulaFieldText)` Text for a menu item allowing users to edit a formula field
    `void` | `setEditSummaryFieldText(java.lang.String editSummaryFieldText)` Text for a menu item allowing users to edit the formatter for a field
    `void` | `setEndDate(java.util.Date endDate)` The end date of the calendar timeline view.
    `void` | `setEndDateField(java.lang.String endDateField)` The name of the end date field on a `CalendarEvent`.
    `void` | `setEventAutoArrange(java.lang.Boolean eventAutoArrange)` If set to true, enables the auto-arrangement of events that share time in the calendar.
    `void` | `setEventBodyHTMLCustomizer(EventBodyHTMLCustomizer customizer)` This method installs a customizer that returns the HTML to be used as the body/description for the passed event.
    `void` | `setEventCanvasGripperIconCustomizer(EventCanvasGripperIconCustomizer customizer)` This method returns the SCImgURL for the icon to use as the gripper for a given EventCanvas
    `void` | `setEventCanvasHoverHTMLCustomizer(EventCanvasHoverHTMLCustomizer customizer)` This method returns the hover HTML to be displayed when the user hovers over an eventCanvas
    `void` | `setEventDescriptionFieldTitle(java.lang.String eventDescriptionFieldTitle)` The title for the `descriptionField` field in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventDialogCustomizer(EventDialogCustomizer customizer)` Customizer called whenever the Calender needs to show an EventDialog, to edit or view a CalendarEvent
    `void` | `setEventDialogFields(FormItem... eventDialogFields)` The set of fields for the `eventDialog`.
    `void` | `setEventDragGap(java.lang.Integer eventDragGap)` The number of pixels to leave to the right of events so overlapping events can still be added using the mouse.
    `void` | `setEventDurationFieldTitle(java.lang.String eventDurationFieldTitle)` The title for the `duration field` in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventDurationUnitFieldTitle(java.lang.String eventDurationUnitFieldTitle)` The title for the `duration unit field` in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventEditorCustomizer(EventEditorCustomizer customizer)` Customizer called whenever the Calender needs to show an EventEditor, to edit or create a CalendarEvent
    `void` | `setEventEditorFields(FormItem... eventEditorFields)` The set of fields for the `eventEditor`.
    `void` | `setEventEndDateFieldTitle(java.lang.String eventEndDateFieldTitle)` The title for the `endDateField` in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventHeaderHeight(int eventHeaderHeight)` When `eventHeaderWrap` is false and `showEventDescriptions` is true, this is the fixed height for the `header area` in event canvases.
    `void` | `setEventHeaderHTMLCustomizer(EventHeaderHTMLCustomizer customizer)` This method returns the HTML to be used as the header/title for the passed event.
    `void` | `setEventHeaderWrap(boolean eventHeaderWrap)` When rendering the `canvas` for an event, whether to allow the content of the `header area` to wrap to multiple lines.
    `void` | `setEventHoverHTMLCustomizer(EventHoverHTMLCustomizer eventHoverHTMLCustomizer)` This method returns the hover HTML to be displayed when the user hovers over an event
    `void` | `setEventLaneFieldTitle(java.lang.String eventLaneFieldTitle)` The title for the `laneNameField` in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventNameFieldTitle(java.lang.String eventNameFieldTitle)` The title for the `nameField` in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventOverlap(java.lang.Boolean eventOverlap)` When `eventAutoArrange` is true, setting eventOverlap to true causes events that share timeslots to overlap each other by a percentage of their width, specified by `eventOverlapPercent`.
    `void` | `setEventOverlapIdenticalStartTimes(java.lang.Boolean eventOverlapIdenticalStartTimes)` When set to true, events that start at the same time will not overlap each other to prevent events having their close button hidden.
    `void` | `setEventOverlapPercent(int eventOverlapPercent)` The size of the overlap, presented as a percentage of the width of events sharing timeslots.
    `void` | `setEventSnapGap(java.lang.Integer eventSnapGap)` The number of minutes that determines the positions to which events will snap when rendered, and when moved or resized with the mouse.
    `void` | `setEventStartDateFieldTitle(java.lang.String eventStartDateFieldTitle)` The title for the `startDateField` in the quick `event dialog` and the detailed `editor`.
    `void` | `setEventStyle(CalendarEvent event, java.lang.String styleName)` Update the styleName for the passed event.
    `void` | `setEventStyleName(java.lang.String eventStyleName)` The base name for the CSS class applied to `events` when they're rendered in calendar views.
    `void` | `setEventStyleNameField(java.lang.String eventStyleNameField)` The name of the field used to override `eventStyleName` for an individual `CalendarEvent`.
    `void` | `setEventSublaneFieldTitle(java.lang.String eventSublaneFieldTitle)` The title for the `sublaneNameField` in the quick `event dialog` and the detailed `event editor`.
    `void` | `setEventWindowStyle(java.lang.String eventWindowStyle)` Deprecated. in favor of `eventStyleName`
    `void` | `setEventWindowStyleField(java.lang.String eventWindowStyleField)` Deprecated. in favor of `eventStyleNameField`
    `void` | `setExportAll(java.lang.Boolean exportAll)` Setting exportAll to true prevents the component from passing its list of fields to the export call.
    `void` | `setExportFields(java.lang.String[] exportFields)` The list of field-names to export.
    `void` | `setFetchOperation(java.lang.String fetchOperation)` Operation ID this component should use when performing fetch operations.
    `void` | `setFields(com.google.gwt.core.client.JavaScriptObject... fields)` Field setter variant (alternative to `setFields(FormItem...)`, `setFields(ListGridField...)`, etc.) that will accept an array of JavaScriptObject, rather than an array of SmartGWT Java wrappers of the field class type (e.g.
    `void` | `setFirstDayOfWeek(java.lang.Integer firstDayOfWeek)` The numeric day (0-6) which the calendar should consider as the first day of the week - if unset, the default is taken from the current locale.
    `void` | `setHeaderHoverCustomizer(HeaderLevelHoverCustomizer customizer)` Customize the Hover text for a given span in a HeaderLevel.
    `void` | `setHeaderLevels(HeaderLevel... headerLevels)` Configures the levels of `headers` shown above the event area, and their time units.
    `void` | `setHideUnusedLanes(java.lang.Boolean hideUnusedLanes)` When set to true, hides any `lane` that doesn't have any active events in the current dataset.
    `void` | `setHiliteProperty(java.lang.String hiliteProperty)` Marker that can be set on a record to flag that record as hilited.
    `void` | `setHilites(Hilite[] hilites)` Accepts an array of hilite objects and applies them to this DataBoundComponent.
    `void` | `setHiliteState(java.lang.String hiliteState)` Set the current hilites based on a hiliteState String previously returned from getHilitesState.
    `void` | `setIndicatorHoverHTMLCustomizer(IndicatorHoverHTMLCustomizer indicatorHoverHTMLCustomizer)` This method returns the hover HTML to be displayed when the user hovers over an IndicatorCanvas
    `void` | `setIndicators(CalendarEvent... indicators)` An array of CalendarEvent instances representing instants in time, to be highlighted in `timeline views`.
    `void` | `setIndicatorStyleName(java.lang.String indicatorStyleName)` CSS style to apply to the `canvases` created for each specified `indicator`.
    `void` | `setInitialCriteria(Criteria initialCriteria)` Criteria to use when `DataBoundComponent.setAutoFetchData(Boolean)` is used.
    `void` | `setInvalidDateMessage(java.lang.String invalidDateMessage)` The message to display in the `eventEditor` when the 'To' date is greater than the 'From' date and a save is attempted.
    `void` | `setLaneEventPadding(java.lang.Integer laneEventPadding)` The pixel space to leave between events and the edges of the `lane` or `sublane` they appear in.
    `void` | `setLaneFields(ListGridField... laneFields)` Field definitions for the frozen area of the `timelineView`, which shows data about the timeline `lanes`.
    `void` | `setLaneGroupByField(java.lang.String... laneGroupByField)` For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
    `void` | `setLaneGroupByField(java.lang.String laneGroupByField)` For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
    `void` | `setLaneGroupStartOpen(GroupStartOpen group)`
    `void` | `setLaneGroupStartOpen(java.lang.Object... groupValues)`
    `void` | `setLaneNameField(java.lang.String laneNameField)` The name of the field which will determine the `lane` in which this event will be displayed in `Timeline`s and in the `day view`, if `showDayLanes` is true.
    `void` | `setLanes(Lane... lanes)` An array of `Lane` definitions that represent the rows of the `timelineView`, or the columns of the `dayView` if `showDayLanes` is true.
    `void` | `setLeadingDateField(java.lang.String leadingDateField)` The name of the leading date field for each event.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `setLogicalStructure(com.smartgwt.logicalstructure.widgets.calendar.CalendarLogicalStructure s)` Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `void` | `setMinimalUI(boolean minimalUI)` A boolean value controlling whether the Calendar shows tabs for available calendar views.
    `void` | `setMinimumDayHeight(java.lang.Integer minimumDayHeight)` In the `month view` when `showDayHeaders` is true, this is the minimum height applied to a day cell and its header combined.
    `void` | `setMinLaneWidth(java.lang.Integer minLaneWidth)` When showing `vertical lanes` in the `dayView`, this attribute sets the minimum width of each column or field.
    `void` | `setMinutesPerRow(java.lang.Integer minutesPerRow)` The number of minutes per row in `day` and `week` views.
    `void` | `setMonthButtonTitle(java.lang.String monthButtonTitle)` The title of the `month button`, used for showing and hiding the `month view` on Handsets.
    `void` | `setMonthMoreEventsLinkTitle(java.lang.String monthMoreEventsLinkTitle)` The title of the link shown in a cell of a `month view` when there are too many events to be displayed at once.
    `void` | `setMonthViewHoverHTMLCustomizer(MonthViewHoverHTMLCustomizer monthViewHoverHTMLCustomizer)` This method returns the hover HTML to be displayed when the user hovers over a cell displayed in the calendar month view tab.
    `void` | `setMonthViewTitle(java.lang.String monthViewTitle)` The title for the `month view`.
    `void` | `setNameField(java.lang.String nameField)` The name of the name field on a `CalendarEvent`.
    `void` | `setNextButtonHoverText(java.lang.String nextButtonHoverText)` The text to be displayed when a user hovers over the `next` toolbar button
    `void` | `setOtherDayBlankStyle(java.lang.String otherDayBlankStyle)` The CSS style applied to both the header and body of days from other months in the `month view`, when `showOtherDays` is false.
    `void` | `setOtherDayBodyBaseStyle(java.lang.String otherDayBodyBaseStyle)` The base name for the CSS class applied to the day body of the month view of the calendar.
    `void` | `setOtherDayHeaderBaseStyle(java.lang.String otherDayHeaderBaseStyle)` The base name for the CSS class applied to the day headers of the month view.
    `void` | `setOverlapSortSpecifiers(SortSpecifier... overlapSortSpecifiers)` A set of `sort-specifiers` for customizing the render order of events that overlap.
    `void` | `setPreventDuplicates(java.lang.Boolean preventDuplicates)` If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via `DataBoundComponent.transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent)`.
    `void` | `setPreviousButtonHoverText(java.lang.String previousButtonHoverText)` The text to be displayed when a user hovers over the `previous` toolbar button.
    `void` | `setProgressiveLoading(java.lang.Boolean progressiveLoading)` Indicates whether or not this component will load its data `progressively`
    `void` | `setRemoveButtonTitle(java.lang.String removeButtonTitle)` The title for the `Remove button` in the `event editor`.
    `void` | `setRemoveOperation(java.lang.String removeOperation)` `operationId` this component should use when performing remove operations.
    `void` | `setResolution(HeaderLevel[] headerLevels, TimeUnit unit, java.lang.Integer unitCount)` Reset the resolution, the header levels and scrollable range, of the timeline view.
    `void` | `setResolution(HeaderLevel[] headerLevels, TimeUnit unit, java.lang.Integer unitCount, java.lang.Integer granularityPerColumn)` Reset the resolution, the header levels and scrollable range, of the timeline view.
    `void` | `setRowHeight(int rowHeight)` The height of time-slots in the calendar.
    `void` | `setRowTitleFrequency(java.lang.Integer rowTitleFrequency)` A minute value that indicates which rows should show times in vertical views, like `day` and `week`.
    `void` | `setSaveButtonTitle(java.lang.String saveButtonTitle)` The title for the `Save button` in the `quick event dialog` and the `event editor`.
    `void` | `setScrollToWorkday(java.lang.Boolean scrollToWorkday)` If set, causes the `workday hours` to be sized to fill the available space in the day view and week view, and automatically scrolls these views to the start of the workday when the calendar is first displayed and whenever the user switches to a new day or week.
    `void` | `setSelectChosenDate(java.lang.Boolean selectChosenDate)` When true, shows the current `chosenDate` in a selected style in the `month view` Has no effect in other views.
    `void` | `setSelectedCellStyle(java.lang.String selectedCellStyle)` The base name for the CSS class applied to a cell that is selected via a mouse drag.
    `void` | `setShowAddEventButton(java.lang.Boolean showAddEventButton)` Set to false to hide the `Add Event` button.
    `void` | `setShowCellHovers(java.lang.Boolean showCellHovers)` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the normal cells in the body of CalendarViews.
    `void` | `setShowComplexFields(java.lang.Boolean showComplexFields)` Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no `component.fields`.
    `void` | `setShowControlsBar(java.lang.Boolean showControlsBar)` If false the controls bar at the top of the calendar will not be displayed - this means that the `controlsBar` will be hidden, so the autoChildren (`previousButton`, `dateLabel`, `nextButton`, `addEventButton`, and `datePickerButton`) will not be created or shown.
    `void` | `setShowDateChooser(java.lang.Boolean showDateChooser)` Determines whether the `dateChooser` is displayed.
    `void` | `setShowDateCustomizer(ShowDateCustomizer customizer)` This method is called during rendering for all events in the visible range - those which would be rendered by default.
    `void` | `setShowDatePickerButton(java.lang.Boolean showDatePickerButton)` Set to false to hide the `datePickerButton` that allows selecting a new base date for this Calendar.
    `void` | `setShowDayHeaders(java.lang.Boolean showDayHeaders)` If true, the default, show a header cell for each day cell in the `month view`, with both cells having a minimum combined height of `minimumDayHeight`.
    `void` | `setShowDayLanes(java.lang.Boolean showDayLanes)` If set to true, the `day view` uses `lanes` to render multiple vertical "lanes" within the day, very much like a vertical `Timeline`.
    `void` | `setShowDayView(java.lang.Boolean showDayView)`
    `void` | `setShowDetailFields(java.lang.Boolean showDetailFields)` Whether to show fields marked `detail:true` when a DataBoundComponent is given a DataSource but no `component.fields`.
    `void` | `setShowDragHovers(java.lang.Boolean showDragHovers)` When `showViewHovers` is true, dictates whether to display hover prompts when an event is being dragged with the mouse.
    `void` | `setShowEventCustomizer(ShowEventCustomizer customizer)` Return false from the customizer to prevent the passed CalendarEvent from being rendered in the passed view.
    `void` | `setShowEventDescriptions(boolean showEventDescriptions)` When rendering the `canvas` for an event, whether to show the `body area`, typically containing brief details of the event - `by default`, `its description`.
    `void` | `setShowEventHeaders(boolean showEventHeaders)` When rendering the `canvas` for an event, whether to show the `header area`, typically containing suitable title text - `by default`, the event's `name`.
    `void` | `setShowEventHovers(java.lang.Boolean showEventHovers)` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over an `event canvas` in a calendarView.
    `void` | `setShowHeaderHovers(java.lang.Boolean showHeaderHovers)` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the `header levels` in a `CalendarView`.
    `void` | `setShowHiddenFields(java.lang.Boolean showHiddenFields)` Whether to show fields marked `hidden:true` when a DataBoundComponent is given a DataSource but no `component.fields`.
    `void` | `setShowIndicators(java.lang.Boolean showIndicators)` Set to true to render any defined `indicators` into `timeline views`.
    `void` | `setShowIndicatorsInFront(boolean showIndicatorsInFront)` In `indicator lines` are showing, this attribute affects where in the z-order their canvases will be rendered: either in front of, or behind normal calendar events.
    `void` | `setShowLaneCustomizer(ShowLaneCustomizer customizer)` Return false from the customizer to prevent the passed Lane from being rendered in the passed view.
    `void` | `setShowLaneFieldHovers(java.lang.Boolean showLaneFieldHovers)` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over the cells in a `laneField`.
    `void` | `setShowLaneRollOver(java.lang.Boolean showLaneRollOver)` When set to true, causes `Timelines`, and `day views` with `showDayLanes` set, to highlight the Lane under the mouse with the "Over" style.
    `void` | `setShowMonthButton(java.lang.Boolean showMonthButton)` Set to false to prevent the `Month` button from displaying on Handset devices.
    `void` | `setShowMonthView(java.lang.Boolean showMonthView)`
    `void` | `setShowNextButton(java.lang.Boolean showNextButton)` Set to false to hide the `Next` button.
    `void` | `setShowOtherDays(java.lang.Boolean showOtherDays)` If set to true, in the `month view`, days that fall in an adjacent month are still shown with a header and body area, and are interactive.
    `void` | `setShowPreviousButton(java.lang.Boolean showPreviousButton)` Set to false to hide the `Previous` button.
    `void` | `setShowQuickEventDialog(java.lang.Boolean showQuickEventDialog)` Determines whether the quick event dialog is displayed when a time is clicked.
    `void` | `setShowTimelineView(java.lang.Boolean showTimelineView)` If set to true, show the `Timeline view`.
    `void` | `setShowViewHovers(java.lang.Boolean showViewHovers)` When set to true, the default value, causes the Calendar to show customizable hovers when the mouse moves over various areas of a CalendarView.
    `void` | `setShowWeekends(java.lang.Boolean showWeekends)` Suppresses the display of weekend days in the `week`, `month` and `timeline` views, and disallows the creation of events on weekends.
    `void` | `setShowWeekView(java.lang.Boolean showWeekView)`
    `void` | `setShowWorkday(java.lang.Boolean showWorkday)` If set, causes the calendar to use `workdayBaseStyle` for cells falling within the workday as defined by `workdayStart` and `workdayEnd`, in both the `weekView` and `dayView`.
    `void` | `setShowZoneHovers(java.lang.Boolean showZoneHovers)` When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over a `zone` in a calendarView.
    `void` | `setShowZones(java.lang.Boolean showZones)` Set to true to render any defined `zones` into `timeline views`.
    `void` | `setSizeEventsToGrid(java.lang.Boolean sizeEventsToGrid)` If true, events will be sized to the grid, even if they start and/or end at times between grid cells.
    `void` | `setStartDate(java.util.Date startDate)` The start date of the calendar `timeline view`.
    `void` | `setStartDateField(java.lang.String startDateField)` The name of the start date field on a `CalendarEvent`.
    `void` | `setSublaneNameField(java.lang.String sublaneNameField)` The name of the field which will determine the `sublane` in which this event will be displayed, within its parent Lane, in `Timeline`s and in the `day view`, if `showDayLanes` is true.
    `void` | `setTimeFormatter(TimeDisplayFormat timeFormatter)` Display format to use for the time portion of events' date information.
    `void` | `setTimeFormatter(TimeFormatter timeFormatter)` Deprecated. use `setTimeFormatter(TimeDisplayFormat)` instead.
    `void` | `setTimelineGranularity(TimeUnit timelineGranularity)` The granularity in which the `timelineView` will display events.
    `void` | `setTimelineRange(java.util.Date start)` Sets the range over which the timeline will display events.
    `void` | `setTimelineRange(java.util.Date start, java.util.Date end)` Sets the range over which the timeline will display events.
    `void` | `setTimelineUnitsPerColumn(int timelineUnitsPerColumn)` How many units of `timelineGranularity` each cell represents.
    `void` | `setTimelineViewTitle(java.lang.String timelineViewTitle)` The title for the `timeline view`.
    `void` | `setTitleField(java.lang.String titleField)` Sets the best field to use for a user-visible title for an individual record from this component.
    `void` | `setTodayBackgroundColor(java.lang.String todayBackgroundColor)` The background color for cells that represent today in all `CalendarView`s.
    `void` | `setTrailingDateField(java.lang.String trailingDateField)` The name of the trailing date field for each event.
    `void` | `setTwentyFourHourTime(java.lang.Boolean twentyFourHourTime)` If set to true, causes the `eventEditor` to hide the AM/PM picker and provide the full 24-hour range in the hour picker.
    `void` | `setUpdateOperation(java.lang.String updateOperation)` `operationId` this component should use when performing update operations.
    `void` | `setUseAllDataSourceFields(java.lang.Boolean useAllDataSourceFields)` If true, the set of fields given by the "default binding" (see `fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.
    `void` | `setUseEventCanvasRolloverControls(boolean useEventCanvasRolloverControls)` By default, the `close buttons` and the `horizontal` and `vertical` resizer widgets for event canvases are shown only when the mouse is over a given event.
    `void` | `setUseFlatFields(java.lang.Boolean useFlatFields)` The `useFlatFields` flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.
    `void` | `setUseSublanes(java.lang.Boolean useSublanes)` When set to true, causes `lanes` to be sub-divided according to their set of `sublanes`.
    `void` | `setWeekendDays(int... weekendDays)` An array of integer day-numbers that should be considered to be weekend days by this Calendar instance.
    `void` | `setWeekEventBorderOverlap(java.lang.Boolean weekEventBorderOverlap)` Augments the width of week event windows slightly to avoid duplicate adjacent borders between events.
    `void` | `setWeekPrefix(java.lang.String weekPrefix)` The text to appear before the week number in the title of `week-based` `HeaderLevel`s when this calendar is showing a timeline.
    `void` | `setWeekViewTitle(java.lang.String weekViewTitle)` The title for the `week view`.
    `void` | `setWorkdayBaseStyle(java.lang.String workdayBaseStyle)` If `showWorkday` is set, this is the style used for cells that are within the workday, as defined by `workdayStart` and `workdayEnd`, or by a date-specific range provided in `getWorkdayStart()` and `getWorkdayEnd()` implementations.
    `void` | `setWorkdayEnd(java.lang.String workdayEnd)` When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.
    `void` | `setWorkdays(int[] workdays)` Array of days that are considered workdays when `showWorkday` is true
    `void` | `setWorkdayStart(java.lang.String workdayStart)` When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.
    `void` | `setZoneHoverHTMLCustomizer(ZoneHoverHTMLCustomizer zoneHoverHTMLCustomizer)` This method returns the hover HTML to be displayed when the user hovers over an ZoneCanvas
    `void` | `setZones(CalendarEvent... zones)` An array of CalendarEvent instances representing pre-defined periods of time to be highlighted in `timeline views`.
    `void` | `setZoneStyleName(java.lang.String zoneStyleName)` CSS style to apply to the `canvases` created for each specified `zone`.
    `void` | `setZoneTitleOrientation(VerticalAlignment zoneTitleOrientation)` The vertical alignment of the header-text in each `zone`.
    `boolean` | `shouldDisableDate(java.util.Date date)` Returns true if the passed date should be considered disabled.
    `boolean` | `shouldDisableDate(java.util.Date date, CalendarView view)` Returns true if the passed date should be considered disabled.
    `boolean` | `shouldShowDate(java.util.Date date)` Indicates whether the passed date should be visible in the passed `CalendarView`.
    `boolean` | `shouldShowDate(java.util.Date date, CalendarView view)` Indicates whether the passed date should be visible in the passed `CalendarView`.
    `boolean` | `shouldShowEvent(CalendarEvent event)` Indicates whether the passed `event` should be visible in the passed `CalendarView`.
    `boolean` | `shouldShowEvent(CalendarEvent event, CalendarView view)` Indicates whether the passed `event` should be visible in the passed `CalendarView`.
    `boolean` | `shouldShowLane(Lane lane)` Indicates whether the passed `lane` should be visible in the passed `CalendarView`.
    `boolean` | `shouldShowLane(Lane lane, CalendarView view)` Indicates whether the passed `lane` should be visible in the passed `CalendarView`.
    `boolean` | `shouldShowLane(java.lang.String lane)` Indicates whether the passed `lane` should be visible in the passed `CalendarView`.
    `void` | `showEventDialog()` Open the Quick Event dialog showing minimal information about an existing `event`.
    `void` | `showEventDialog(CalendarEvent event)`
    `void` | `showEventDialog(CalendarEvent event, java.lang.Boolean isNewEvent)` Open the Quick Event dialog showing minimal information about an existing `event`.
    `void` | `showEventEditor()` Show an Event Editor for the passed event.
    `void` | `showEventEditor(CalendarEvent event)`
    `void` | `showEventEditor(CalendarEvent event, java.lang.Boolean isNewEvent)` Show an Event Editor for the passed event.
    `void` | `showNewEventDialog()` Open the Quick Event dialog to begin editing a new `event`.
    `void` | `showNewEventDialog(CalendarEvent event)` Open the Quick Event dialog to begin editing a new `event`.
    `void` | `showNewEventEditor()` Show an Event Editor for a new event.
    `void` | `showNewEventEditor(CalendarEvent event)` Show an Event Editor for a new event.
    `void` | `transferSelectedData(DataBoundComponent source)` Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction.
    `void` | `transferSelectedData(DataBoundComponent source, int index)` Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction.
    `void` | `updateCalendarEvent(CalendarEvent event, CalendarEvent newEvent, java.util.Map otherFields)` Update an event in this calendar.
    `void` | `updateEvent(CalendarEvent event, java.util.Date startDate, java.util.Date endDate, java.lang.String name, java.lang.String description)` update an event in this calendar.

    - ### Methods inherited from class com.smartgwt.client.widgets.Canvas

      `addChild, addChild, addChild, addChild, addChild, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addRuleContextChangedHandler, addScrolledHandler, addShowContextMenuHandler, addSnapAlignCandidate, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsFocus, containsPoint, containsPoint, deparent, depeer, disable, enable, encloses, focus, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAdaptiveHeightPriority, getAdaptiveWidthPriority, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaRole, getAutoDraw, getAutoMaskComponents, getAutoParent, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBottom, getByLocalId, getCanAcceptDrop, getCanAdaptHeight, getCanAdaptWidth, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenResizeSnapAlign, getChildrenSnapAlign, getChildrenSnapCenterAlign, getChildrenSnapEdgeAlign, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContextMenu, getCursor, getDataPath, getDefaultHeight, getDefaultWidth, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragMaxHeight, getDragMaxWidth, getDragMinHeight, getDragMinWidth, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragType, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getEditProxyConstructor, getElement, getElement, getEnableWhen, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFormItemAutoChild, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverComponent, getHoverDelay, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapOrigin, getHSnapOrigin, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getIsPrinting, getIsRuleScope, getIsSnapAlignCandidate, getKeepInParentRect, getLayoutAlign, getLeavePageSpace, getLeft, getLeftAsString, getLocalId, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMaxHeight, getMaxWidth, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getNextZIndex, getNoDoubleClicks, getNoDropCursor, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getOverflow, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getPanelContainer, getParentCanvas, getParentElement, getPeers, getPercentBox, getPercentSource, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getRuleContext, getRuleContext, getRuleScope, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowDepth, getShadowImage, getShadowOffset, getShadowSoftness, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSkinImgDir, getSnapAlignCandidates, getSnapAlignCenterLineStyle, getSnapAlignEdgeLineStyle, getSnapAxis, getSnapEdge, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapPosition, getSnapPosition, getSnapResizeToAlign, getSnapResizeToGrid, getSnapTo, getSnapToAlign, getSnapToCenterAlign, getSnapToEdgeAlign, getSnapToGrid, getSnapVDirection, getSnapVGap, getStyleName, getTabIndex, getTestInstance, getTitle, getTooltip, getTop, getTopAsString, getTopElement, getUseBackMask, getUseDragMask, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWhen, getVisibleWidth, getVSnapOrigin, getVSnapOrigin, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, intersects, isDirty, isDisabled, isDrawn, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, pageScrollDown, pageScrollUp, parentResized, placeNear, placeNear, placeNear, printComponents, provideRuleContext, provideRuleContext, redraw, redraw, removeChild, removeChild, removePeer, removePeer, removeSnapAlignCandidate, resizeBy, resizeControls, resizeFonts, resizeFonts, resizeTo, resizeTo, revealChild, revealChild, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAdaptHeightByCustomizer, setAdaptiveHeightPriority, setAdaptiveWidthPriority, setAdaptWidthByCustomizer, setAlign, setAllowExternalFilters, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoDraw, setAutoHeight, setAutoMaskComponents, setAutoParent, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBottom, setCanAcceptDrop, setCanAdaptHeight, setCanAdaptWidth, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenResizeSnapAlign, setChildrenSnapAlign, setChildrenSnapCenterAlign, setChildrenSnapEdgeAlign, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContextMenu, setCursor, setDataPath, setDefaultHeight, setDefaultPageSpace, setDefaultProperties, setDefaultWidth, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragMaxHeight, setDragMaxWidth, setDragMinHeight, setDragMinWidth, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragType, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setEditProxyConstructor, setElement, setEnableWhen, setExtraSpace, setFacetId, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverDelay, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setIsRuleScope, setIsSnapAlignCandidate, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeavePageSpace, setLeft, setLeft, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLogicalStructure, setMargin, setMatchElement, setMaxHeight, setMaxWidth, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setNeverUseFilters, setNoDoubleClicks, setNoDropCursor, setOpacity, setOverflow, setPadding, setPageLeft, setPageTop, setParentCanvas, setParentElement, setPeers, setPercentBox, setPercentSource, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setRect, setRect, setRedrawOnResize, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setRuleScope, setScrollbarConstructor, setScrollbarSize, setShadowDepth, setShadowImage, setShadowOffset, setShadowSoftness, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSkinImgDir, setSmoothFade, setSnapAlignCandidates, setSnapAlignCenterLineStyle, setSnapAlignEdgeLineStyle, setSnapAxis, setSnapEdge, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToAlign, setSnapResizeToGrid, setSnapTo, setSnapToAlign, setSnapToCenterAlign, setSnapToEdgeAlign, setSnapToGrid, setSnapVDirection, setSnapVGap, setStyleName, setTabIndex, setTitle, setTooltip, setTop, setTop, setUseBackMask, setUseDragMask, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setVisibility, setVisible, setVisibleWhen, setWidth, setWidth, setWidth, setWidth100, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, updateEditNode, updateHover, updateHover, updateShadow, visibleAtPoint, willAcceptDrop`

    - ### Methods inherited from class com.smartgwt.client.widgets.BaseWidget

      `addDrawHandler, applyFactoryProperties, completeCreation, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getById, getByJSObject, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isFactoryCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDefaultProperties, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.smartgwt.client.widgets.DataBoundComponent

      `getOrCreateJsObj`

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

- - ### Constructor Detail

    - #### Calendar

          public Calendar()

    - #### Calendar

          public Calendar(com.google.gwt.core.client.JavaScriptObject jsObj)

  - ### Method Detail

    - #### getOrCreateRef

          public static Calendar getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                                     Canvas defaults)

      Changes the defaults for Canvas AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
      See Also:
        `AutoChildUsage`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                                     FormItem defaults)

      Changes the defaults for FormItem AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
      See Also:
        `AutoChildUsage`

    - #### create

          protected com.google.gwt.core.client.JavaScriptObject create()

      Overrides:
        `create` in class `Canvas`

    - #### getAddEventButton

          public ImgButton getAddEventButton()
                                      throws java.lang.IllegalStateException

      An `ImgButton` that appears in a Calendar's week/day/month views and offers an alternative way to create a new `event`.

      This component is an AutoChild named "addEventButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ImgButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setAddEventButtonHoverText

          public void setAddEventButtonHoverText(java.lang.String addEventButtonHoverText)
                                          throws java.lang.IllegalStateException

      The text to be displayed when a user hovers over the `add event` toolbar button
      Parameters:
        `addEventButtonHoverText` - Default value is "Add an event"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAddEventButtonHoverText

          public java.lang.String getAddEventButtonHoverText()

      The text to be displayed when a user hovers over the `add event` toolbar button
      Returns:
        String

    - #### setAllowDurationEvents

          public void setAllowDurationEvents(java.lang.Boolean allowDurationEvents)

      When set to true, allows events to be managed by duration, as well as by end date. Values can be set for `duration` and `duration unit` on each event, and are then maintained, instead of the end date, when alterations are made to the event via editors or dragging with the mouse.
      Parameters:
        `allowDurationEvents` - Default value is null
      See Also:
        `CalendarEvent`

    - #### getAllowDurationEvents

          public java.lang.Boolean getAllowDurationEvents()

      When set to true, allows events to be managed by duration, as well as by end date. Values can be set for `duration` and `duration unit` on each event, and are then maintained, instead of the end date, when alterations are made to the event via editors or dragging with the mouse.
      Returns:
        Boolean
      See Also:
        `CalendarEvent`

    - #### setAlternateLaneStyles

          public void setAlternateLaneStyles(java.lang.Boolean alternateLaneStyles)

      When showing a `Timeline`, or a `day view` when `showDayLanes` is true, whether to make lane boundaries more obvious by showing alternate lanes in a different color.
      Parameters:
        `alternateLaneStyles` - Default value is null

    - #### getAlternateLaneStyles

          public java.lang.Boolean getAlternateLaneStyles()

      When showing a `Timeline`, or a `day view` when `showDayLanes` is true, whether to make lane boundaries more obvious by showing alternate lanes in a different color.
      Returns:
        Boolean

    - #### setBackButtonTitle

          public void setBackButtonTitle(java.lang.String backButtonTitle)
                                  throws java.lang.IllegalStateException

      The title of the `month` on Handsets when the `month view` is the current visible view.

      When the month view is not the current visible view, the title for the month button is set according to the value of `monthButtonTitle`.

      Parameters:
        `backButtonTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Back"`

    - #### getBackButtonTitle

          public java.lang.String getBackButtonTitle()

      The title of the `month` on Handsets when the `month view` is the current visible view.

      When the month view is not the current visible view, the title for the month button is set according to the value of `monthButtonTitle`.

      Returns:
      See Also:
        `HTMLString`

    - #### setBaseStyle

          public void setBaseStyle(java.lang.String baseStyle)

      The base name for the CSS class applied to the grid cells of the day and week views of the calendar. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Parameters:
        `baseStyle` -
      See Also:
        `CSSStyleName . Default value is "calendar"`, `Appearance overview and related methods`

    - #### getBaseStyle

          public java.lang.String getBaseStyle()

      The base name for the CSS class applied to the grid cells of the day and week views of the calendar. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setBringEventsToFront

          public void setBringEventsToFront(java.lang.Boolean bringEventsToFront)
                                     throws java.lang.IllegalStateException

      If set to true, clicking an event will bring it to the front of the zorder.
      Parameters:
        `bringEventsToFront` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getBringEventsToFront

          public java.lang.Boolean getBringEventsToFront()

      If set to true, clicking an event will bring it to the front of the zorder.
      Returns:
        Boolean

    - #### getCancelButton

          public IButton getCancelButton()
                                  throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `IButton`, used to cancel editing of an event and close the `eventEditor`.

      This component is an AutoChild named "cancelButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        IButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setCancelButtonTitle

          public void setCancelButtonTitle(java.lang.String cancelButtonTitle)
                                    throws java.lang.IllegalStateException

      The title for the `Cancel button` in the `event editor`.
      Parameters:
        `cancelButtonTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Cancel"`

    - #### getCancelButtonTitle

          public java.lang.String getCancelButtonTitle()

      The title for the `Cancel button` in the `event editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setCanCreateEvents

          public void setCanCreateEvents(java.lang.Boolean canCreateEvents)
                                  throws java.lang.IllegalStateException

      If true, users can create new events.
      Parameters:
        `canCreateEvents` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanCreateEvents

          public java.lang.Boolean getCanCreateEvents()

      If true, users can create new events.
      Returns:
        Boolean

    - #### setCanDeleteEvents

          public void setCanDeleteEvents(java.lang.Boolean canDeleteEvents)
                                  throws java.lang.IllegalStateException

      Deprecated. in favor of `canRemoveEvents`
      If true, users can delete existing events. Defaults to `canEditEvents`.
      Parameters:
        `canDeleteEvents` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanDeleteEvents

          public java.lang.Boolean getCanDeleteEvents()

      Deprecated. in favor of `canRemoveEvents`
      If true, users can delete existing events. Defaults to `canEditEvents`.
      Returns:
        Boolean

    - #### setCanDragCreateEvents

          public void setCanDragCreateEvents(java.lang.Boolean canDragCreateEvents)

      A boolean value controlling whether new events of varying length can be created by dragging the cursor. By default, this is false for Touch devices and true otherwise.
      Parameters:
        `canDragCreateEvents` - Default value is null

    - #### getCanDragCreateEvents

          public java.lang.Boolean getCanDragCreateEvents()

      A boolean value controlling whether new events of varying length can be created by dragging the cursor. By default, this is false for Touch devices and true otherwise.
      Returns:
        Boolean

    - #### setCanDragEventField

          public void setCanDragEventField(java.lang.String canDragEventField)
                                    throws java.lang.IllegalStateException

      Name of the field on each `CalendarEvent` that determines whether an `EventCanvas` can be moved or resized by dragging with the mouse. Note that `canEditEvents` must be true for dragging to be allowed.
      Parameters:
        `canDragEventField` - Default value is "canDrag"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getCanDragEventField

          public java.lang.String getCanDragEventField()

      Name of the field on each `CalendarEvent` that determines whether an `EventCanvas` can be moved or resized by dragging with the mouse. Note that `canEditEvents` must be true for dragging to be allowed.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setCanDragEvents

          public void setCanDragEvents(java.lang.Boolean canDragEvents)
                                throws java.lang.IllegalStateException

      A boolean value controlling whether users can drag-reposition events. By default, this is false for Touch devices, where drag gestures scroll the view, and true otherwise.

      Only has an effect when `canEditEvents` is true.

      Parameters:
        `canDragEvents` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanDragEvents

          public java.lang.Boolean getCanDragEvents()

      A boolean value controlling whether users can drag-reposition events. By default, this is false for Touch devices, where drag gestures scroll the view, and true otherwise.

      Only has an effect when `canEditEvents` is true.

      Returns:
        Boolean

    - #### setCanEditEvents

          public void setCanEditEvents(java.lang.Boolean canEditEvents)
                                throws java.lang.IllegalStateException

      If true, users can edit existing events.
      Parameters:
        `canEditEvents` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanEditEvents

          public java.lang.Boolean getCanEditEvents()

      If true, users can edit existing events.
      Returns:
        Boolean

    - #### setCanEditField

          public void setCanEditField(java.lang.String canEditField)
                               throws java.lang.IllegalStateException

      Name of the field on each `CalendarEvent` that determines whether it can be edited in the `event editor`. Note that an event with `canEdit` set to true can also have `canDrag` or `canResize` set to false, which would still allow editing, but not via drag operations.
      Parameters:
        `canEditField` - Default value is "canEdit"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getCanEditField

          public java.lang.String getCanEditField()

      Name of the field on each `CalendarEvent` that determines whether it can be edited in the `event editor`. Note that an event with `canEdit` set to true can also have `canDrag` or `canResize` set to false, which would still allow editing, but not via drag operations.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setCanEditLane

          public void setCanEditLane(java.lang.Boolean canEditLane)
                              throws java.lang.IllegalStateException

      Can events be moved between lanes? If so, the event can be dragged to a different `lane`, and the event `quick dialog` and `editor` allow a lane to be selected with a drop-down chooser.

      In either case, the event's `laneNameField` is updated automatically.

      If set to false, cross-lane dragging is disallowed and drop-down Lane-choosers are disabled when editing existng events. When creating a `new event`, the Lane-chooser remains enabled so an initial Lane can be selected.

      This setting can be overridden on each `event`.

      Parameters:
        `canEditLane` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanEditLane

          public java.lang.Boolean getCanEditLane()

      Can events be moved between lanes? If so, the event can be dragged to a different `lane`, and the event `quick dialog` and `editor` allow a lane to be selected with a drop-down chooser.

      In either case, the event's `laneNameField` is updated automatically.

      If set to false, cross-lane dragging is disallowed and drop-down Lane-choosers are disabled when editing existng events. When creating a `new event`, the Lane-chooser remains enabled so an initial Lane can be selected.

      This setting can be overridden on each `event`.

      Returns:
        Boolean

    - #### setCanEditLaneField

          public void setCanEditLaneField(java.lang.String canEditLaneField)
                                   throws java.lang.IllegalStateException

      Name of the field on each `CalendarEvent` that determines whether that event can be moved between lanes.
      Parameters:
        `canEditLaneField` - Default value is "canEditLane"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getCanEditLaneField

          public java.lang.String getCanEditLaneField()

      Name of the field on each `CalendarEvent` that determines whether that event can be moved between lanes.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setCanEditSublane

          public void setCanEditSublane(java.lang.Boolean canEditSublane)
                                 throws java.lang.IllegalStateException

      Can events be moved between sublanes?

      If so, the event can be dragged to a different `sublane` within the same parent Lane and, when it's editor is shown, an additional drop-down widget is provided allowing the sublane to be altered.

      If the sublane is locked, but the `parent lane` isn't, an update to the event's `lane name` will be allowed, assuming that the new Lane has an existing sublane with the same name.

      In either case, the event's `sublane` is updated automatically.

      This setting can be overridden on each `event`.

      Parameters:
        `canEditSublane` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanEditSublane

          public java.lang.Boolean getCanEditSublane()

      Can events be moved between sublanes?

      If so, the event can be dragged to a different `sublane` within the same parent Lane and, when it's editor is shown, an additional drop-down widget is provided allowing the sublane to be altered.

      If the sublane is locked, but the `parent lane` isn't, an update to the event's `lane name` will be allowed, assuming that the new Lane has an existing sublane with the same name.

      In either case, the event's `sublane` is updated automatically.

      This setting can be overridden on each `event`.

      Returns:
        Boolean

    - #### setCanEditSublaneField

          public void setCanEditSublaneField(java.lang.String canEditSublaneField)
                                      throws java.lang.IllegalStateException

      Name of the field on each `CalendarEvent` that determines whether that event can be moved between individual `sublanes` in a `Lane`.
      Parameters:
        `canEditSublaneField` - Default value is "canEditSublane"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getCanEditSublaneField

          public java.lang.String getCanEditSublaneField()

      Name of the field on each `CalendarEvent` that determines whether that event can be moved between individual `sublanes` in a `Lane`.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setCanGroupLanes

          public void setCanGroupLanes(java.lang.Boolean canGroupLanes)

      If true, allows the lanes in a Timeline to be grouped by providing a value for `laneGroupByField`. The fields available for grouping on are those defined as `lane fields`. Since these are definitions for `normal fields`, you can choose to `hide` the field in the timeline, but still have it available for grouping.
      Parameters:
        `canGroupLanes` - Default value is null

    - #### getCanGroupLanes

          public java.lang.Boolean getCanGroupLanes()

      If true, allows the lanes in a Timeline to be grouped by providing a value for `laneGroupByField`. The fields available for grouping on are those defined as `lane fields`. Since these are definitions for `normal fields`, you can choose to `hide` the field in the timeline, but still have it available for grouping.
      Returns:
        Boolean

    - #### setCanRemoveEvents

          public void setCanRemoveEvents(java.lang.Boolean canRemoveEvents)
                                  throws java.lang.IllegalStateException

      If true, users can remove existing events. Defaults to `canEditEvents`.
      Parameters:
        `canRemoveEvents` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanRemoveEvents

          public java.lang.Boolean getCanRemoveEvents()

      If true, users can remove existing events. Defaults to `canEditEvents`.
      Returns:
        Boolean

    - #### setCanRemoveField

          public void setCanRemoveField(java.lang.String canRemoveField)
                                 throws java.lang.IllegalStateException

      Name of the field on each `CalendarEvent` that determines whether an event shows a remove button.
      Parameters:
        `canRemoveField` - Default value is "canRemove"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getCanRemoveField

          public java.lang.String getCanRemoveField()

      Name of the field on each `CalendarEvent` that determines whether an event shows a remove button.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setCanReorderLanes

          public void setCanReorderLanes(java.lang.Boolean canReorderLanes)
                                  throws java.lang.IllegalStateException

      If true, lanes can be reordered by dragging their `laneFields` with the mouse.
      Parameters:
        `canReorderLanes` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanReorderLanes

          public java.lang.Boolean getCanReorderLanes()

      If true, lanes can be reordered by dragging their `laneFields` with the mouse.
      Returns:
        Boolean

    - #### setCanResizeEventField

          public void setCanResizeEventField(java.lang.String canResizeEventField)
                                      throws java.lang.IllegalStateException

      Name of the field on each `CalendarEvent` that determines whether an event can be resized by dragging.
      Parameters:
        `canResizeEventField` - Default value is "canResize"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getCanResizeEventField

          public java.lang.String getCanResizeEventField()

      Name of the field on each `CalendarEvent` that determines whether an event can be resized by dragging.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setCanResizeEvents

          public void setCanResizeEvents(java.lang.Boolean canResizeEvents)
                                  throws java.lang.IllegalStateException

      Can `events` be resized by dragging appropriate edges of the `canvas`? Only has an effect when both `canEditEvents` and `canDragEvents` are true. Set this attribute to false to disallow drag-resizing.
      Parameters:
        `canResizeEvents` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanResizeEvents

          public java.lang.Boolean getCanResizeEvents()

      Can `events` be resized by dragging appropriate edges of the `canvas`? Only has an effect when both `canEditEvents` and `canDragEvents` are true. Set this attribute to false to disallow drag-resizing.
      Returns:
        Boolean

    - #### setCanResizeTimelineEvents

          public void setCanResizeTimelineEvents(java.lang.Boolean canResizeTimelineEvents)
                                          throws java.lang.IllegalStateException

      Deprecated. in favor of `canResizeEvents`;
      Can `Timeline` events be stretched by their left and right edges?
      Parameters:
        `canResizeTimelineEvents` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCanResizeTimelineEvents

          public java.lang.Boolean getCanResizeTimelineEvents()

      Deprecated. in favor of `canResizeEvents`;
      Can `Timeline` events be stretched by their left and right edges?
      Returns:
        Boolean

    - #### setChosenDate

          public void setChosenDate(java.util.Date chosenDate)

      The date for which events are displayed in the day, week, and month tabs of the calendar. Default is today.
      If this method is called after the component has been drawn/initialized: Set the current date for which the calendar will display events.
      Parameters:
        `chosenDate` - the new date to set as the current date. Default value is 'Today'

    - #### getChosenDate

          public java.util.Date getChosenDate()

      The date for which events are displayed in the day, week, and month tabs of the calendar. Default is today.
      Returns:
        Date

    - #### setColumnsPerPage

          public void setColumnsPerPage(java.lang.Integer columnsPerPage)
                                 throws java.lang.IllegalStateException

      When using the Next and Previous arrows to scroll a Timeline, this is the number of columns of the `timelineGranularity` to scroll by. With the default value of null, the Timeline will scroll by its current length.
      Parameters:
        `columnsPerPage` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getColumnsPerPage

          public java.lang.Integer getColumnsPerPage()

      When using the Next and Previous arrows to scroll a Timeline, this is the number of columns of the `timelineGranularity` to scroll by. With the default value of null, the Timeline will scroll by its current length.
      Returns:
        Integer

    - #### getControlsBar

          public HLayout getControlsBar()
                                 throws java.lang.IllegalStateException

      An `HLayout` shown above the Calendar views and displaying a set of controls for interacting with the current view - namely, the `next`, `previous` and `add` buttons, the `date label` and the `date-picker` icon.

      This component is an AutoChild named "controlsBar". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        HLayout
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setCurrentViewName

          public void setCurrentViewName(ViewName currentViewName)

      The name of the view that should be visible initially by default.
      If this method is called after the component has been drawn/initialized: Sets the currently visible view.
      Parameters:
        `currentViewName` - The name of the view that should be made visible.. Default value is null

    - #### getCurrentViewName

          public ViewName getCurrentViewName()

      The name of the view that should be visible initially by default.
      Returns:
        Get the name of the visible view. Returns one of 'day', 'week', 'month' or 'timeline'.

    - #### setData

          public void setData(CalendarEvent[] data)

      A List of CalendarEvent objects, specifying the data to be used to populate the calendar.

      This property will typically not be explicitly specified for databound Calendars, where the data is returned from the server via databound component methods such as `fetchData()`. In this case the data objects will be set to a `resultSet` rather than a simple array.
      If this method is called after the component has been drawn/initialized: Initialize the data object with the given array. Observes methods of the data object so that when the data changes, the calendar will redraw automatically.

      Parameters:
        `data` - data to show in the list. Default value is null
      See Also:
        `CalendarEvent`

    - #### getData

          public CalendarEvent[] getData()

      A List of CalendarEvent objects, specifying the data to be used to populate the calendar.

      This property will typically not be explicitly specified for databound Calendars, where the data is returned from the server via databound component methods such as `fetchData()`. In this case the data objects will be set to a `resultSet` rather than a simple array.

      Returns:
        CalendarEvent[]
      See Also:
        `CalendarEvent`

    - #### setDataFetchMode

          public void setDataFetchMode(FetchMode dataFetchMode)

      How to fetch and manage records retrieve from the server. See `FetchMode`.

      This setting only applies to the `ResultSet` automatically created by calling `fetchData()`. If a pre-existing ResultSet is passed to setData() instead, it's existing setting for `ResultSet.fetchMode` applies.

      Specified by:
        `setDataFetchMode` in interface `DataBoundComponent`
      Parameters:
        `dataFetchMode` - Default value is "paged"
      See Also:
        `Databinding overview and related methods`

    - #### getDataFetchMode

          public FetchMode getDataFetchMode()

      How to fetch and manage records retrieve from the server. See `FetchMode`.

      This setting only applies to the `ResultSet` automatically created by calling `fetchData()`. If a pre-existing ResultSet is passed to setData() instead, it's existing setting for `ResultSet.fetchMode` applies.

      Specified by:
        `getDataFetchMode` in interface `DataBoundComponent`
      Returns:
        FetchMode
      See Also:
        `Databinding overview and related methods`

    - #### setDataSource

          public void setDataSource(DataSource dataSource)

      The DataSource that this component should bind to for default fields and for performing `DataSource requests`.

      Can be specified as either a DataSource instance or the String ID of a DataSource.

      Specified by:
        `setDataSource` in interface `DataBoundComponent`
      Parameters:
        `dataSource` - Default value is null
      See Also:
        `Databinding overview and related methods`, DataSource fields Example

    - #### setDataSource

          public void setDataSource(java.lang.String dataSource)

      The DataSource that this component should bind to for default fields and for performing `DataSource requests`.

      Can be specified as either a DataSource instance or the String ID of a DataSource.

      Specified by:
        `setDataSource` in interface `DataBoundComponent`
      Parameters:
        `dataSource` - Default value is null
      See Also:
        `Databinding overview and related methods`, DataSource fields Example

    - #### getDateChooser

          public DateChooser getDateChooser()
                                     throws java.lang.IllegalStateException

      `DateChooser` used to select the date for which events will be displayed.

      This component is an AutoChild named "dateChooser". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        DateChooser
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setDateEditingStyle

          public void setDateEditingStyle(DateEditingStyle dateEditingStyle)
                                   throws java.lang.IllegalStateException

      Indicates the type of controls to use in event-windows. Valid values are those in the `DateEditingStyle` type.

      If unset, the editing style will be set to the field-type on the DataSource, if there is one. If there's no DataSource, it will be set to "date" if the `granularity` is "day" or larger and "time" if granularity is "minute" or smaller, otherwise "datetime".

      Parameters:
        `dateEditingStyle` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDateEditingStyle

          public DateEditingStyle getDateEditingStyle()

      Indicates the type of controls to use in event-windows. Valid values are those in the `DateEditingStyle` type.

      If unset, the editing style will be set to the field-type on the DataSource, if there is one. If there's no DataSource, it will be set to "date" if the `granularity` is "day" or larger and "time" if granularity is "minute" or smaller, otherwise "datetime".

      Returns:
        DateEditingStyle

    - #### setDateFormatter

          public void setDateFormatter(DateDisplayFormat dateFormatter)

      Date formatter for displaying events. Default is to use the system-wide default short date format, configured via `Date.setShortDisplayFormat()`. Specify any valid `DateDisplayFormat`.
      Parameters:
        `dateFormatter` - Default value is null

    - #### getDateFormatter

          public DateDisplayFormat getDateFormatter()

      Date formatter for displaying events. Default is to use the system-wide default short date format, configured via `Date.setShortDisplayFormat()`. Specify any valid `DateDisplayFormat`.
      Returns:
        DateDisplayFormat

    - #### getDateLabel

          public Label getDateLabel()
                             throws java.lang.IllegalStateException

      The `com.smartgwt.client.types.AutoChild` `Label` used to display the current date or range above the selected calendar view.

      This component is an AutoChild named "dateLabel". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Label
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getDatePickerButton

          public ImgButton getDatePickerButton()
                                        throws java.lang.IllegalStateException

      An `ImgButton` that appears above the various views of the calendar and offers alternative access to a `DateChooser` to pick the current day.

      This component is an AutoChild named "datePickerButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ImgButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setDatePickerHoverText

          public void setDatePickerHoverText(java.lang.String datePickerHoverText)
                                      throws java.lang.IllegalStateException

      The text to be displayed when a user hovers over the `date picker` toolbar button
      Parameters:
        `datePickerHoverText` - Default value is "Choose a date"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDatePickerHoverText

          public java.lang.String getDatePickerHoverText()

      The text to be displayed when a user hovers over the `date picker` toolbar button
      Returns:
        String

    - #### setDayBodyBaseStyle

          public void setDayBodyBaseStyle(java.lang.String dayBodyBaseStyle)

      The base name for the CSS class applied to the day body of the month view of the calendar. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Parameters:
        `dayBodyBaseStyle` -
      See Also:
        `CSSStyleName . Default value is "calMonthDayBody"`, `Appearance overview and related methods`

    - #### getDayBodyBaseStyle

          public java.lang.String getDayBodyBaseStyle()

      The base name for the CSS class applied to the day body of the month view of the calendar. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setDayHeaderBaseStyle

          public void setDayHeaderBaseStyle(java.lang.String dayHeaderBaseStyle)

      The base name for the CSS class applied to the day headers of the month view. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Parameters:
        `dayHeaderBaseStyle` -
      See Also:
        `CSSStyleName . Default value is "calMonthDayHeader"`, `Appearance overview and related methods`

    - #### getDayHeaderBaseStyle

          public java.lang.String getDayHeaderBaseStyle()

      The base name for the CSS class applied to the day headers of the month view. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### getDayView

          public CalendarView getDayView()
                                  throws java.lang.IllegalStateException

      `CalendarView` used to display events that pertain to a given day.

      This component is an AutoChild named "dayView". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        CalendarView
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setDayViewTitle

          public void setDayViewTitle(java.lang.String dayViewTitle)
                               throws java.lang.IllegalStateException

      The title for the `day view`.
      Parameters:
        `dayViewTitle` - Default value is "Day"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDayViewTitle

          public java.lang.String getDayViewTitle()

      The title for the `day view`.
      Returns:
        String

    - #### setDefaultTimelineColumnSpan

          public void setDefaultTimelineColumnSpan(int defaultTimelineColumnSpan)
                                            throws java.lang.IllegalStateException

      The number of columns of the `timelineGranularity` to give the timeline by default if no `endDate` is provided. The default is 20.
      Parameters:
        `defaultTimelineColumnSpan` - Default value is 20
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDefaultTimelineColumnSpan

          public int getDefaultTimelineColumnSpan()

      The number of columns of the `timelineGranularity` to give the timeline by default if no `endDate` is provided. The default is 20.
      Returns:
        int

    - #### setDescriptionField

          public void setDescriptionField(java.lang.String descriptionField)
                                   throws java.lang.IllegalStateException

      The name of the description field on a `CalendarEvent`.
      Parameters:
        `descriptionField` - Default value is "description"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDescriptionField

          public java.lang.String getDescriptionField()

      The name of the description field on a `CalendarEvent`.
      Returns:
        String

    - #### setDetailsButtonTitle

          public void setDetailsButtonTitle(java.lang.String detailsButtonTitle)
                                     throws java.lang.IllegalStateException

      The title for the edit button in the quick `quick event dialog`.
      Parameters:
        `detailsButtonTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Edit Details"`

    - #### getDetailsButtonTitle

          public java.lang.String getDetailsButtonTitle()

      The title for the edit button in the quick `quick event dialog`.
      Returns:
      See Also:
        `HTMLString`

    - #### setDisableWeekends

          public void setDisableWeekends(java.lang.Boolean disableWeekends)

      If true, weekend days appear in a disabled style and events cannot be created on weekends. Which days are considered weekends is controlled by `weekendDays`.
      Parameters:
        `disableWeekends` - Default value is true
      See Also:
        `Visibility overview and related methods`

    - #### getDisableWeekends

          public java.lang.Boolean getDisableWeekends()

      If true, weekend days appear in a disabled style and events cannot be created on weekends. Which days are considered weekends is controlled by `weekendDays`.
      Returns:
        Boolean
      See Also:
        `Visibility overview and related methods`

    - #### setDurationField

          public void setDurationField(java.lang.String durationField)
                                throws java.lang.IllegalStateException

      The name of the `duration` field on a `CalendarEvent`.
      Parameters:
        `durationField` - Default value is "duration"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getDurationField

          public java.lang.String getDurationField()

      The name of the `duration` field on a `CalendarEvent`.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setDurationUnitField

          public void setDurationUnitField(java.lang.String durationUnitField)
                                    throws java.lang.IllegalStateException

      The name of the `durationUnit` field on a `CalendarEvent`.
      Parameters:
        `durationUnitField` - Default value is "durationUnit"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getDurationUnitField

          public java.lang.String getDurationUnitField()

      The name of the `durationUnit` field on a `CalendarEvent`.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setEndDate

          public void setEndDate(java.util.Date endDate)
                          throws java.lang.IllegalStateException

      The end date of the calendar timeline view. Has no effect in other views.

      To set different `start` and end dates after initial draw, see `setTimelineRange`.

      Note that this attribute may be automatically altered if showing `header-levels`, to fit to header boundaries.

      Parameters:
        `endDate` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEndDate

          public java.util.Date getEndDate()

      The end date of the calendar timeline view. Has no effect in other views.

      To set different `start` and end dates after initial draw, see `setTimelineRange`.

      Note that this attribute may be automatically altered if showing `header-levels`, to fit to header boundaries.

      Returns:
        Date

    - #### setEndDateField

          public void setEndDateField(java.lang.String endDateField)
                               throws java.lang.IllegalStateException

      The name of the end date field on a `CalendarEvent`.
      Parameters:
        `endDateField` - Default value is "endDate"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getEndDateField

          public java.lang.String getEndDateField()

      The name of the end date field on a `CalendarEvent`.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setEventAutoArrange

          public void setEventAutoArrange(java.lang.Boolean eventAutoArrange)
                                   throws java.lang.IllegalStateException

      If set to true, enables the auto-arrangement of events that share time in the calendar. The default is true.
      Parameters:
        `eventAutoArrange` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEventAutoArrange

          public java.lang.Boolean getEventAutoArrange()

      If set to true, enables the auto-arrangement of events that share time in the calendar. The default is true.
      Returns:
        Boolean

    - #### getEventCanvas

          public EventCanvas getEventCanvas()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      To display events in `day`, `week` and `timeline` views, the Calendar creates instances of `EventCanvas` for each event. Use the `com.smartgwt.client.types.AutoChild` system to customize these canvases.

      Returns:
        null

    - #### getEventCanvasButtonLayout

          public HLayout getEventCanvasButtonLayout()
                                             throws java.lang.IllegalStateException

      HLayout that snaps to the top-right of an event canvas on rollover and contains the `close` and/or `context` buttons.

      This component is an AutoChild named "eventCanvasButtonLayout". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        HLayout
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getEventCanvasCloseButton

          public ImgButton getEventCanvasCloseButton()
                                              throws java.lang.IllegalStateException

      The close button that snaps to the top-right of an event canvas on rollover and allows an event to be removed from a `CalendarView`.

      This component is an AutoChild named "eventCanvasCloseButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ImgButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getEventCanvasContextButton

          public ImgButton getEventCanvasContextButton()
                                                throws java.lang.IllegalStateException

      The context button that snaps to the top-right of an event canvas on rollover and shows a custom `context menu` when clicked.

      This component is an AutoChild named "eventCanvasContextButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ImgButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getEventCanvasContextMenu

          public Menu getEventCanvasContextMenu()
                                         throws java.lang.IllegalStateException

      Context menu displayed when an `event canvas` is right-clicked, or when the rollover `context button` is clicked. The context button, and the menu itself, will only be displayed if `getEventCanvasMenuItems` returns an array of appropriate items for the event.

      This component is an AutoChild named "eventCanvasContextMenu". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Menu
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getEventCanvasGripper

          public Img getEventCanvasGripper()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      The "gripper" widget that snaps to the top of an event canvas and allows an event to be dragged with the mouse.

      Returns:
        null

    - #### getEventCanvasHResizer

          public Img getEventCanvasHResizer()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      The resizer image that snaps to the left and right edges of an editable event canvas in a `Timeline`, allowing it to be resized horizontally by dragging with the mouse.

      Returns:
        null

    - #### getEventCanvasLabel

          public Label getEventCanvasLabel()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      Returns:
        null

    - #### getEventCanvasVResizer

          public Img getEventCanvasVResizer()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      The resizer image that snaps to the bottom of event canvases in `day` and `week` views, allowing them to be resized vertically by dragging with the mouse.

      Returns:
        null

    - #### setEventDescriptionFieldTitle

          public void setEventDescriptionFieldTitle(java.lang.String eventDescriptionFieldTitle)
                                             throws java.lang.IllegalStateException

      The title for the `descriptionField` field in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventDescriptionFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Description"`

    - #### getEventDescriptionFieldTitle

          public java.lang.String getEventDescriptionFieldTitle()

      The title for the `descriptionField` field in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### getEventDialog

          public Window getEventDialog()
                                throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `Window` that displays a quick event entry form in a popup window.

      This component is an AutoChild named "eventDialog". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Window
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setEventDragGap

          public void setEventDragGap(java.lang.Integer eventDragGap)

      The number of pixels to leave to the right of events so overlapping events can still be added using the mouse.
      Parameters:
        `eventDragGap` - Default value is 10

    - #### getEventDragGap

          public java.lang.Integer getEventDragGap()

      The number of pixels to leave to the right of events so overlapping events can still be added using the mouse.
      Returns:
        Integer

    - #### setEventDurationFieldTitle

          public void setEventDurationFieldTitle(java.lang.String eventDurationFieldTitle)
                                          throws java.lang.IllegalStateException

      The title for the `duration field` in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventDurationFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Duration"`

    - #### getEventDurationFieldTitle

          public java.lang.String getEventDurationFieldTitle()

      The title for the `duration field` in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setEventDurationUnitFieldTitle

          public void setEventDurationUnitFieldTitle(java.lang.String eventDurationUnitFieldTitle)
                                              throws java.lang.IllegalStateException

      The title for the `duration unit field` in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventDurationUnitFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "&nbsp;"`

    - #### getEventDurationUnitFieldTitle

          public java.lang.String getEventDurationUnitFieldTitle()

      The title for the `duration unit field` in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### getEventEditor

          public DynamicForm getEventEditor()
                                     throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `DynamicForm` which displays `event data`. This form is created within the `event editor layout`

      This component is an AutoChild named "eventEditor". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        DynamicForm
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getEventEditorButtonLayout

          public HLayout getEventEditorButtonLayout()
                                             throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `HLayout` which houses the `Save`, `Remove` and `Cancel` buttons in the `eventEditor`.

      This component is an AutoChild named "eventEditorButtonLayout". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        HLayout
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getEventEditorLayout

          public Window getEventEditorLayout()
                                      throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `Window` that displays the full `event editor`

      This component is an AutoChild named "eventEditorLayout". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Window
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setEventEndDateFieldTitle

          public void setEventEndDateFieldTitle(java.lang.String eventEndDateFieldTitle)
                                         throws java.lang.IllegalStateException

      The title for the `endDateField` in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventEndDateFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "To"`

    - #### getEventEndDateFieldTitle

          public java.lang.String getEventEndDateFieldTitle()

      The title for the `endDateField` in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setEventHeaderHeight

          public void setEventHeaderHeight(int eventHeaderHeight)
                                    throws java.lang.IllegalStateException

      When `eventHeaderWrap` is false and `showEventDescriptions` is true, this is the fixed height for the `header area` in event canvases.
      Parameters:
        `eventHeaderHeight` - Default value is 14
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEventHeaderHeight

          public int getEventHeaderHeight()

      When `eventHeaderWrap` is false and `showEventDescriptions` is true, this is the fixed height for the `header area` in event canvases.
      Returns:
        int

    - #### setEventHeaderWrap

          public void setEventHeaderWrap(boolean eventHeaderWrap)
                                  throws java.lang.IllegalStateException

      When rendering the `canvas` for an event, whether to allow the content of the `header area` to wrap to multiple lines.

      The default is true - if set to false, the header area is `fixed`, unless `showEventDescriptions` is false, in which case the header area fills the canvas.

      Parameters:
        `eventHeaderWrap` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEventHeaderWrap

          public boolean getEventHeaderWrap()

      When rendering the `canvas` for an event, whether to allow the content of the `header area` to wrap to multiple lines.

      The default is true - if set to false, the header area is `fixed`, unless `showEventDescriptions` is false, in which case the header area fills the canvas.

      Returns:
        boolean

    - #### setEventLaneFieldTitle

          public void setEventLaneFieldTitle(java.lang.String eventLaneFieldTitle)
                                      throws java.lang.IllegalStateException

      The title for the `laneNameField` in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventLaneFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Lane"`

    - #### getEventLaneFieldTitle

          public java.lang.String getEventLaneFieldTitle()

      The title for the `laneNameField` in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setEventNameFieldTitle

          public void setEventNameFieldTitle(java.lang.String eventNameFieldTitle)
                                      throws java.lang.IllegalStateException

      The title for the `nameField` in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventNameFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Event Name"`

    - #### getEventNameFieldTitle

          public java.lang.String getEventNameFieldTitle()

      The title for the `nameField` in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setEventOverlap

          public void setEventOverlap(java.lang.Boolean eventOverlap)
                               throws java.lang.IllegalStateException

      When `eventAutoArrange` is true, setting eventOverlap to true causes events that share timeslots to overlap each other by a percentage of their width, specified by `eventOverlapPercent`. The default is true.
      Parameters:
        `eventOverlap` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEventOverlap

          public java.lang.Boolean getEventOverlap()

      When `eventAutoArrange` is true, setting eventOverlap to true causes events that share timeslots to overlap each other by a percentage of their width, specified by `eventOverlapPercent`. The default is true.
      Returns:
        Boolean

    - #### setEventOverlapIdenticalStartTimes

          public void setEventOverlapIdenticalStartTimes(java.lang.Boolean eventOverlapIdenticalStartTimes)
                                                  throws java.lang.IllegalStateException

      When set to true, events that start at the same time will not overlap each other to prevent events having their close button hidden.
      Parameters:
        `eventOverlapIdenticalStartTimes` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEventOverlapIdenticalStartTimes

          public java.lang.Boolean getEventOverlapIdenticalStartTimes()

      When set to true, events that start at the same time will not overlap each other to prevent events having their close button hidden.
      Returns:
        Boolean

    - #### setEventOverlapPercent

          public void setEventOverlapPercent(int eventOverlapPercent)
                                      throws java.lang.IllegalStateException

      The size of the overlap, presented as a percentage of the width of events sharing timeslots.
      Parameters:
        `eventOverlapPercent` - Default value is 10
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getEventOverlapPercent

          public int getEventOverlapPercent()

      The size of the overlap, presented as a percentage of the width of events sharing timeslots.
      Returns:
        int

    - #### setEventSnapGap

          public void setEventSnapGap(java.lang.Integer eventSnapGap)
                               throws java.lang.IllegalStateException

      The number of minutes that determines the positions to which events will snap when rendered, and when moved or resized with the mouse.

      If unset (the default), all views will snap to each cell boundary; 30 minutes in a default vertical view, or one `column` in a default Timeline.

      If set to zero, views will snap to one of a set of known "sensible" defaults: for a default vertical, this will be 5 minutes. For timelines, the eventSnapGap is automatic depending on the current `timelineGranularity`. If `timelineUnitsPerColumn` is greater than 1, the snapGap is set to one unit of the current granularity. So, a cell-resolution of 15 minutes would snap to every minute, assuming there are at least 15 pixels per column. Otherwise, the snapGap is either 15 minutes, 1 hour, one day or one month, depending on granularity.

      If any other value is specified, it is used where possible.

      If the specified or calculated value is less than the time covered by a single pixel in the current view, then it can't be represented. In this case, it is rounded up to the lowest of a set of "sensible" time-spans that can be represented: one of [1, 5, 10, 15, 20, 30, 60, 120, 240, 360, 480, 720, 1440].

      For example - a Timeline showing "day" columns cannot support an eventSnapGap of 1 minute, unless each column is at least 1440 pixels wide - if the columns were only 150px wide, then each pixel would represent around 9.6 minutes, which would result in unpleasant and unexpected time-offsets when dragging events. So, the calculated eventSnapGap will be rounded up to the nearest "sensible" time-span - in this case, 10 minutes. If the columns were only 60px wide, it would be 30 minutes.

      Parameters:
        `eventSnapGap` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Editing overview and related methods`

    - #### getEventSnapGap

          public java.lang.Integer getEventSnapGap()

      The number of minutes that determines the positions to which events will snap when rendered, and when moved or resized with the mouse.

      If unset (the default), all views will snap to each cell boundary; 30 minutes in a default vertical view, or one `column` in a default Timeline.

      If set to zero, views will snap to one of a set of known "sensible" defaults: for a default vertical, this will be 5 minutes. For timelines, the eventSnapGap is automatic depending on the current `timelineGranularity`. If `timelineUnitsPerColumn` is greater than 1, the snapGap is set to one unit of the current granularity. So, a cell-resolution of 15 minutes would snap to every minute, assuming there are at least 15 pixels per column. Otherwise, the snapGap is either 15 minutes, 1 hour, one day or one month, depending on granularity.

      If any other value is specified, it is used where possible.

      If the specified or calculated value is less than the time covered by a single pixel in the current view, then it can't be represented. In this case, it is rounded up to the lowest of a set of "sensible" time-spans that can be represented: one of [1, 5, 10, 15, 20, 30, 60, 120, 240, 360, 480, 720, 1440].

      For example - a Timeline showing "day" columns cannot support an eventSnapGap of 1 minute, unless each column is at least 1440 pixels wide - if the columns were only 150px wide, then each pixel would represent around 9.6 minutes, which would result in unpleasant and unexpected time-offsets when dragging events. So, the calculated eventSnapGap will be rounded up to the nearest "sensible" time-span - in this case, 10 minutes. If the columns were only 60px wide, it would be 30 minutes.

      Returns:
        Integer
      See Also:
        `Editing overview and related methods`

    - #### setEventStartDateFieldTitle

          public void setEventStartDateFieldTitle(java.lang.String eventStartDateFieldTitle)
                                           throws java.lang.IllegalStateException

      The title for the `startDateField` in the quick `event dialog` and the detailed `editor`.
      Parameters:
        `eventStartDateFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "From"`

    - #### getEventStartDateFieldTitle

          public java.lang.String getEventStartDateFieldTitle()

      The title for the `startDateField` in the quick `event dialog` and the detailed `editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setEventStyleName

          public void setEventStyleName(java.lang.String eventStyleName)

      The base name for the CSS class applied to `events` when they're rendered in calendar views. This style will have "Header" and "Body" appended to it, according to which part of the event window is being styled. For example, to style the header, define a CSS class called 'eventWindowHeader'.
      Parameters:
        `eventStyleName` -
      See Also:
        `CSSStyleName . Default value is "eventWindow"`, `Appearance overview and related methods`

    - #### getEventStyleName

          public java.lang.String getEventStyleName()

      The base name for the CSS class applied to `events` when they're rendered in calendar views. This style will have "Header" and "Body" appended to it, according to which part of the event window is being styled. For example, to style the header, define a CSS class called 'eventWindowHeader'.
      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setEventStyleNameField

          public void setEventStyleNameField(java.lang.String eventStyleNameField)
                                      throws java.lang.IllegalStateException

      The name of the field used to override `eventStyleName` for an individual `CalendarEvent`.
      Parameters:
        `eventStyleNameField` - Default value is "styleName"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Appearance overview and related methods`

    - #### getEventStyleNameField

          public java.lang.String getEventStyleNameField()

      The name of the field used to override `eventStyleName` for an individual `CalendarEvent`.
      Returns:
        String
      See Also:
        `Appearance overview and related methods`

    - #### setEventSublaneFieldTitle

          public void setEventSublaneFieldTitle(java.lang.String eventSublaneFieldTitle)
                                         throws java.lang.IllegalStateException

      The title for the `sublaneNameField` in the quick `event dialog` and the detailed `event editor`.
      Parameters:
        `eventSublaneFieldTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Sublane"`

    - #### getEventSublaneFieldTitle

          public java.lang.String getEventSublaneFieldTitle()

      The title for the `sublaneNameField` in the quick `event dialog` and the detailed `event editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### getEventWindow

          public EventWindow getEventWindow()

      Deprecated. in favor of `eventCanvas`
      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      To display events in day and week views, the Calendar creates instance of `EventWindow` for each event. Use the `com.smartgwt.client.types.AutoChild` system to customize these windows.

      Returns:
        null

    - #### setEventWindowStyle

          public void setEventWindowStyle(java.lang.String eventWindowStyle)

      Deprecated. in favor of `eventStyleName`
      The base name for the CSS class applied to event windows within calendars. This style will have "Header", "HeaderLabel", and "Body" appended to it, according to which part of the event window is being styled. For example, to style the header, define a CSS class called 'eventWindowHeader'.
      Parameters:
        `eventWindowStyle` -
      See Also:
        `CSSStyleName . Default value is null`, `Appearance overview and related methods`

    - #### getEventWindowStyle

          public java.lang.String getEventWindowStyle()

      Deprecated. in favor of `eventStyleName`
      The base name for the CSS class applied to event windows within calendars. This style will have "Header", "HeaderLabel", and "Body" appended to it, according to which part of the event window is being styled. For example, to style the header, define a CSS class called 'eventWindowHeader'.
      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setEventWindowStyleField

          public void setEventWindowStyleField(java.lang.String eventWindowStyleField)
                                        throws java.lang.IllegalStateException

      Deprecated. in favor of `eventStyleNameField`
      The name of the field used to override `eventWindowStyle` for an individual `CalendarEvent`. See `CalendarEvent.eventWindowStyle`.
      Parameters:
        `eventWindowStyleField` - Default value is "eventWindowStyle"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Appearance overview and related methods`

    - #### getEventWindowStyleField

          public java.lang.String getEventWindowStyleField()

      Deprecated. in favor of `eventStyleNameField`
      The name of the field used to override `eventWindowStyle` for an individual `CalendarEvent`. See `CalendarEvent.eventWindowStyle`.
      Returns:
        String
      See Also:
        `Appearance overview and related methods`

    - #### setFirstDayOfWeek

          public void setFirstDayOfWeek(java.lang.Integer firstDayOfWeek)

      The numeric day (0-6) which the calendar should consider as the first day of the week - if unset, the default is taken from the current locale.
      Parameters:
        `firstDayOfWeek` - Default value is null

    - #### getFirstDayOfWeek

          public java.lang.Integer getFirstDayOfWeek()

      The numeric day (0-6) which the calendar should consider as the first day of the week - if unset, the default is taken from the current locale.
      Returns:
        Integer

    - #### setHeaderLevels

          public void setHeaderLevels(HeaderLevel... headerLevels)

      Configures the levels of `headers` shown above the event area, and their time units.

      Header levels are provided from the top down, so the first header level should be the largest time unit and the last one the smallest. The smallest is then used for the actual field-headers.
      If this method is called after the component has been drawn/initialized: For `Timeline`s, configures the levels of `headers` shown above the event area, and their time units, after initialization.

      Parameters:
        `headerLevels` - the array of HeaderLevels to set. Default value is null

    - #### getHeaderLevels

          public HeaderLevel[] getHeaderLevels()

      Configures the levels of `headers` shown above the event area, and their time units.

      Header levels are provided from the top down, so the first header level should be the largest time unit and the last one the smallest. The smallest is then used for the actual field-headers.

      Returns:
        HeaderLevel...

    - #### setHideUnusedLanes

          public void setHideUnusedLanes(java.lang.Boolean hideUnusedLanes)

      When set to true, hides any `lane` that doesn't have any active events in the current dataset.
      Parameters:
        `hideUnusedLanes` - Default value is null

    - #### getHideUnusedLanes

          public java.lang.Boolean getHideUnusedLanes()

      When set to true, hides any `lane` that doesn't have any active events in the current dataset.
      Returns:
        Boolean

    - #### getIndicatorCanvas

          public IndicatorCanvas getIndicatorCanvas()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      AutoChild component created for each `indicator` entry.

      Returns:
        null

    - #### setIndicators

          public void setIndicators(CalendarEvent... indicators)

      An array of CalendarEvent instances representing instants in time, to be highlighted in `timeline views`. Each indicator renders out as an `indicator canvas`, a special, non-interactive subclass of `EventCanvas`, which spans all lanes and draws behind any normal, interactive events in the zorder, but in front of any `zones`. The default `style` for these components renders them as thin vertical lines that span all lanes and have a hover but no title.
      If this method is called after the component has been drawn/initialized: Sets the `indicators` used to highlight instants in time.
      Parameters:
        `indicators` - array of indicators to display. Default value is null

    - #### getIndicators

          public CalendarEvent[] getIndicators()

      An array of CalendarEvent instances representing instants in time, to be highlighted in `timeline views`. Each indicator renders out as an `indicator canvas`, a special, non-interactive subclass of `EventCanvas`, which spans all lanes and draws behind any normal, interactive events in the zorder, but in front of any `zones`. The default `style` for these components renders them as thin vertical lines that span all lanes and have a hover but no title.
      Returns:
        CalendarEvent...

    - #### setIndicatorStyleName

          public void setIndicatorStyleName(java.lang.String indicatorStyleName)

      CSS style to apply to the `canvases` created for each specified `indicator`.
      Parameters:
        `indicatorStyleName` -
      See Also:
        `CSSStyleName . Default value is "indicatorCanvas"`

    - #### getIndicatorStyleName

          public java.lang.String getIndicatorStyleName()

      CSS style to apply to the `canvases` created for each specified `indicator`.
      Returns:
      See Also:
        `CSSStyleName`

    - #### setInvalidDateMessage

          public void setInvalidDateMessage(java.lang.String invalidDateMessage)
                                     throws java.lang.IllegalStateException

      The message to display in the `eventEditor` when the 'To' date is greater than the 'From' date and a save is attempted.
      Parameters:
        `invalidDateMessage` - Default value is "From must be before To"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getInvalidDateMessage

          public java.lang.String getInvalidDateMessage()

      The message to display in the `eventEditor` when the 'To' date is greater than the 'From' date and a save is attempted.
      Returns:
        String

    - #### setLaneEventPadding

          public void setLaneEventPadding(java.lang.Integer laneEventPadding)

      The pixel space to leave between events and the edges of the `lane` or `sublane` they appear in. Only applicable to `timelines` and to `dayViews` showing `day lanes`.
      Parameters:
        `laneEventPadding` - Default value is 0

    - #### getLaneEventPadding

          public java.lang.Integer getLaneEventPadding()

      The pixel space to leave between events and the edges of the `lane` or `sublane` they appear in. Only applicable to `timelines` and to `dayViews` showing `day lanes`.
      Returns:
        Integer

    - #### setLaneFields

          public void setLaneFields(ListGridField... laneFields)
                             throws java.lang.IllegalStateException

      Field definitions for the frozen area of the `timelineView`, which shows data about the timeline `lanes`. Each field shows one attribute of the objects provided as `lanes`.

      When `lane grouping` is enabled, only fields that are specified as lane fields can be used as group fields.

      Parameters:
        `laneFields` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getLaneFields

          public ListGridField[] getLaneFields()

      Field definitions for the frozen area of the `timelineView`, which shows data about the timeline `lanes`. Each field shows one attribute of the objects provided as `lanes`.

      When `lane grouping` is enabled, only fields that are specified as lane fields can be used as group fields.

      Returns:
        ListGridField...

    - #### setLaneGroupByField

          public void setLaneGroupByField(java.lang.String laneGroupByField)

      For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
      Parameters:
        `laneGroupByField` - Default value is null

    - #### getLaneGroupByField

          public java.lang.String getLaneGroupByField()

      For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
      Returns:
        String

    - #### setLaneGroupByField

          public void setLaneGroupByField(java.lang.String... laneGroupByField)

      For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
      Parameters:
        `laneGroupByField` - Default value is null

    - #### getLaneGroupByFieldAsString

          public java.lang.String[] getLaneGroupByFieldAsString()

      For timelines with `canGroupLanes` set to true, this is a field name or array of field names on which to group the lanes in a timeline.
      Returns:
        String...

    - #### setLaneNameField

          public void setLaneNameField(java.lang.String laneNameField)
                                throws java.lang.IllegalStateException

      The name of the field which will determine the `lane` in which this event will be displayed in `Timeline`s and in the `day view`, if `showDayLanes` is true.
      Parameters:
        `laneNameField` - Default value is "lane"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getLaneNameField

          public java.lang.String getLaneNameField()

      The name of the field which will determine the `lane` in which this event will be displayed in `Timeline`s and in the `day view`, if `showDayLanes` is true.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setLanes

          public void setLanes(Lane... lanes)

      An array of `Lane` definitions that represent the rows of the `timelineView`, or the columns of the `dayView` if `showDayLanes` is true.
      If this method is called after the component has been drawn/initialized: Sets the `lanes` in the current calendar view. Only has an effect in `timeline views`, and in `day views` when `showDayLanes` is true.
      Parameters:
        `lanes` - array of lanes to display. Default value is null

    - #### getLanes

          public Lane[] getLanes()

      An array of `Lane` definitions that represent the rows of the `timelineView`, or the columns of the `dayView` if `showDayLanes` is true.
      Returns:
        Lane...

    - #### setLeadingDateField

          public void setLeadingDateField(java.lang.String leadingDateField)
                                   throws java.lang.IllegalStateException

      The name of the leading date field for each event. When this attribute and `trailingDateField` are present in the data, a line extends out from the event showing the extent of the leading and trailing dates - useful for visualizing a pipeline of events where some can be moved a certain amount without affecting others.
      Parameters:
        `leadingDateField` - Default value is "leadingDate"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getLeadingDateField

          public java.lang.String getLeadingDateField()

      The name of the leading date field for each event. When this attribute and `trailingDateField` are present in the data, a line extends out from the event showing the extent of the leading and trailing dates - useful for visualizing a pipeline of events where some can be moved a certain amount without affecting others.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### getMainView

          public TabSet getMainView()
                             throws java.lang.IllegalStateException

      `TabSet` for managing calendar views when multiple views are available (eg, `day` and `month`).

      This component is an AutoChild named "mainView". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        TabSet
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setMinimalUI

          public void setMinimalUI(boolean minimalUI)

      A boolean value controlling whether the Calendar shows tabs for available calendar views. By default, this is true for handsets and false otherwise.
      Parameters:
        `minimalUI` - Default value is false

    - #### getMinimalUI

          public boolean getMinimalUI()

      A boolean value controlling whether the Calendar shows tabs for available calendar views. By default, this is true for handsets and false otherwise.
      Returns:
        boolean

    - #### setMinimumDayHeight

          public void setMinimumDayHeight(java.lang.Integer minimumDayHeight)

      In the `month view` when `showDayHeaders` is true, this is the minimum height applied to a day cell and its header combined.

      If `showDayHeaders` is false, this attribute has no effect - the minimum height of day cells is either an equal share of the available height, or the rendered height of the cell's HTML content, whichever is greater. If the latter, a vertical scrollbar is shown.

      Parameters:
        `minimumDayHeight` - Default value is 80
      See Also:
        `Appearance overview and related methods`

    - #### getMinimumDayHeight

          public java.lang.Integer getMinimumDayHeight()

      In the `month view` when `showDayHeaders` is true, this is the minimum height applied to a day cell and its header combined.

      If `showDayHeaders` is false, this attribute has no effect - the minimum height of day cells is either an equal share of the available height, or the rendered height of the cell's HTML content, whichever is greater. If the latter, a vertical scrollbar is shown.

      Returns:
        Integer
      See Also:
        `Appearance overview and related methods`

    - #### setMinLaneWidth

          public void setMinLaneWidth(java.lang.Integer minLaneWidth)
                               throws java.lang.IllegalStateException

      When showing `vertical lanes` in the `dayView`, this attribute sets the minimum width of each column or field.
      Parameters:
        `minLaneWidth` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getMinLaneWidth

          public java.lang.Integer getMinLaneWidth()

      When showing `vertical lanes` in the `dayView`, this attribute sets the minimum width of each column or field.
      Returns:
        Integer

    - #### setMinutesPerRow

          public void setMinutesPerRow(java.lang.Integer minutesPerRow)
                                throws java.lang.IllegalStateException

      The number of minutes per row in `day` and `week` views. The default of 30 minutes shows two rows per hour. Note that this value must divide into 60.
      Parameters:
        `minutesPerRow` - Default value is 30
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getMinutesPerRow

          public java.lang.Integer getMinutesPerRow()

      The number of minutes per row in `day` and `week` views. The default of 30 minutes shows two rows per hour. Note that this value must divide into 60.
      Returns:
        Integer

    - #### getMonthButton

          public NavigationButton getMonthButton()
                                          throws java.lang.IllegalStateException

      A `NavigationButton` that appears to the left of other navigation controls in the `controls bar` on Handset devices.

      Used to show and hide the `month view` on devices with limited space.

      This component is an AutoChild named "monthButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        NavigationButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setMonthButtonTitle

          public void setMonthButtonTitle(java.lang.String monthButtonTitle)
                                   throws java.lang.IllegalStateException

      The title of the `month button`, used for showing and hiding the `month view` on Handsets.

      This is a dynamic string - text within `${...}` are dynamic variables and will be evaluated as JS code when the message is displayed.

      Only one dynamic variable, monthName, is available and represents the name of the month containing the currently selected date.

      The default value is a left-facing arrow followed by the Month-name of the selected date.

      When the month view is already visible, the title for the month button is set according to the value of `backButtonTitle`.

      Parameters:
        `monthButtonTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "&lt; ${monthName}"`

    - #### getMonthButtonTitle

          public java.lang.String getMonthButtonTitle()

      The title of the `month button`, used for showing and hiding the `month view` on Handsets.

      This is a dynamic string - text within `${...}` are dynamic variables and will be evaluated as JS code when the message is displayed.

      Only one dynamic variable, monthName, is available and represents the name of the month containing the currently selected date.

      The default value is a left-facing arrow followed by the Month-name of the selected date.

      When the month view is already visible, the title for the month button is set according to the value of `backButtonTitle`.

      Returns:
      See Also:
        `HTMLString`

    - #### setMonthMoreEventsLinkTitle

          public void setMonthMoreEventsLinkTitle(java.lang.String monthMoreEventsLinkTitle)
                                           throws java.lang.IllegalStateException

      The title of the link shown in a cell of a `month view` when there are too many events to be displayed at once.

      This is a dynamic string - text within `${...}` are dynamic variables and will be evaluated as JS code when the message is displayed.

      Only one dynamic variable, eventCount, is available and represents the number of events that are not currently displayed and that will appear in the menu displayed when the More Events link is clicked.

      The default value is a string like "+ 3 more...".

      Parameters:
        `monthMoreEventsLinkTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "+ ${eventCount} more..."`

    - #### getMonthMoreEventsLinkTitle

          public java.lang.String getMonthMoreEventsLinkTitle()

      The title of the link shown in a cell of a `month view` when there are too many events to be displayed at once.

      This is a dynamic string - text within `${...}` are dynamic variables and will be evaluated as JS code when the message is displayed.

      Only one dynamic variable, eventCount, is available and represents the number of events that are not currently displayed and that will appear in the menu displayed when the More Events link is clicked.

      The default value is a string like "+ 3 more...".

      Returns:
      See Also:
        `HTMLString`

    - #### getMonthMoreEventsMenu

          public Menu getMonthMoreEventsMenu()
                                      throws java.lang.IllegalStateException

      AutoChild Menu, shown when a user clicks the `more events` link in a cell of the `monthView`. Items in this menu represent additional events, not already displayed in the cell, and clicking them fires the `eventClick` notification.

      This component is an AutoChild named "monthMoreEventsMenu". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Menu
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### getMonthView

          public CalendarView getMonthView()
                                    throws java.lang.IllegalStateException

      `CalendarView` used to display events that pertain to a given month.

      This component is an AutoChild named "monthView". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        CalendarView
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setMonthViewTitle

          public void setMonthViewTitle(java.lang.String monthViewTitle)
                                 throws java.lang.IllegalStateException

      The title for the `month view`.
      Parameters:
        `monthViewTitle` - Default value is "Month"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getMonthViewTitle

          public java.lang.String getMonthViewTitle()

      The title for the `month view`.
      Returns:
        String

    - #### setNameField

          public void setNameField(java.lang.String nameField)
                            throws java.lang.IllegalStateException

      The name of the name field on a `CalendarEvent`.
      Parameters:
        `nameField` - Default value is "name"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getNameField

          public java.lang.String getNameField()

      The name of the name field on a `CalendarEvent`.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### getNextButton

          public ImgButton getNextButton()
                                  throws java.lang.IllegalStateException

      An `ImgButton` that appears above the week/day/month views of the calendar and allows the user to move the calendar forwards in time.

      This component is an AutoChild named "nextButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ImgButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setNextButtonHoverText

          public void setNextButtonHoverText(java.lang.String nextButtonHoverText)
                                      throws java.lang.IllegalStateException

      The text to be displayed when a user hovers over the `next` toolbar button
      Parameters:
        `nextButtonHoverText` - Default value is "Next"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getNextButtonHoverText

          public java.lang.String getNextButtonHoverText()

      The text to be displayed when a user hovers over the `next` toolbar button
      Returns:
        String

    - #### setOtherDayBlankStyle

          public void setOtherDayBlankStyle(java.lang.String otherDayBlankStyle)
                                     throws java.lang.IllegalStateException

      The CSS style applied to both the header and body of days from other months in the `month view`, when `showOtherDays` is false.
      Parameters:
        `otherDayBlankStyle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CSSStyleName . Default value is "calMonthOtherDayBlank"`, `Appearance overview and related methods`

    - #### getOtherDayBlankStyle

          public java.lang.String getOtherDayBlankStyle()

      The CSS style applied to both the header and body of days from other months in the `month view`, when `showOtherDays` is false.
      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setOtherDayBodyBaseStyle

          public void setOtherDayBodyBaseStyle(java.lang.String otherDayBodyBaseStyle)

      The base name for the CSS class applied to the day body of the month view of the calendar. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Parameters:
        `otherDayBodyBaseStyle` -
      See Also:
        `CSSStyleName . Default value is "calMonthDayBody"`, `Appearance overview and related methods`

    - #### getOtherDayBodyBaseStyle

          public java.lang.String getOtherDayBodyBaseStyle()

      The base name for the CSS class applied to the day body of the month view of the calendar. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setOtherDayHeaderBaseStyle

          public void setOtherDayHeaderBaseStyle(java.lang.String otherDayHeaderBaseStyle)

      The base name for the CSS class applied to the day headers of the month view. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Parameters:
        `otherDayHeaderBaseStyle` -
      See Also:
        `CSSStyleName . Default value is "calMonthDayHeader"`, `Appearance overview and related methods`

    - #### getOtherDayHeaderBaseStyle

          public java.lang.String getOtherDayHeaderBaseStyle()

      The base name for the CSS class applied to the day headers of the month view. This style will have "Dark", "Over", "Selected", or "Disabled" appended to it according to the state of the cell.

      See `CellStyleSuffixes` for details on how stateful suffixes are combined with the base style to generate stateful cell styles.

      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setOverlapSortSpecifiers

          public void setOverlapSortSpecifiers(SortSpecifier... overlapSortSpecifiers)

      A set of `sort-specifiers` for customizing the render order of events that overlap.

      In `timelines`, this dictates the vertical rendering order of overlapped events in each `lane`.

      In `day` and `week` views, it dictates the horizontal rendering order of overlapped events in each column or Lane.

      By default, events that share space in a Lane or column are rendered from top to bottom, or left to right according to their `start-dates` - the earliest in a given lane appears top-most in that lane, or left-most in its column.

      Providing `overlapSortSpecifiers` allows for the events to be ordered by one or more of the fields stored on the events, or in the underlying `data-source`, if the Calendar is databound.

      Parameters:
        `overlapSortSpecifiers` - Default value is null

    - #### getOverlapSortSpecifiers

          public SortSpecifier[] getOverlapSortSpecifiers()

      A set of `sort-specifiers` for customizing the render order of events that overlap.

      In `timelines`, this dictates the vertical rendering order of overlapped events in each `lane`.

      In `day` and `week` views, it dictates the horizontal rendering order of overlapped events in each column or Lane.

      By default, events that share space in a Lane or column are rendered from top to bottom, or left to right according to their `start-dates` - the earliest in a given lane appears top-most in that lane, or left-most in its column.

      Providing `overlapSortSpecifiers` allows for the events to be ordered by one or more of the fields stored on the events, or in the underlying `data-source`, if the Calendar is databound.

      Returns:
        SortSpecifier...

    - #### getPreviousButton

          public ImgButton getPreviousButton()
                                      throws java.lang.IllegalStateException

      An `ImgButton` that appears above the week/day/month views of the calendar and allows the user to move the calendar backwards in time.

      This component is an AutoChild named "previousButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        ImgButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setPreviousButtonHoverText

          public void setPreviousButtonHoverText(java.lang.String previousButtonHoverText)
                                          throws java.lang.IllegalStateException

      The text to be displayed when a user hovers over the `previous` toolbar button.
      Parameters:
        `previousButtonHoverText` - Default value is "Previous"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPreviousButtonHoverText

          public java.lang.String getPreviousButtonHoverText()

      The text to be displayed when a user hovers over the `previous` toolbar button.
      Returns:
        String

    - #### getRemoveButton

          public IButton getRemoveButton()
                                  throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `IButton`, used to permanently remove an event from the `eventEditor`.

      This component is an AutoChild named "removeButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        IButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setRemoveButtonTitle

          public void setRemoveButtonTitle(java.lang.String removeButtonTitle)
                                    throws java.lang.IllegalStateException

      The title for the `Remove button` in the `event editor`.
      Parameters:
        `removeButtonTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Remove Event"`

    - #### getRemoveButtonTitle

          public java.lang.String getRemoveButtonTitle()

      The title for the `Remove button` in the `event editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setRowHeight

          public void setRowHeight(int rowHeight)

      The height of time-slots in the calendar.
      Parameters:
        `rowHeight` - Default value is 20

    - #### getRowHeight

          public int getRowHeight()

      The height of time-slots in the calendar.
      Returns:
        int

    - #### setRowTitleFrequency

          public void setRowTitleFrequency(java.lang.Integer rowTitleFrequency)
                                    throws java.lang.IllegalStateException

      A minute value that indicates which rows should show times in vertical views, like `day` and `week`. The default of 60 minutes shows titles on the first row of each hour. The value provided must be a multiple of `minutesPerRow` and be no larger than 60.
      Parameters:
        `rowTitleFrequency` - Default value is 60
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getRowTitleFrequency

          public java.lang.Integer getRowTitleFrequency()

      A minute value that indicates which rows should show times in vertical views, like `day` and `week`. The default of 60 minutes shows titles on the first row of each hour. The value provided must be a multiple of `minutesPerRow` and be no larger than 60.
      Returns:
        Integer

    - #### getSaveButton

          public IButton getSaveButton()
                                throws java.lang.IllegalStateException

      An `com.smartgwt.client.types.AutoChild` of type `IButton`, used to save an event from the `eventEditor`.

      This component is an AutoChild named "saveButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        IButton
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setSaveButtonTitle

          public void setSaveButtonTitle(java.lang.String saveButtonTitle)
                                  throws java.lang.IllegalStateException

      The title for the `Save button` in the `quick event dialog` and the `event editor`.
      Parameters:
        `saveButtonTitle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Save Event"`

    - #### getSaveButtonTitle

          public java.lang.String getSaveButtonTitle()

      The title for the `Save button` in the `quick event dialog` and the `event editor`.
      Returns:
      See Also:
        `HTMLString`

    - #### setScrollToWorkday

          public void setScrollToWorkday(java.lang.Boolean scrollToWorkday)
                                  throws java.lang.IllegalStateException

      If set, causes the `workday hours` to be sized to fill the available space in the day view and week view, and automatically scrolls these views to the start of the workday when the calendar is first displayed and whenever the user switches to a new day or week.
      Parameters:
        `scrollToWorkday` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getScrollToWorkday

          public java.lang.Boolean getScrollToWorkday()

      If set, causes the `workday hours` to be sized to fill the available space in the day view and week view, and automatically scrolls these views to the start of the workday when the calendar is first displayed and whenever the user switches to a new day or week.
      Returns:
        Boolean

    - #### setSelectChosenDate

          public void setSelectChosenDate(java.lang.Boolean selectChosenDate)

      When true, shows the current `chosenDate` in a selected style in the `month view` Has no effect in other views.
      Parameters:
        `selectChosenDate` - Default value is true
      See Also:
        `Visibility overview and related methods`

    - #### getSelectChosenDate

          public java.lang.Boolean getSelectChosenDate()

      When true, shows the current `chosenDate` in a selected style in the `month view` Has no effect in other views.
      Returns:
        Boolean
      See Also:
        `Visibility overview and related methods`

    - #### setSelectedCellStyle

          public void setSelectedCellStyle(java.lang.String selectedCellStyle)

      The base name for the CSS class applied to a cell that is selected via a mouse drag.
      Parameters:
        `selectedCellStyle` -
      See Also:
        `CSSStyleName . Default value is "calendarCellSelected"`, `Appearance overview and related methods`

    - #### getSelectedCellStyle

          public java.lang.String getSelectedCellStyle()

      The base name for the CSS class applied to a cell that is selected via a mouse drag.
      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### setShowAddEventButton

          public void setShowAddEventButton(java.lang.Boolean showAddEventButton)

      Set to false to hide the `Add Event` button.
      Parameters:
        `showAddEventButton` - Default value is null

    - #### getShowAddEventButton

          public java.lang.Boolean getShowAddEventButton()

      Set to false to hide the `Add Event` button.
      Returns:
        Boolean

    - #### setShowCellHovers

          public void setShowCellHovers(java.lang.Boolean showCellHovers)
                                 throws java.lang.IllegalStateException

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the normal cells in the body of CalendarViews.

      The content of the hover is determined by a call to `getCellHoverHTML()`, which can be overridden to return custom results; by default, it returns the cell's date as a string.

      Parameters:
        `showCellHovers` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowCellHovers

          public java.lang.Boolean getShowCellHovers()

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the normal cells in the body of CalendarViews.

      The content of the hover is determined by a call to `getCellHoverHTML()`, which can be overridden to return custom results; by default, it returns the cell's date as a string.

      Returns:
        Boolean

    - #### setShowControlsBar

          public void setShowControlsBar(java.lang.Boolean showControlsBar)
                                  throws java.lang.IllegalStateException

      If false the controls bar at the top of the calendar will not be displayed - this means that the `controlsBar` will be hidden, so the autoChildren (`previousButton`, `dateLabel`, `nextButton`, `addEventButton`, and `datePickerButton`) will not be created or shown.
      Parameters:
        `showControlsBar` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowControlsBar

          public java.lang.Boolean getShowControlsBar()

      If false the controls bar at the top of the calendar will not be displayed - this means that the `controlsBar` will be hidden, so the autoChildren (`previousButton`, `dateLabel`, `nextButton`, `addEventButton`, and `datePickerButton`) will not be created or shown.
      Returns:
        Boolean

    - #### setShowDateChooser

          public void setShowDateChooser(java.lang.Boolean showDateChooser)
                                  throws java.lang.IllegalStateException

      Determines whether the `dateChooser` is displayed.
      Parameters:
        `showDateChooser` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Visibility overview and related methods`

    - #### getShowDateChooser

          public java.lang.Boolean getShowDateChooser()

      Determines whether the `dateChooser` is displayed.
      Returns:
        Boolean
      See Also:
        `Visibility overview and related methods`

    - #### setShowDatePickerButton

          public void setShowDatePickerButton(java.lang.Boolean showDatePickerButton)

      Set to false to hide the `datePickerButton` that allows selecting a new base date for this Calendar.
      Parameters:
        `showDatePickerButton` - Default value is null

    - #### getShowDatePickerButton

          public java.lang.Boolean getShowDatePickerButton()

      Set to false to hide the `datePickerButton` that allows selecting a new base date for this Calendar.
      Returns:
        Boolean

    - #### setShowDayHeaders

          public void setShowDayHeaders(java.lang.Boolean showDayHeaders)
                                 throws java.lang.IllegalStateException

      If true, the default, show a header cell for each day cell in the `month view`, with both cells having a minimum combined height of `minimumDayHeight`. If false, the header cells will not be shown, and the value of `minimumDayHeight` is ignored. This causes the available vertical space in month views to be shared equally between day cells, such that no vertical scrollbar is required unless the HTML in the cells renders them taller than will fit.
      Parameters:
        `showDayHeaders` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Visibility overview and related methods`

    - #### getShowDayHeaders

          public java.lang.Boolean getShowDayHeaders()

      If true, the default, show a header cell for each day cell in the `month view`, with both cells having a minimum combined height of `minimumDayHeight`. If false, the header cells will not be shown, and the value of `minimumDayHeight` is ignored. This causes the available vertical space in month views to be shared equally between day cells, such that no vertical scrollbar is required unless the HTML in the cells renders them taller than will fit.
      Returns:
        Boolean
      See Also:
        `Visibility overview and related methods`

    - #### setShowDayLanes

          public void setShowDayLanes(java.lang.Boolean showDayLanes)
                               throws java.lang.IllegalStateException

      If set to true, the `day view` uses `lanes` to render multiple vertical "lanes" within the day, very much like a vertical `Timeline`.

      Day lanes are useful for showing events for various entities on the same day - agendas for various staff members, for example, or delivery schedules for a fleet of trucks.

      Each day lane is self-contained, showing in a column with a header and individual events are placed in `appropriate lanes`, respecting padding and overlapping. If `canEditEvents` is true, events can be drag-moved or drag-resized from their top and bottom edges, within the containing lane. To allow events to be dragged from one lane into another, see `canEditLane`.
      If this method is called after the component has been drawn/initialized: Changes the `view mode` of the day view at runtime - whether to show a normal day column for the `chosenDate`, or the specified set of `vertical lanes`.

      Parameters:
        `showDayLanes` - whether or not to show lanes in the day view. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowDayLanes

          public java.lang.Boolean getShowDayLanes()

      If set to true, the `day view` uses `lanes` to render multiple vertical "lanes" within the day, very much like a vertical `Timeline`.

      Day lanes are useful for showing events for various entities on the same day - agendas for various staff members, for example, or delivery schedules for a fleet of trucks.

      Each day lane is self-contained, showing in a column with a header and individual events are placed in `appropriate lanes`, respecting padding and overlapping. If `canEditEvents` is true, events can be drag-moved or drag-resized from their top and bottom edges, within the containing lane. To allow events to be dragged from one lane into another, see `canEditLane`.

      Returns:
        Boolean

    - #### setShowDetailFields

          public void setShowDetailFields(java.lang.Boolean showDetailFields)
                                   throws java.lang.IllegalStateException

      Whether to show fields marked `detail:true` when a DataBoundComponent is given a DataSource but no `component.fields`.

      The `detail` property is used on DataSource fields to mark fields that shouldn't appear by default in a view that tries to show many records in a small space.

      Specified by:
        `setShowDetailFields` in interface `DataBoundComponent`
      Parameters:
        `showDetailFields` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Databinding overview and related methods`

    - #### getShowDetailFields

          public java.lang.Boolean getShowDetailFields()

      Whether to show fields marked `detail:true` when a DataBoundComponent is given a DataSource but no `component.fields`.

      The `detail` property is used on DataSource fields to mark fields that shouldn't appear by default in a view that tries to show many records in a small space.

      Specified by:
        `getShowDetailFields` in interface `DataBoundComponent`
      Returns:
        Boolean
      See Also:
        `Databinding overview and related methods`

    - #### setShowDragHovers

          public void setShowDragHovers(java.lang.Boolean showDragHovers)

      When `showViewHovers` is true, dictates whether to display hover prompts when an event is being dragged with the mouse.

      The content of the hover is determined by a call to `getDragHoverHTML()`, which can be overridden to return custom results; by default, it returns the date range of the drag canvas as a string.

      Parameters:
        `showDragHovers` - Default value is false

    - #### getShowDragHovers

          public java.lang.Boolean getShowDragHovers()

      When `showViewHovers` is true, dictates whether to display hover prompts when an event is being dragged with the mouse.

      The content of the hover is determined by a call to `getDragHoverHTML()`, which can be overridden to return custom results; by default, it returns the date range of the drag canvas as a string.

      Returns:
        Boolean

    - #### setShowEventDescriptions

          public void setShowEventDescriptions(boolean showEventDescriptions)
                                        throws java.lang.IllegalStateException

      When rendering the `canvas` for an event, whether to show the `body area`, typically containing brief details of the event - `by default`, `its description`.

      The default is true - if set to false, the event's `header` will fill the canvas.

      Parameters:
        `showEventDescriptions` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowEventDescriptions

          public boolean getShowEventDescriptions()

      When rendering the `canvas` for an event, whether to show the `body area`, typically containing brief details of the event - `by default`, `its description`.

      The default is true - if set to false, the event's `header` will fill the canvas.

      Returns:
        boolean

    - #### setShowEventHeaders

          public void setShowEventHeaders(boolean showEventHeaders)
                                   throws java.lang.IllegalStateException

      When rendering the `canvas` for an event, whether to show the `header area`, typically containing suitable title text - `by default`, the event's `name`.

      The default is true - if set to false, the event's `body area` will fill the canvas.

      Parameters:
        `showEventHeaders` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowEventHeaders

          public boolean getShowEventHeaders()

      When rendering the `canvas` for an event, whether to show the `header area`, typically containing suitable title text - `by default`, the event's `name`.

      The default is true - if set to false, the event's `body area` will fill the canvas.

      Returns:
        boolean

    - #### setShowEventHovers

          public void setShowEventHovers(java.lang.Boolean showEventHovers)

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over an `event canvas` in a calendarView.

      The content of the hover is determined by a call to `getCellHoverHTML()`, which can be overridden to return custom results.

      Parameters:
        `showEventHovers` - Default value is true

    - #### getShowEventHovers

          public java.lang.Boolean getShowEventHovers()

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over an `event canvas` in a calendarView.

      The content of the hover is determined by a call to `getCellHoverHTML()`, which can be overridden to return custom results.

      Returns:
        Boolean

    - #### setShowHeaderHovers

          public void setShowHeaderHovers(java.lang.Boolean showHeaderHovers)
                                   throws java.lang.IllegalStateException

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the `header levels` in a `CalendarView`.

      The content of the hover is determined by a call to `getHeaderHoverHTML()`, which can be overridden to return custom results;

      Parameters:
        `showHeaderHovers` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowHeaderHovers

          public java.lang.Boolean getShowHeaderHovers()

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse rolls over the `header levels` in a `CalendarView`.

      The content of the hover is determined by a call to `getHeaderHoverHTML()`, which can be overridden to return custom results;

      Returns:
        Boolean

    - #### setShowIndicators

          public void setShowIndicators(java.lang.Boolean showIndicators)

      Set to true to render any defined `indicators` into `timeline views`.
      Parameters:
        `showIndicators` - Default value is null

    - #### getShowIndicators

          public java.lang.Boolean getShowIndicators()

      Set to true to render any defined `indicators` into `timeline views`.
      Returns:
        Boolean

    - #### setShowIndicatorsInFront

          public void setShowIndicatorsInFront(boolean showIndicatorsInFront)
                                        throws java.lang.IllegalStateException

      In `indicator lines` are showing, this attribute affects where in the z-order their canvases will be rendered: either in front of, or behind normal calendar events.
      Parameters:
        `showIndicatorsInFront` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowIndicatorsInFront

          public boolean getShowIndicatorsInFront()

      In `indicator lines` are showing, this attribute affects where in the z-order their canvases will be rendered: either in front of, or behind normal calendar events.
      Returns:
        boolean

    - #### setShowLaneFieldHovers

          public void setShowLaneFieldHovers(java.lang.Boolean showLaneFieldHovers)

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over the cells in a `laneField`.

      The content of the hover is determined by a call to `getCellHoverHTML()`, which can be overridden to return custom results. Note that getCellHoverHTML() is also called when the mouse moves over cells if `showCellHovers` is true - when called for a laneField, no "date" parameter is passed to that method.

      Parameters:
        `showLaneFieldHovers` - Default value is false

    - #### getShowLaneFieldHovers

          public java.lang.Boolean getShowLaneFieldHovers()

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over the cells in a `laneField`.

      The content of the hover is determined by a call to `getCellHoverHTML()`, which can be overridden to return custom results. Note that getCellHoverHTML() is also called when the mouse moves over cells if `showCellHovers` is true - when called for a laneField, no "date" parameter is passed to that method.

      Returns:
        Boolean

    - #### setShowLaneRollOver

          public void setShowLaneRollOver(java.lang.Boolean showLaneRollOver)

      When set to true, causes `Timelines`, and `day views` with `showDayLanes` set, to highlight the Lane under the mouse with the "Over" style.
      Parameters:
        `showLaneRollOver` - Default value is null

    - #### getShowLaneRollOver

          public java.lang.Boolean getShowLaneRollOver()

      When set to true, causes `Timelines`, and `day views` with `showDayLanes` set, to highlight the Lane under the mouse with the "Over" style.
      Returns:
        Boolean

    - #### setShowMonthButton

          public void setShowMonthButton(java.lang.Boolean showMonthButton)

      Set to false to prevent the `Month` button from displaying on Handset devices.
      Parameters:
        `showMonthButton` - Default value is null

    - #### getShowMonthButton

          public java.lang.Boolean getShowMonthButton()

      Set to false to prevent the `Month` button from displaying on Handset devices.
      Returns:
        Boolean

    - #### setShowNextButton

          public void setShowNextButton(java.lang.Boolean showNextButton)

      Set to false to hide the `Next` button.
      Parameters:
        `showNextButton` - Default value is null

    - #### getShowNextButton

          public java.lang.Boolean getShowNextButton()

      Set to false to hide the `Next` button.
      Returns:
        Boolean

    - #### setShowOtherDays

          public void setShowOtherDays(java.lang.Boolean showOtherDays)
                                throws java.lang.IllegalStateException

      If set to true, in the `month view`, days that fall in an adjacent month are still shown with a header and body area, and are interactive. Otherwise days from other months are rendered in the `otherDayBlankStyle` and are non-interactive.
      Parameters:
        `showOtherDays` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Visibility overview and related methods`

    - #### getShowOtherDays

          public java.lang.Boolean getShowOtherDays()

      If set to true, in the `month view`, days that fall in an adjacent month are still shown with a header and body area, and are interactive. Otherwise days from other months are rendered in the `otherDayBlankStyle` and are non-interactive.
      Returns:
        Boolean
      See Also:
        `Visibility overview and related methods`

    - #### setShowPreviousButton

          public void setShowPreviousButton(java.lang.Boolean showPreviousButton)

      Set to false to hide the `Previous` button.
      Parameters:
        `showPreviousButton` - Default value is null

    - #### getShowPreviousButton

          public java.lang.Boolean getShowPreviousButton()

      Set to false to hide the `Previous` button.
      Returns:
        Boolean

    - #### setShowQuickEventDialog

          public void setShowQuickEventDialog(java.lang.Boolean showQuickEventDialog)
                                       throws java.lang.IllegalStateException

      Determines whether the quick event dialog is displayed when a time is clicked. If this is false, the full event editor is displayed.
      Parameters:
        `showQuickEventDialog` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Editing overview and related methods`

    - #### getShowQuickEventDialog

          public java.lang.Boolean getShowQuickEventDialog()

      Determines whether the quick event dialog is displayed when a time is clicked. If this is false, the full event editor is displayed.
      Returns:
        Boolean
      See Also:
        `Editing overview and related methods`

    - #### setShowTimelineView

          public void setShowTimelineView(java.lang.Boolean showTimelineView)

      If set to true, show the `Timeline view`.
      Parameters:
        `showTimelineView` - Default value is false

    - #### getShowTimelineView

          public java.lang.Boolean getShowTimelineView()

      If set to true, show the `Timeline view`.
      Returns:
        Boolean

    - #### setShowViewHovers

          public void setShowViewHovers(java.lang.Boolean showViewHovers)

      When set to true, the default value, causes the Calendar to show customizable hovers when the mouse moves over various areas of a CalendarView.

      See `showEventHovers`, `showZoneHovers`, `showHeaderHovers`, `showCellHovers`, `showLaneFieldHovers`, `showDragHovers` for further configuration options.
      If this method is called after the component has been drawn/initialized: Switches the various levels of `hovers` on or off at runtime.

      Parameters:
        `showViewHovers` - whether to allow CalendarViews to show hovers. Default value is true

    - #### getShowViewHovers

          public java.lang.Boolean getShowViewHovers()

      When set to true, the default value, causes the Calendar to show customizable hovers when the mouse moves over various areas of a CalendarView.

      See `showEventHovers`, `showZoneHovers`, `showHeaderHovers`, `showCellHovers`, `showLaneFieldHovers`, `showDragHovers` for further configuration options.

      Returns:
        Boolean

    - #### setShowWeekends

          public void setShowWeekends(java.lang.Boolean showWeekends)

      Suppresses the display of weekend days in the `week`, `month` and `timeline` views, and disallows the creation of events on weekends. Which days are considered weekends is controlled by `weekendDays`.
      If this method is called after the component has been drawn/initialized: Setter for updating `showWeekends` at runtime.
      Parameters:
        `showWeekends` - whether or not to show weekends. Default value is true
      See Also:
        `Visibility overview and related methods`

    - #### getShowWeekends

          public java.lang.Boolean getShowWeekends()

      Suppresses the display of weekend days in the `week`, `month` and `timeline` views, and disallows the creation of events on weekends. Which days are considered weekends is controlled by `weekendDays`.
      Returns:
        Boolean
      See Also:
        `Visibility overview and related methods`

    - #### setShowWorkday

          public void setShowWorkday(java.lang.Boolean showWorkday)
                              throws java.lang.IllegalStateException

      If set, causes the calendar to use `workdayBaseStyle` for cells falling within the workday as defined by `workdayStart` and `workdayEnd`, in both the `weekView` and `dayView`.

      The hours of the workday can be customized for particular dates by providing implementations of `getWorkdayStart()` and `getWorkdayEnd()`.

      Parameters:
        `showWorkday` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowWorkday

          public java.lang.Boolean getShowWorkday()

      If set, causes the calendar to use `workdayBaseStyle` for cells falling within the workday as defined by `workdayStart` and `workdayEnd`, in both the `weekView` and `dayView`.

      The hours of the workday can be customized for particular dates by providing implementations of `getWorkdayStart()` and `getWorkdayEnd()`.

      Returns:
        Boolean

    - #### setShowZoneHovers

          public void setShowZoneHovers(java.lang.Boolean showZoneHovers)

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over a `zone` in a calendarView.

      When `showCellHovers` is true, this attribute is ignored and zone hovers are not displayed.

      The content of the hover is determined by a call to `getZoneHoverHTML()`, which can be overridden to return custom results.

      Parameters:
        `showZoneHovers` - Default value is true

    - #### getShowZoneHovers

          public java.lang.Boolean getShowZoneHovers()

      When `showViewHovers` is true, dictates whether to display hover prompts when the mouse moves over a `zone` in a calendarView.

      When `showCellHovers` is true, this attribute is ignored and zone hovers are not displayed.

      The content of the hover is determined by a call to `getZoneHoverHTML()`, which can be overridden to return custom results.

      Returns:
        Boolean

    - #### setShowZones

          public void setShowZones(java.lang.Boolean showZones)

      Set to true to render any defined `zones` into `timeline views`.
      Parameters:
        `showZones` - Default value is null

    - #### getShowZones

          public java.lang.Boolean getShowZones()

      Set to true to render any defined `zones` into `timeline views`.
      Returns:
        Boolean

    - #### setSizeEventsToGrid

          public void setSizeEventsToGrid(java.lang.Boolean sizeEventsToGrid)
                                   throws java.lang.IllegalStateException

      If true, events will be sized to the grid, even if they start and/or end at times between grid cells.
      Parameters:
        `sizeEventsToGrid` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSizeEventsToGrid

          public java.lang.Boolean getSizeEventsToGrid()

      If true, events will be sized to the grid, even if they start and/or end at times between grid cells.
      Returns:
        Boolean

    - #### setStartDate

          public void setStartDate(java.util.Date startDate)
                            throws java.lang.IllegalStateException

      The start date of the calendar `timeline view`. Has no effect in other views. If not specified, defaults to a timeline starting from the beginning of the current `timelineGranularity` and spanning `a default of 20` columns of that granularity.

      To set different start and `end` dates after initial draw, see `setTimelineRange`.

      Note that this attribute may be automatically altered if showing `header-levels`, to fit to header boundaries.

      Parameters:
        `startDate` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getStartDate

          public java.util.Date getStartDate()

      The start date of the calendar `timeline view`. Has no effect in other views. If not specified, defaults to a timeline starting from the beginning of the current `timelineGranularity` and spanning `a default of 20` columns of that granularity.

      To set different start and `end` dates after initial draw, see `setTimelineRange`.

      Note that this attribute may be automatically altered if showing `header-levels`, to fit to header boundaries.

      Returns:
        Date

    - #### setStartDateField

          public void setStartDateField(java.lang.String startDateField)
                                 throws java.lang.IllegalStateException

      The name of the start date field on a `CalendarEvent`.
      Parameters:
        `startDateField` - Default value is "startDate"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getStartDateField

          public java.lang.String getStartDateField()

      The name of the start date field on a `CalendarEvent`.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setSublaneNameField

          public void setSublaneNameField(java.lang.String sublaneNameField)
                                   throws java.lang.IllegalStateException

      The name of the field which will determine the `sublane` in which this event will be displayed, within its parent Lane, in `Timeline`s and in the `day view`, if `showDayLanes` is true.
      Parameters:
        `sublaneNameField` - Default value is "sublane"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSublaneNameField

          public java.lang.String getSublaneNameField()

      The name of the field which will determine the `sublane` in which this event will be displayed, within its parent Lane, in `Timeline`s and in the `day view`, if `showDayLanes` is true.
      Returns:
        String

    - #### setTimelineGranularity

          public void setTimelineGranularity(TimeUnit timelineGranularity)
                                      throws java.lang.IllegalStateException

      The granularity in which the `timelineView` will display events. Possible values are those available in the built-in `TimeUnit` type.
      Parameters:
        `timelineGranularity` - Default value is "day"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTimelineGranularity

          public TimeUnit getTimelineGranularity()

      The granularity in which the `timelineView` will display events. Possible values are those available in the built-in `TimeUnit` type.
      Returns:
        TimeUnit

    - #### setTimelineUnitsPerColumn

          public void setTimelineUnitsPerColumn(int timelineUnitsPerColumn)
                                         throws java.lang.IllegalStateException

      How many units of `timelineGranularity` each cell represents.
      Parameters:
        `timelineUnitsPerColumn` - Default value is 1
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTimelineUnitsPerColumn

          public int getTimelineUnitsPerColumn()

      How many units of `timelineGranularity` each cell represents.
      Returns:
        int

    - #### getTimelineView

          public CalendarView getTimelineView()
                                       throws java.lang.IllegalStateException

      `CalendarView` used to display events in lanes in a horizontal `Timeline` view.

      This component is an AutoChild named "timelineView". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        CalendarView
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setTimelineViewTitle

          public void setTimelineViewTitle(java.lang.String timelineViewTitle)
                                    throws java.lang.IllegalStateException

      The title for the `timeline view`.
      Parameters:
        `timelineViewTitle` - Default value is "Timeline"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTimelineViewTitle

          public java.lang.String getTimelineViewTitle()

      The title for the `timeline view`.
      Returns:
        String

    - #### setTodayBackgroundColor

          public void setTodayBackgroundColor(java.lang.String todayBackgroundColor)
                                       throws java.lang.IllegalStateException

      The background color for cells that represent today in all `CalendarView`s.
      Parameters:
        `todayBackgroundColor` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTodayBackgroundColor

          public java.lang.String getTodayBackgroundColor()

      The background color for cells that represent today in all `CalendarView`s.
      Returns:
        String

    - #### setTrailingDateField

          public void setTrailingDateField(java.lang.String trailingDateField)
                                    throws java.lang.IllegalStateException

      The name of the trailing date field for each event. When this attribute and `leadingDateField` are present in the data, a line extends out from the event showing the extent of the leading and trailing dates - useful for visualizing a pipeline of events where some can be moved a certain amount without affecting others.
      Parameters:
        `trailingDateField` - Default value is "trailingDate"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CalendarEvent`

    - #### getTrailingDateField

          public java.lang.String getTrailingDateField()

      The name of the trailing date field for each event. When this attribute and `leadingDateField` are present in the data, a line extends out from the event showing the extent of the leading and trailing dates - useful for visualizing a pipeline of events where some can be moved a certain amount without affecting others.
      Returns:
        String
      See Also:
        `CalendarEvent`

    - #### setTwentyFourHourTime

          public void setTwentyFourHourTime(java.lang.Boolean twentyFourHourTime)
                                     throws java.lang.IllegalStateException

      If set to true, causes the `eventEditor` to hide the AM/PM picker and provide the full 24-hour range in the hour picker.
      Parameters:
        `twentyFourHourTime` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTwentyFourHourTime

          public java.lang.Boolean getTwentyFourHourTime()

      If set to true, causes the `eventEditor` to hide the AM/PM picker and provide the full 24-hour range in the hour picker.
      Returns:
        Boolean

    - #### setUseEventCanvasRolloverControls

          public void setUseEventCanvasRolloverControls(boolean useEventCanvasRolloverControls)
                                                 throws java.lang.IllegalStateException

      By default, the `close buttons` and the `horizontal` and `vertical` resizer widgets for event canvases are shown only when the mouse is over a given event. Set this attribute to false to have event canvases show these widgets permanently.
      Parameters:
        `useEventCanvasRolloverControls` - Default value is true
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getUseEventCanvasRolloverControls

          public boolean getUseEventCanvasRolloverControls()

      By default, the `close buttons` and the `horizontal` and `vertical` resizer widgets for event canvases are shown only when the mouse is over a given event. Set this attribute to false to have event canvases show these widgets permanently.
      Returns:
        boolean

    - #### setUseSublanes

          public void setUseSublanes(java.lang.Boolean useSublanes)
                              throws java.lang.IllegalStateException

      When set to true, causes `lanes` to be sub-divided according to their set of `sublanes`.
      Parameters:
        `useSublanes` - Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getUseSublanes

          public java.lang.Boolean getUseSublanes()

      When set to true, causes `lanes` to be sub-divided according to their set of `sublanes`.
      Returns:
        Boolean

    - #### setWeekendDays

          public void setWeekendDays(int... weekendDays)

      An array of integer day-numbers that should be considered to be weekend days by this Calendar instance. If unset, defaults to the set of days indicated `globally`.
      Parameters:
        `weekendDays` - Default value is null
      See Also:
        `Visibility overview and related methods`

    - #### getWeekendDays

          public int[] getWeekendDays()

      An array of integer day-numbers that should be considered to be weekend days by this Calendar instance. If unset, defaults to the set of days indicated `globally`.
      Returns:
        int...
      See Also:
        `Visibility overview and related methods`

    - #### setWeekEventBorderOverlap

          public void setWeekEventBorderOverlap(java.lang.Boolean weekEventBorderOverlap)
                                         throws java.lang.IllegalStateException

      Augments the width of week event windows slightly to avoid duplicate adjacent borders between events.
      Parameters:
        `weekEventBorderOverlap` - Default value is false
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Appearance overview and related methods`

    - #### getWeekEventBorderOverlap

          public java.lang.Boolean getWeekEventBorderOverlap()

      Augments the width of week event windows slightly to avoid duplicate adjacent borders between events.
      Returns:
        Boolean
      See Also:
        `Appearance overview and related methods`

    - #### setWeekPrefix

          public void setWeekPrefix(java.lang.String weekPrefix)
                             throws java.lang.IllegalStateException

      The text to appear before the week number in the title of `week-based` `HeaderLevel`s when this calendar is showing a timeline.
      Parameters:
        `weekPrefix` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `HTMLString . Default value is "Week"`

    - #### getWeekPrefix

          public java.lang.String getWeekPrefix()

      The text to appear before the week number in the title of `week-based` `HeaderLevel`s when this calendar is showing a timeline.
      Returns:
      See Also:
        `HTMLString`

    - #### getWeekView

          public CalendarView getWeekView()
                                   throws java.lang.IllegalStateException

      `CalendarView` used to display events that pertain to a given week.

      This component is an AutoChild named "weekView". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        CalendarView
      Throws:
        `java.lang.IllegalStateException` - if this widget has not yet been rendered.

    - #### setWeekViewTitle

          public void setWeekViewTitle(java.lang.String weekViewTitle)
                                throws java.lang.IllegalStateException

      The title for the `week view`.
      Parameters:
        `weekViewTitle` - Default value is "Week"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getWeekViewTitle

          public java.lang.String getWeekViewTitle()

      The title for the `week view`.
      Returns:
        String

    - #### setWorkdayBaseStyle

          public void setWorkdayBaseStyle(java.lang.String workdayBaseStyle)
                                   throws java.lang.IllegalStateException

      If `showWorkday` is set, this is the style used for cells that are within the workday, as defined by `workdayStart` and `workdayEnd`, or by a date-specific range provided in `getWorkdayStart()` and `getWorkdayEnd()` implementations.
      Parameters:
        `workdayBaseStyle` -
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `CSSStyleName . Default value is "calendarWorkday"`, `Appearance overview and related methods`

    - #### getWorkdayBaseStyle

          public java.lang.String getWorkdayBaseStyle()

      If `showWorkday` is set, this is the style used for cells that are within the workday, as defined by `workdayStart` and `workdayEnd`, or by a date-specific range provided in `getWorkdayStart()` and `getWorkdayEnd()` implementations.
      Returns:
      See Also:
        `CSSStyleName`, `Appearance overview and related methods`

    - #### getZoneCanvas

          public ZoneCanvas getZoneCanvas()

      Note : This API is non-functional (always returns null) and exists only to make you aware that this MultiAutoChild exists. See `Using AutoChildren` for details.

      AutoChild component created for each `zone` entry.

      Returns:
        null

    - #### setZones

          public void setZones(CalendarEvent... zones)

      An array of CalendarEvent instances representing pre-defined periods of time to be highlighted in `timeline views`. Each zone renders out a `zone canvas`, a special, non-interactive subclass of `EventCanvas`, which spans all lanes and draws behind any normal, interactive events in the zorder.

      The default `style` for these components renders them semi-transparent and with a bottom-aligned title label.
      If this method is called after the component has been drawn/initialized: Sets the `zones` used to highlight areas of this calendar.

      Parameters:
        `zones` - array of zones to display. Default value is null

    - #### getZones

          public CalendarEvent[] getZones()

      An array of CalendarEvent instances representing pre-defined periods of time to be highlighted in `timeline views`. Each zone renders out a `zone canvas`, a special, non-interactive subclass of `EventCanvas`, which spans all lanes and draws behind any normal, interactive events in the zorder.

      The default `style` for these components renders them semi-transparent and with a bottom-aligned title label.

      Returns:
        CalendarEvent...

    - #### setZoneStyleName

          public void setZoneStyleName(java.lang.String zoneStyleName)

      CSS style to apply to the `canvases` created for each specified `zone`.
      Parameters:
        `zoneStyleName` -
      See Also:
        `CSSStyleName . Default value is "zoneCanvas"`

    - #### getZoneStyleName

          public java.lang.String getZoneStyleName()

      CSS style to apply to the `canvases` created for each specified `zone`.
      Returns:
      See Also:
        `CSSStyleName`

    - #### setZoneTitleOrientation

          public void setZoneTitleOrientation(VerticalAlignment zoneTitleOrientation)
                                       throws java.lang.IllegalStateException

      The vertical alignment of the header-text in each `zone`.
      Parameters:
        `zoneTitleOrientation` - Default value is "bottom"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getZoneTitleOrientation

          public VerticalAlignment getZoneTitleOrientation()

      The vertical alignment of the header-text in each `zone`.
      Returns:
        VerticalAlignment

    - #### addCalendarEvent

          public void addCalendarEvent(CalendarEvent event)

      Create a new event in this calendar.

      In all cases, the `event` passed as the first parameter must have at least a `start date` set. If the calendar is showing `lanes`, the name of the `lane` and, if applicable, the `sublane`, must also be set.

      Parameters:
        `event` - the new calendar event to add

    - #### addCalendarEvent

          public void addCalendarEvent(CalendarEvent event,
                                       java.util.Map customValues)

      Create a new event in this calendar.

      In all cases, the `event` passed as the first parameter must have at least a `start date` set. If the calendar is showing `lanes`, the name of the `lane` and, if applicable, the `sublane`, must also be set.

      Parameters:
        `event` - the new calendar event to add
        `customValues` - additional, custom values to be saved with the event

    - #### addIndicator

          public void addIndicator(CalendarEvent indicator)

      Adds a new `indicator` to the calendar.
      Parameters:
        `indicator` - a new indicator to add to the calendar

    - #### addLane

          public void addLane(Lane lane)

      Adds a new `Lane` to the calendar, for display in the `timeline view`, and in the `day view` if `showDayLanes` is true.
      Parameters:
        `lane` - a new Lane object to add to the calendar

    - #### addLaneEvent

          public void addLaneEvent(Lane laneName,
                                   java.util.Date startDate)

      Deprecated. in favor of `addCalendarEvent()`
      For `Timeline`s, and for `dayView` with `showDayLanes` set, creates a new event and adds it to a particular `Lane`.
      Parameters:
        `laneName` - the Lane in which to add this event
        `startDate` - start date of event, or CalendarEvent Object

    - #### addLaneEvent

          public void addLaneEvent(Lane laneName,
                                   java.util.Date startDate,
                                   java.util.Date endDate)

      See Also:
        `addLaneEvent(com.smartgwt.client.widgets.calendar.Lane, java.util.Date)`

    - #### addLaneEvent

          public void addLaneEvent(Lane laneName,
                                   java.util.Date startDate,
                                   java.util.Date endDate,
                                   java.lang.String name)

      See Also:
        `addLaneEvent(com.smartgwt.client.widgets.calendar.Lane, java.util.Date)`

    - #### addLaneEvent

          public void addLaneEvent(Lane laneName,
                                   java.util.Date startDate,
                                   java.util.Date endDate,
                                   java.lang.String name,
                                   java.lang.String description)

      See Also:
        `addLaneEvent(com.smartgwt.client.widgets.calendar.Lane, java.util.Date)`

    - #### addLaneEvent

          public void addLaneEvent(Lane laneName,
                                   java.util.Date startDate,
                                   java.util.Date endDate,
                                   java.lang.String name,
                                   java.lang.String description,
                                   java.lang.Object otherFields)

      Deprecated. in favor of `addCalendarEvent()`
      For `Timeline`s, and for `dayView` with `showDayLanes` set, creates a new event and adds it to a particular `Lane`.
      Parameters:
        `laneName` - the Lane in which to add this event
        `startDate` - start date of event, or CalendarEvent Object
        `endDate` - end date of event
        `name` - name of event
        `description` - description of event
        `otherFields` - new values of additional fields to be updated

    - #### addZone

          public void addZone(CalendarEvent zone)

      Adds a new `zone` to the calendar.
      Parameters:
        `zone` - a new zone to add to the calendar

    - #### addBackgroundClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addBackgroundClickHandler(BackgroundClickHandler handler)

      Add a backgroundClick handler.

      Callback fired when the mouse is clicked in a background-cell, ie, one without an event.

      Specified by:
        `addBackgroundClickHandler` in interface `HasBackgroundClickHandlers`
      Parameters:
        `handler` - the backgroundClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addBackgroundMouseDownHandler

          public com.google.gwt.event.shared.HandlerRegistration addBackgroundMouseDownHandler(BackgroundMouseDownHandler handler)

      Add a backgroundMouseDown handler.

      Callback fired when the mouse button is depressed over a background-cell, ie, one without an event. Call `BackgroundMouseDownEvent.cancel()` from within `BackgroundMouseDownHandler.onBackgroundMouseDown(com.smartgwt.client.widgets.calendar.events.BackgroundMouseDownEvent)` to cancel the default behavior of allowing sweep selection via dragging.

      Specified by:
        `addBackgroundMouseDownHandler` in interface `HasBackgroundMouseDownHandlers`
      Parameters:
        `handler` - the backgroundMouseDown handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addBackgroundMouseUpHandler

          public com.google.gwt.event.shared.HandlerRegistration addBackgroundMouseUpHandler(BackgroundMouseUpHandler handler)

      Add a backgroundMouseUp handler.

      Notification method fired when the mouse button is released over a background-cell, ie, one without an event. Call `BackgroundMouseUpEvent.cancel()` from within `BackgroundMouseUpHandler.onBackgroundMouseUp(com.smartgwt.client.widgets.calendar.events.BackgroundMouseUpEvent)` to cancel the default behavior of showing a dialog to add a new event with the passed dates.

      Specified by:
        `addBackgroundMouseUpHandler` in interface `HasBackgroundMouseUpHandlers`
      Parameters:
        `handler` - the backgroundMouseUp handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### cancelEditing

          public void cancelEditing()

      Cancels the current edit-session, closing the builtin event `dialog` or `editor` and clearing any visible edit-selection from the `current CalendarView`.

    - #### addCurrentViewChangedHandler

          public com.google.gwt.event.shared.HandlerRegistration addCurrentViewChangedHandler(CurrentViewChangedHandler handler)

      Add a currentViewChanged handler.

      Notification that fires whenever the current view changes via the `mainView tabset`.

      Specified by:
        `addCurrentViewChangedHandler` in interface `HasCurrentViewChangedHandlers`
      Parameters:
        `handler` - the currentViewChanged handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDateChangedHandler

          public com.google.gwt.event.shared.HandlerRegistration addDateChangedHandler(DateChangedHandler handler)

      Add a dateChanged handler.

      Fires whenever the user changes the current date, including picking a specific date or navigating to a new week or month.

      Specified by:
        `addDateChangedHandler` in interface `HasDateChangedHandlers`
      Parameters:
        `handler` - the dateChanged handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDayBodyClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addDayBodyClickHandler(DayBodyClickHandler handler)

      Add a dayBodyClick handler.

      Called when the body area of a day in the month view is clicked on, outside of any links to a particular event.

      By default, if the user can add events, shows a dialog for adding a new event for that day. Call `DayBodyClickEvent.cancel()` from within `DayBodyClickHandler.onDayBodyClick(com.smartgwt.client.widgets.calendar.events.DayBodyClickEvent)` to cancel this action.

      Not called if the day falls outside the current month and `Calendar.showOtherDays` is false.

      Specified by:
        `addDayBodyClickHandler` in interface `HasDayBodyClickHandlers`
      Parameters:
        `handler` - the dayBodyClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDayHeaderClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addDayHeaderClickHandler(DayHeaderClickHandler handler)

      Add a dayHeaderClick handler.

      Called when the header area of a day in the month view is clicked on.

      By default, moves to the day tab and shows the clicked days events. Call `DayHeaderClickEvent.cancel()` from within `DayHeaderClickHandler.onDayHeaderClick(com.smartgwt.client.widgets.calendar.events.DayHeaderClickEvent)` to cancel this action.

      Not called if the day falls outside the current month and `Calendar.showOtherDays` is false.

      Specified by:
        `addDayHeaderClickHandler` in interface `HasDayHeaderClickHandlers`
      Parameters:
        `handler` - the dayHeaderClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventAddedHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventAddedHandler(EventAddedHandler handler)

      Add a eventAdded handler.

      Notification fired whenever a user adds an event.

      In a calendar with a DataSource, eventAdded() fires after the event has been successfully added at the server

      Specified by:
        `addEventAddedHandler` in interface `HasEventAddedHandlers`
      Parameters:
        `handler` - the eventAdded handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventChangedHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventChangedHandler(EventChangedHandler handler)

      Add a eventChanged handler.

      Notification fired whenever a user changes an event, whether by dragging the event or by editing it in a dialog.

      In a calendar with a DataSource, eventChanged() fires after the updated event has been successfully saved to the server

      Specified by:
        `addEventChangedHandler` in interface `HasEventChangedHandlers`
      Parameters:
        `handler` - the eventChanged handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventClickHandler(EventClickHandler handler)

      Add a eventClick handler.

      Called whenever an event is clicked on in the day, week or month views.

      By default a dialog appears showing details for the event, and offering the ability to edit events which are editable. Call `CalendarEventClick.cancel()` from within `EventClickHandler.onEventClick(com.smartgwt.client.widgets.calendar.events.CalendarEventClick)` to cancel the default action. This is a good place to, for example, show a completely customized event dialog instead of the default one.

      Specified by:
        `addEventClickHandler` in interface `HasEventClickHandlers`
      Parameters:
        `handler` - the eventClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventMovedHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventMovedHandler(EventMovedHandler handler)

      Deprecated. Please use addEventReposition[Move/Stop]Handler instead, this will be removed in a future release.
      Add a eventMoved handler.

      Called when an event is moved via dragging by a user. Call `CalendarEventMoved.cancel()` from within `EventMovedHandler.onEventMoved(com.smartgwt.client.widgets.calendar.events.CalendarEventMoved)` to disallow the move.

      Specified by:
        `addEventMovedHandler` in interface `HasEventMovedHandlers`
      Parameters:
        `handler` - the eventMoved handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventRemoveClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventRemoveClickHandler(EventRemoveClickHandler handler)

      Add a eventRemoveClick handler.

      Called whenever the close icon of an `event canvas` is clicked in the `day`, `week` and `timeline` views, or when the `remove button` is pressed in the `event editor`.

      Implement this method to intercept the automatic removal of data. You can Call `CalendarEventRemoveClick.cancel()` from within `EventRemoveClickHandler.onEventRemoveClick(com.smartgwt.client.widgets.calendar.events.CalendarEventRemoveClick)` to prevent the default action (calling `removeEvent()`) and instead take action of your own. For example, returning false from this method and then showing a custom confirmation dialog - if the user cancels, do nothing, otherwise make a call to `removeEvent(event)`, passing the event.

      Specified by:
        `addEventRemoveClickHandler` in interface `HasEventRemoveClickHandlers`
      Parameters:
        `handler` - the eventRemoveClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventRemovedHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventRemovedHandler(EventRemovedHandler handler)

      Add a eventRemoved handler.

      Notification fired whenever a user removes an event.

      In a calendar with a DataSource, eventRemoved() fires after the event has been successfully removed from the server

      Specified by:
        `addEventRemovedHandler` in interface `HasEventRemovedHandlers`
      Parameters:
        `handler` - the eventRemoved handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventRepositionMoveHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventRepositionMoveHandler(EventRepositionMoveHandler handler)

      Add a eventRepositionMove handler.

      Notification called whenever the drop position of an event being drag-moved changes.

      The `newEvent` parameter represents the event as it will be after the move, including `start` and `end` dates and `lane` and `sublane` where applicable.

      Call `EventRepositionMove.cancel()` from within `EventRepositionMoveHandler.onEventRepositionMove(com.smartgwt.client.widgets.calendar.events.EventRepositionMove)` to prevent the default action, of positioning the drag canvas to the newEvent.

      Specified by:
        `addEventRepositionMoveHandler` in interface `HasEventRepositionMoveHandlers`
      Parameters:
        `handler` - the eventRepositionMove handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventRepositionStopHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventRepositionStopHandler(EventRepositionStopHandler handler)

      Add a eventRepositionStop handler.

      Notification called when an event being drag-moved is dropped.

      The `newEvent` parameter represents the event as it will be after the move, including `start` and `end` dates and `lane` and `sublane` where applicable.

      Call `EventRepositionStop.cancel()` from within `EventRepositionStopHandler.onEventRepositionStop(com.smartgwt.client.widgets.calendar.events.EventRepositionStop)` to prevent the default action, of actually `updating` the event.

      Specified by:
        `addEventRepositionStopHandler` in interface `HasEventRepositionStopHandlers`
      Parameters:
        `handler` - the eventRepositionStop handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventResizedHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventResizedHandler(EventResizedHandler handler)

      Deprecated. Please use addEventResize[Move/Stop]Handler instead, this will be removed in a future release.
      Add a eventResized handler.

      Called when an event is resized with the mouse. The passed date value is the new *end* date for the event, since resizing can only be performed on the bottom edge of an event in normal calendar views.

      Specified by:
        `addEventResizedHandler` in interface `HasEventResizedHandlers`
      Parameters:
        `handler` - the eventResized handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventResizeMoveHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventResizeMoveHandler(EventResizeMoveHandler handler)

      Add a eventResizeMove handler.

      Notification called on each resize during an event drag-resize operation.

      The `newEvent` parameter represents the event as it will be after the resize.

      Call `EventResizeMove.cancel()` from within `EventResizeMoveHandler.onEventResizeMove(com.smartgwt.client.widgets.calendar.events.EventResizeMove)` to prevent the default action, of resizing the drag canvas to the newEvent.

      Specified by:
        `addEventResizeMoveHandler` in interface `HasEventResizeMoveHandlers`
      Parameters:
        `handler` - the eventResizeMove handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addEventResizeStopHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventResizeStopHandler(EventResizeStopHandler handler)

      Add a eventResizeStop handler.

      Notification called when an event drag-resize operation completes.

      The `newEvent` parameter represents the event as it will be after the move.

      Call `EventResizeStop.cancel()` from within `EventResizeStopHandler.onEventResizeStop(com.smartgwt.client.widgets.calendar.events.EventResizeStop)` to prevent the default action, of actually `updating` the event.

      Specified by:
        `addEventResizeStopHandler` in interface `HasEventResizeStopHandlers`
      Parameters:
        `handler` - the eventResizeStop handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### eventsRendered

          public void eventsRendered()

      A notification method fired when the events in the current view have been refreshed.

    - #### getActiveDay

          public java.lang.Integer getActiveDay()

      Gets the day of the week (0-6) that the mouse is currently over.
      Returns:
        the day that the mouse is currently over
      See Also:
        `getActiveTime()`

    - #### getActiveTime

          public java.util.Date getActiveTime()

      Gets a date object representing the date over which the mouse is hovering for the current selected view. For month view, the time will be set to midnight of the active day. For day and week views, the time will be the rounded to the closest half hour relative to the mouse position.
      Returns:
        the date that the mouse is over

    - #### getCellDate

          public java.util.Date getCellDate()

      Return the Date instance associated with the passed co-ordinates in the passed or selected view. If the cell at the passed co-ordinates is not a date-cell, returns null. If rowNum and colNum are both unset, returns the date from the cell under the mouse.

      To determine the date at a more specific point within a cell, see `getDateFromPoint()`.

      Returns:
        the date, if any, associated with the passed co-ords in the appropriate view

    - #### getCellDate

          public java.util.Date getCellDate(java.lang.Integer rowNum)

      See Also:
        `getCellDate()`

    - #### getCellDate

          public java.util.Date getCellDate(java.lang.Integer rowNum,
                                            java.lang.Integer colNum)

      See Also:
        `getCellDate()`

    - #### getCellDate

          public java.util.Date getCellDate(java.lang.Integer rowNum,
                                            java.lang.Integer colNum,
                                            CalendarView view)

      Return the Date instance associated with the passed co-ordinates in the passed or selected view. If the cell at the passed co-ordinates is not a date-cell, returns null. If rowNum and colNum are both unset, returns the date from the cell under the mouse.

      To determine the date at a more specific point within a cell, see `getDateFromPoint()`.

      Parameters:
        `rowNum` - the row number to get the date for
        `colNum` - the column number to get the date for
        `view` - the view to use - uses the selected view if not passed
      Returns:
        the date, if any, associated with the passed co-ords in the appropriate view

    - #### getCellHoverHTML

          public java.lang.String getCellHoverHTML(CalendarView view,
                                                   Record record,
                                                   java.lang.Integer rowNum,
                                                   java.lang.Integer colNum,
                                                   java.util.Date date,
                                                   java.lang.String defaultValue)

      Returns the hover HTML for the cell at the passed co-ordinates in the passed view. By default, the hover text is the snap date closest to the mouse, if the cell being hovered is a normal date cell - otherwise, it is the title of the `laneField` being hovered over.

      Override here to return custom HTML for the passed cell.

      Parameters:
        `view` - the CalendarView the mouse is hovered over
        `record` - The record containing the cell being hovered
        `rowNum` - The rowNum of the cell being hovered
        `colNum` - the colNum of the cell being hovered
        `date` - the snap-date at the mouse, which may be different from the result of a call to `getCellDate`
        `defaultValue` - the default hover text for the passed values
      Returns:
        the HTML to show in the hover

    - #### getDateCellAlign

          public java.lang.String getDateCellAlign(java.util.Date date,
                                                   java.lang.Integer rowNum,
                                                   java.lang.Integer colNum,
                                                   CalendarView view)

      When `getDateHTML` returns a value, this method returns the horizontal alignment for that value in its cell, in the passed view.
      Parameters:
        `date` - the date to get the cell-alignment for
        `rowNum` - the row number containing the date to get the cell-alignment for
        `colNum` - the column number containing the date to get the cell-alignment for
        `view` - the relevant CalendarView
      Returns:
        cell-alignment for content in the cell with the passed date and rowNum/colNum
      See Also:
        `getDateHTML(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCellVAlign(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateStyle(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCSSText(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`

    - #### getDateCellVAlign

          public java.lang.String getDateCellVAlign(java.util.Date date,
                                                    java.lang.Integer rowNum,
                                                    java.lang.Integer colNum,
                                                    CalendarView view)

      When `getDateHTML` returns a value, this method returns the vertical alignment for that value in its cell, in the passed view.
      Parameters:
        `date` - the date to get the cell-alignment for
        `rowNum` - the row number containing the date to get the cell-alignment for
        `colNum` - the column number containing the date to get the cell-alignment for
        `view` - the relevant CalendarView
      Returns:
        vertical-alignment for content in the cell with the passed date and rowNum/colNum
      See Also:
        `getDateHTML(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCellAlign(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateStyle(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCSSText(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`

    - #### getDateCSSText

          public java.lang.String getDateCSSText(java.util.Date date,
                                                 java.lang.Integer rowNum,
                                                 java.lang.Integer colNum,
                                                 CalendarView view)

      Return CSS text for styling the cell associated with the passed date and/or rowNum & colNum, which will be applied in addition to the CSS class for the cell, as overrides.

      "CSS text" means semicolon-separated style settings, suitable for inclusion in a CSS stylesheet or in a STYLE attribute of an HTML element.

      Parameters:
        `date` - the date to return CSS text for
        `rowNum` - the row number containing the date to get the CSS for
        `colNum` - the column number containing the date to get the CSS for
        `view` - the relevant CalendarView
      Returns:
        CSS text for the cell with the passed date and rowNum/colNum
      See Also:
        `getDateHTML(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateStyle(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`

    - #### getDateFromPoint

          public java.util.Date getDateFromPoint()

      Returns a Date instance representing the point at the passed offsets into the body of the current view.

      If snapOffsets is passed as false, returns the date representing the exact position of the passed offsets. If unset or passed as true, returns the date at the nearest eventSnapGap to the left, for `Timeline`s, or above for `day` and `week` views.

      If neither x nor y offsets are passed, assumes them from the last mouse event.

      If the cell at the eventual offsets is not a date-cell, returns null.

      Note that, for the `month view`, this method is functionally equivalent to `getCellDate()`, which determines the date associated with a cell, without the additional offset precision offered here.

      Returns:
        the date, if any, associated with the passed co-ords in the current view

    - #### getDateFromPoint

          public java.util.Date getDateFromPoint(java.lang.Integer x)

      See Also:
        `getDateFromPoint()`

    - #### getDateFromPoint

          public java.util.Date getDateFromPoint(java.lang.Integer x,
                                                 java.lang.Integer y)

      See Also:
        `getDateFromPoint()`

    - #### getDateFromPoint

          public java.util.Date getDateFromPoint(java.lang.Integer x,
                                                 java.lang.Integer y,
                                                 java.lang.Boolean snapOffsets)

      See Also:
        `getDateFromPoint()`

    - #### getDateFromPoint

          public java.util.Date getDateFromPoint(java.lang.Integer x,
                                                 java.lang.Integer y,
                                                 java.lang.Boolean snapOffsets,
                                                 CalendarView view)

      Returns a Date instance representing the point at the passed offsets into the body of the current view.

      If snapOffsets is passed as false, returns the date representing the exact position of the passed offsets. If unset or passed as true, returns the date at the nearest eventSnapGap to the left, for `Timeline`s, or above for `day` and `week` views.

      If neither x nor y offsets are passed, assumes them from the last mouse event.

      If the cell at the eventual offsets is not a date-cell, returns null.

      Note that, for the `month view`, this method is functionally equivalent to `getCellDate()`, which determines the date associated with a cell, without the additional offset precision offered here.

      Parameters:
        `x` - the x offset into the body of the selected view - non-functional for the `day view`. If this param and "y" are both unset, assumes both offsets from the last mouse event.
        `y` - the y offset into the body of the selected view - non-functional for the `timeline view`. If this param and "x" are both unset, assumes both offsets from the last mouse event.
        `snapOffsets` - whether to snap the offsets to the nearest eventSnapGap - if unset, the default is true
        `view` - the view to use - or the selected view if not passed
      Returns:
        the date, if any, associated with the passed co-ords in the current view

    - #### getDateHeaderTitle

          public java.lang.String getDateHeaderTitle(java.util.Date date,
                                                     int dayOfWeek,
                                                     java.lang.String defaultValue,
                                                     CalendarView view)

      Return the title text to display in the header-button of the ListGridField showing the passed date, in the passed view.
      Parameters:
        `date` - the date to return the header-title for - note that the `month view` does not pass this parameter because a single column represents multiple dates
        `dayOfWeek` - the week-day number of the passed date, except for the `month view`, where no date is passed, because the week-day number represents multiple dates.
        `defaultValue` - the default header-title for the passed date and view
        `view` - the relevant CalendarView
      Returns:
        the text to show in the header-button for the passed date/field

    - #### getDateHTML

          public java.lang.String getDateHTML(java.util.Date date,
                                              java.lang.Integer rowNum,
                                              java.lang.Integer colNum,
                                              CalendarView view)

      Return the HTML to be displayed in the associated date-cell in the passed view. Note that the `month view` has default cell HTML, controlled via `getDayBodyHTML()`.
      Parameters:
        `date` - the date to get the HTML for
        `rowNum` - the row number containing the date to get the HTML for
        `colNum` - the column number containing the date to get the HTML for
        `view` - the relevant CalendarView
      Returns:
        HTML to display in the cell with the passed date and rowNum/colNum
      See Also:
        `getDateCellAlign(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCellVAlign(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateStyle(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCSSText(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDayBodyHTML(java.util.Date, com.smartgwt.client.widgets.calendar.CalendarEvent[], com.smartgwt.client.widgets.calendar.Calendar, int, int)`

    - #### getDateStyle

          public java.lang.String getDateStyle(java.util.Date date,
                                               java.lang.Integer rowNum,
                                               java.lang.Integer colNum,
                                               CalendarView view)

      Return the CSS styleName for the associated date-cell in the passed view.
      Parameters:
        `date` - the date to return the CSS styleName for
        `rowNum` - the row number containing the date to get the CSS styleName for
        `colNum` - the column number containing the date to get the CSS styleName for
        `view` - the relevant CalendarView
      Returns:
        CSS style for the cell with the passed date and rowNum/colNum
      See Also:
        `getDateHTML(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`, `getDateCSSText(java.util.Date, java.lang.Integer, java.lang.Integer, com.smartgwt.client.widgets.calendar.CalendarView)`

    - #### getDragHoverHTML

          public java.lang.String getDragHoverHTML(CalendarView view,
                                                   CalendarEvent event,
                                                   java.lang.String defaultValue)

      Returns the HTML to show in a hover when an existing event is dragged, or when a new event is being created by dragging with the mouse.
      Parameters:
        `view` - the CalendarView the mouse is hovered over
        `event` - the CalendarEvent attached to the EventCanvas being dragged
        `defaultValue` - the default text for the passed values
      Returns:
        the HTML to show in the hover

    - #### getEventBodyHTML

          public java.lang.String getEventBodyHTML(CalendarEvent event)

      Returns the description text for the passed event, for display in the body area of an event canvas. The default implementation returns the event's `description field`.
      Parameters:
        `event` - the event to get the description text for
      Returns:
        the HTML to display in the body of the passed event's EventCanvas

    - #### getEventBodyHTML

          public java.lang.String getEventBodyHTML(CalendarEvent event,
                                                   CalendarView view)

      Returns the description text for the passed event, for display in the body area of an event canvas. The default implementation returns the event's `description field`.
      Parameters:
        `event` - the event to get the description text for
        `view` - the view in which the event is being rendered
      Returns:
        the HTML to display in the body of the passed event's EventCanvas

    - #### getEventCanvasMenuItems

          public MenuItem[] getEventCanvasMenuItems(EventCanvas canvas)

      If this method returns a value, it is expected to return an array of `items` applicable to the passed canvas and its event. If an array with valid entries is returned, the rollover `context button` is shown for the passed canvas.
      Parameters:
        `canvas` - the canvas to get menu items for
      Returns:

    - #### getEventCanvasStyle

          public java.lang.String getEventCanvasStyle(CalendarEvent event)

      Returns the `styleName` to use for the passed `event`, in the passed `view`. By default, returns the style `on the event`, if one is specified - otherwise, in `lane-based` views, it returns the style specified on the `lane or sublane`, or the style specified on the `calendar`.
      Parameters:
        `event` - the event to get the CSS style for
      Returns:
        the CSS style to apply to the passed event in the passed view

    - #### getEventCanvasStyle

          public java.lang.String getEventCanvasStyle(CalendarEvent event,
                                                      CalendarView view)

      Returns the `styleName` to use for the passed `event`, in the passed `view`. By default, returns the style `on the event`, if one is specified - otherwise, in `lane-based` views, it returns the style specified on the `lane or sublane`, or the style specified on the `calendar`.
      Parameters:
        `event` - the event to get the CSS style for
        `view` - the CalendarView that contains the canvas being styled
      Returns:
        the CSS style to apply to the passed event in the passed view

    - #### getEventEndDate

          public java.util.Date getEventEndDate(CalendarEvent event)

      Returns the `end date` of the passed event. If the event is `duration-based`, the result is calculated from the `start date` and the specified `duration` and `unit`.
      Parameters:
        `event` - the event to get the start date of
      Returns:
        the end date of the passed event

    - #### getEventHeaderHTML

          public java.lang.String getEventHeaderHTML(CalendarEvent event)

      Returns the title text for the passed event, for display in the header area of an event canvas. The default implementation returns the event's `name field` for timelines, and that same value pre-pended with the event's `start` and `end` dates for day and week views.
      Parameters:
        `event` - the event to get the description text for
      Returns:
        the HTML to display in the header of an event canvas

    - #### getEventHeaderHTML

          public java.lang.String getEventHeaderHTML(CalendarEvent event,
                                                     CalendarView view)

      Returns the title text for the passed event, for display in the header area of an event canvas. The default implementation returns the event's `name field` for timelines, and that same value pre-pended with the event's `start` and `end` dates for day and week views.
      Parameters:
        `event` - the event to get the description text for
        `view` - the view in which the event is being rendered
      Returns:
        the HTML to display in the header of an event canvas

    - #### addEventHoverHTMLHandler

          public com.google.gwt.event.shared.HandlerRegistration addEventHoverHTMLHandler(EventHoverHTMLHandler handler)

      Deprecated. Please use setEventHoverHTMLCustomizer instead, this will be removed in a future release.
      Add a eventHoverHTML handler.

      Gets the hover HTML for an event being hovered over. Override here to return custom HTML based upon the parameter event object.

      Specified by:
        `addEventHoverHTMLHandler` in interface `HasEventHoverHTMLHandlers`
      Parameters:
        `handler` - the eventHoverHTML handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### getEventLane

          public Lane getEventLane(CalendarEvent event)

      Returns the `lane` associated with the passed event, in the passed view
      Parameters:
        `event` - the event to get the lane for
      Returns:
        the lane associated with the passed event

    - #### getEventLane

          public Lane getEventLane(CalendarEvent event,
                                   CalendarView view)

      Returns the `lane` associated with the passed event, in the passed view
      Parameters:
        `event` - the event to get the lane for
        `view` - the view to get the lane object from
      Returns:
        the lane associated with the passed event

    - #### getEventLength

          public void getEventLength(CalendarEvent event)

      Returns the length of the passed `event` in the passed `unit`. If `unit` isn't passed, returns the length of the event in milliseconds.
      Parameters:
        `event` - the event to get the length of

    - #### getEventLength

          public void getEventLength(CalendarEvent event,
                                     TimeUnit unit)

      Returns the length of the passed `event` in the passed `unit`. If `unit` isn't passed, returns the length of the event in milliseconds.
      Parameters:
        `event` - the event to get the length of
        `unit` - the time unit to return the length in, milliseconds if not passed

    - #### getEventStartDate

          public java.util.Date getEventStartDate(CalendarEvent event)

      Returns the `start date` of the passed event.
      Parameters:
        `event` - the event to get the start date of
      Returns:
        the start date of the passed event

    - #### getEventSublane

          public Lane getEventSublane(CalendarEvent event)

      Returns the `sublane` associated with the passed event, in the passed view
      Parameters:
        `event` - the event to get the sublane for
      Returns:
        the sublane associated with the passed event

    - #### getEventSublane

          public Lane getEventSublane(CalendarEvent event,
                                      CalendarView view)

      Returns the `sublane` associated with the passed event, in the passed view
      Parameters:
        `event` - the event to get the sublane for
        `view` - the view to get the sublane object from
      Returns:
        the sublane associated with the passed event

    - #### getHeaderHoverHTML

          public java.lang.String getHeaderHoverHTML(CalendarView view,
                                                     HeaderLevel headerLevel,
                                                     java.util.Date startDate,
                                                     java.util.Date endDate,
                                                     java.lang.String defaultValue)

      Returns the hover HTML to show in a hover when the mouse moves over the header area.
      Parameters:
        `view` - the CalendarView the mouse is hovered over
        `headerLevel` - the header level hovered over
        `startDate` - the start date of the span being hovered over
        `endDate` - the end date of the span being hovered over
        `defaultValue` - the default text for the passed header level and date range
      Returns:
        the HTML to show in the hover

    - #### getIndicatorCanvasStyle

          public java.lang.String getIndicatorCanvasStyle(CalendarEvent indicator)

      Returns the `styleName` to use for the passed `indicator`, in the passed `view`. By default, returns the style `on the indicator`, if one is specified, or the style specified on the `calendar` otherwise.
      Parameters:
        `indicator` - the indicator to get the CSS style for
      Returns:

    - #### getIndicatorCanvasStyle

          public java.lang.String getIndicatorCanvasStyle(CalendarEvent indicator,
                                                          CalendarView view)

      Returns the `styleName` to use for the passed `indicator`, in the passed `view`. By default, returns the style `on the indicator`, if one is specified, or the style specified on the `calendar` otherwise.
      Parameters:
        `indicator` - the indicator to get the CSS style for
        `view` - the CalendarView that contains the canvas being styled
      Returns:

    - #### getIndicatorHoverHTML

          public java.lang.String getIndicatorHoverHTML(CalendarEvent indicator,
                                                        IndicatorCanvas indicatorCanvas,
                                                        CalendarView view,
                                                        java.lang.String defaultValue)

      Gets the hover HTML for an `indicator` being hovered over. Override here to return custom HTML based upon the parameter indicator object.
      Parameters:
        `indicator` - The indicator being hovered over
        `indicatorCanvas` - the indicator canvas being hovered over
        `view` - the CalendarView in which the indicatorCanvas is displayed
        `defaultValue` - the default HTML to show when hovering over the passed Indicator
      Returns:
        the HTML to show in the hover

    - #### getLane

          public Lane getLane(java.lang.String lane)

      Returns the `lane` with the passed name, in the passed view
      Parameters:
        `lane` - the name of the lane to return
      Returns:
        the lane with the passed name, or null if not found

    - #### getLane

          public Lane getLane(java.lang.String lane,
                              CalendarView view)

      Returns the `lane` with the passed name, in the passed view
      Parameters:
        `lane` - the name of the lane to return
        `view` - the view to get the lane object from
      Returns:
        the lane with the passed name, or null if not found

    - #### getLaneEvents

          public CalendarEvent[] getLaneEvents(Lane lane)

      For views that support `lanes`, returns the array of events in the current dataset that apply to the passed lane in the passed or current view.
      Parameters:
        `lane` - lane object or name to get the events for
      Returns:
        the list of events that apply to the passed lane and view

    - #### getLaneEvents

          public CalendarEvent[] getLaneEvents(java.lang.String lane)

      For views that support `lanes`, returns the array of events in the current dataset that apply to the passed lane in the passed or current view.
      Parameters:
        `lane` - lane object or name to get the events for
      Returns:
        the list of events that apply to the passed lane and view

    - #### getLaneEvents

          public CalendarEvent[] getLaneEvents(Lane lane,
                                               CalendarView view)

      For views that support `lanes`, returns the array of events in the current dataset that apply to the passed lane in the passed or current view.
      Parameters:
        `lane` - lane object or name to get the events for
        `view` - the view in which the passed lane lives - uses the selected view if unset
      Returns:
        the list of events that apply to the passed lane and view

    - #### getLaneFromPoint

          public Lane getLaneFromPoint()

      Returns the `Lane` at the passed co-ordinates. To get the lane under the mouse, pass null for both x and y.
      Returns:
        the Lane at the passed co-ords in the passed or selected view

    - #### getLaneFromPoint

          public Lane getLaneFromPoint(java.lang.Integer x)

      See Also:
        `getLaneFromPoint()`

    - #### getLaneFromPoint

          public Lane getLaneFromPoint(java.lang.Integer x,
                                       java.lang.Integer y)

      See Also:
        `getLaneFromPoint()`

    - #### getLaneFromPoint

          public Lane getLaneFromPoint(java.lang.Integer x,
                                       java.lang.Integer y,
                                       CalendarView view)

      Returns the `Lane` at the passed co-ordinates. To get the lane under the mouse, pass null for both x and y.
      Parameters:
        `x` - the x offset into the body of the selected view
        `y` - the y offset into the body of the selected view. If this param and "x" are both unset, assumes both offsets from the last mouse event.
        `view` - the view to get the lane from - selected view if not passed
      Returns:
        the Lane at the passed co-ords in the passed or selected view

    - #### getLanePadding

          public java.lang.Integer getLanePadding()

      For views that support `lanes`, returns the padding to apply to events rendered in lanes in the passed or current view. By default, returns `laneEventPadding`.
      Returns:
        the padding to apply to events in lanes in the passed or current view

    - #### getLanePadding

          public java.lang.Integer getLanePadding(CalendarView view)

      For views that support `lanes`, returns the padding to apply to events rendered in lanes in the passed or current view. By default, returns `laneEventPadding`.
      Parameters:
        `view` - the view to get the lane padding for
      Returns:
        the padding to apply to events in lanes in the passed or current view

    - #### getMonthViewHoverHTML

          public java.lang.String getMonthViewHoverHTML(java.util.Date date,
                                                        CalendarEvent... events)

      This method returns the hover HTML to be displayed when the user hovers over a cell displayed in the calendar month view tab.

      Default implementation will display a list of the events occurring on the date the user is hovering over. Override for custom behavior. Note that returning null will suppress the hover altogether.

      Parameters:
        `date` - Date the user is hovering over
        `events` - array of events occurring on the current date. May be empty.
      Returns:
        HTML string to display

    - #### getPeriodEndDate

          public java.util.Date getPeriodEndDate()

      Returns the end of the period selected in the passed, or current, calendar view. For the `month view`, and for the `week view` when not showing weekends, this will often be a different date than that returned by `getVisibleEndDate()`.
      Returns:
        period end date

    - #### getPeriodEndDate

          public java.util.Date getPeriodEndDate(CalendarView view)

      Returns the end of the period selected in the passed, or current, calendar view. For the `month view`, and for the `week view` when not showing weekends, this will often be a different date than that returned by `getVisibleEndDate()`.
      Parameters:
        `view` - the view to get the periodEndDate for, or current view if null
      Returns:
        period end date

    - #### getPeriodStartDate

          public java.util.Date getPeriodStartDate()

      Returns the start of the selected week or month depending on the current calendar view. For the month view, and for the week view when not showing weekends, this will often be a different date than that returned by `getVisibleStartDate()`.
      Returns:
        period start date

    - #### getPeriodStartDate

          public java.util.Date getPeriodStartDate(CalendarView view)

      Returns the start of the selected week or month depending on the current calendar view. For the month view, and for the week view when not showing weekends, this will often be a different date than that returned by `getVisibleStartDate()`.
      Parameters:
        `view` - the view to get the periodStartDate for, or current view if null
      Returns:
        period start date

    - #### getSelectedView

          public CalendarView getSelectedView()

      Returns the currently selected `view`.
      Returns:
        the currently selected view

    - #### getSublane

          public Lane getSublane(java.lang.String lane,
                                 java.lang.String sublane)

      Returns the `sublane` with the passed name, from the `lane` with the passed name, in the passed view.
      Parameters:
        `lane` - the name of the lane containing the sublane to return
        `sublane` - the name of the sublane to return
      Returns:
        the sublane with the passed name, or null if not found

    - #### getSublane

          public Lane getSublane(java.lang.String lane,
                                 java.lang.String sublane,
                                 CalendarView view)

      Returns the `sublane` with the passed name, from the `lane` with the passed name, in the passed view.
      Parameters:
        `lane` - the name of the lane containing the sublane to return
        `sublane` - the name of the sublane to return
        `view` - the view to get the sublane object from
      Returns:
        the sublane with the passed name, or null if not found

    - #### getSublaneEvents

          public CalendarEvent[] getSublaneEvents(Lane lane,
                                                  Lane sublane)

      For views that support `lanes` and allow `sublanes`, returns the array of events in the current dataset that apply to the passed lane and sublane in the passed or current view.
      Parameters:
        `lane` - lane object or name to get the events for
        `sublane` - sublane object or name to get the events for
      Returns:
        the list of events that apply to the passed sublane and view

    - #### getSublaneEvents

          public CalendarEvent[] getSublaneEvents(Lane lane,
                                                  Lane sublane,
                                                  CalendarView view)

      For views that support `lanes` and allow `sublanes`, returns the array of events in the current dataset that apply to the passed lane and sublane in the passed or current view.
      Parameters:
        `lane` - lane object or name to get the events for
        `sublane` - sublane object or name to get the events for
        `view` - the view in which the passed sublane lives - uses the selected view if unset
      Returns:
        the list of events that apply to the passed sublane and view

    - #### getSublaneFromPoint

          public Lane getSublaneFromPoint()

      Returns the `sublane` at the passed co-ordinates. To get the sublane under the mouse, pass null for both x and y.
      Returns:
        the sublane at the passed co-ords in the selected view

    - #### getSublaneFromPoint

          public Lane getSublaneFromPoint(java.lang.Integer x)

      See Also:
        `getSublaneFromPoint()`

    - #### getSublaneFromPoint

          public Lane getSublaneFromPoint(java.lang.Integer x,
                                          java.lang.Integer y)

      See Also:
        `getSublaneFromPoint()`

    - #### getSublaneFromPoint

          public Lane getSublaneFromPoint(java.lang.Integer x,
                                          java.lang.Integer y,
                                          CalendarView view)

      Returns the `sublane` at the passed co-ordinates. To get the sublane under the mouse, pass null for both x and y.
      Parameters:
        `x` - optional x offset into the body of the selected view
        `y` - optional y offset into the body of the selected view. If this param and "x" are both unset, assumes both offsets from the last mouse event.
        `view` - the view to get the sublane from - selected view if not passed
      Returns:
        the sublane at the passed co-ords in the selected view

    - #### getView

          public CalendarView getView(ViewName viewName)

      Returns the `view` with the passed `name`.
      Parameters:
        `viewName` - the name of the CalendarView to return
      Returns:
        the currently selected view

    - #### getVisibleEndDate

          public java.util.Date getVisibleEndDate()

      Returns the last visible date in the passed, or currently selected, calendar view.
      Returns:
        last visible date

    - #### getVisibleEndDate

          public java.util.Date getVisibleEndDate(CalendarView view)

      Returns the last visible date in the passed, or currently selected, calendar view.
      Parameters:
        `view` - the view to get the endDate for, or current view if null
      Returns:
        last visible date

    - #### getVisibleStartDate

          public java.util.Date getVisibleStartDate()

      Returns the first visible date in the passed, or currently selected, calendar view.
      Returns:
        first visible date

    - #### getVisibleStartDate

          public java.util.Date getVisibleStartDate(CalendarView view)

      Returns the first visible date in the passed, or currently selected, calendar view.
      Parameters:
        `view` - the view to get the startDate for, or current view if
      Returns:
        first visible date

    - #### getZoneCanvasStyle

          public java.lang.String getZoneCanvasStyle(CalendarEvent zone)

      Returns the `styleName` to use for the passed `zone`, in the passed `view`. By default, returns the style `on the zone`, if one is specified, or the style specified on the `calendar` otherwise.
      Parameters:
        `zone` - the zone to get the CSS style for
      Returns:

    - #### getZoneCanvasStyle

          public java.lang.String getZoneCanvasStyle(CalendarEvent zone,
                                                     CalendarView view)

      Returns the `styleName` to use for the passed `zone`, in the passed `view`. By default, returns the style `on the zone`, if one is specified, or the style specified on the `calendar` otherwise.
      Parameters:
        `zone` - the zone to get the CSS style for
        `view` - the CalendarView that contains the canvas being styled
      Returns:

    - #### getZoneHoverHTML

          public java.lang.String getZoneHoverHTML(CalendarEvent zone,
                                                   ZoneCanvas zoneCanvas,
                                                   CalendarView view,
                                                   java.lang.String defaultValue)

      Gets the hover HTML for a `zone` being hovered over. Override here to return custom HTML based upon the parameter zone object.
      Parameters:
        `zone` - The zone being hovered over
        `zoneCanvas` - the zone canvas being hovered over
        `view` - the CalendarView in which the zoneCanvas is displayed
        `defaultValue` - the default HTML to show when hovering over the passed Zone
      Returns:
        the HTML to show in the hover

    - #### groupLanesBy

          public void groupLanesBy(java.lang.String groupFieldName)

      When `canGroupLanes` is true, this method allows the grouping in `timeline`s to be altered at runtime.
      Parameters:
        `groupFieldName` - one or more field names to group by

    - #### groupLanesBy

          public void groupLanesBy(java.lang.String... groupFieldName)

      When `canGroupLanes` is true, this method allows the grouping in `timeline`s to be altered at runtime.
      Parameters:
        `groupFieldName` - one or more field names to group by

    - #### moveToEvent

          public void moveToEvent(CalendarEvent event)

      Rests the current visible range of a calendar view so that it shows the date on which the passed event occurs.
      Parameters:
        `event` - the event to move the calendar view to

    - #### next

          public void next()

      Move to the next day, week, or month, depending on which tab is selected.

    - #### previous

          public void previous()

      Move to the previous day, week, month, or timeline range depending on which tab is selected.

    - #### refreshEvent

          public void refreshEvent(CalendarEvent event)

      Refreshes the passed event in the current view.
      Parameters:
        `event` - The event object to refresh in the current view

    - #### removeIndicator

          public void removeIndicator(CalendarEvent indicator)

      Removes a `indicator` from the calendar.

      Accepts either a `indicator object` or a string that represents the `name` of anindicator.

      Parameters:
        `indicator` - either the actual CalendarEvent representing the indicator, or the name of the indicator to remove

    - #### removeIndicator

          public void removeIndicator(java.lang.String indicator)

      Removes a `indicator` from the calendar.

      Accepts either a `indicator object` or a string that represents the `name` of anindicator.

      Parameters:
        `indicator` - either the actual CalendarEvent representing the indicator, or the name of the indicator to remove

    - #### removeZone

          public void removeZone(CalendarEvent zone)

      Removes a `zone` from the calendar.

      Accepts either a `zone object` or a string that represents the `name` of a zone.

      Parameters:
        `zone` - either the actual CalendarEvent representing the zone, or the name of the zone to remove

    - #### removeZone

          public void removeZone(java.lang.String zone)

      Removes a `zone` from the calendar.

      Accepts either a `zone object` or a string that represents the `name` of a zone.

      Parameters:
        `zone` - either the actual CalendarEvent representing the zone, or the name of the zone to remove

    - #### scrollToTime

          public void scrollToTime(java.lang.String time)

      Scroll the calendar Day or Week views to the specified time.
      Parameters:
        `time` - any parsable time-string

    - #### selectTab

          public void selectTab(int tabnum)

      Selects the calendar view in the passed tab number.
      Parameters:
        `tabnum` - the index of the tab to select

    - #### setEventStyle

          public void setEventStyle(CalendarEvent event,
                                    java.lang.String styleName)

      Update the styleName for the passed event. Refreshes the event's canvas in the current view.
      Parameters:
        `event` - The event object to refresh in the current view
        `styleName` - The new CSS style to apply to the canvases showing this event. See `CSSStyleName`

    - #### setResolution

          public void setResolution(HeaderLevel[] headerLevels,
                                    TimeUnit unit,
                                    java.lang.Integer unitCount)

      Reset the resolution, the header levels and scrollable range, of the timeline view.

      `headerLevels` specifies the array of `headers` to show above the timeline, and the `unit` and `unitCount` parameters dictate the scrollable range (eg, passing "week" and 6 will create a timeline with a scrollable range of six weeks, irrespective of the number of columns that requires, according to the `granularity`).

      If the optional `granularityPerColumn` parameter is passed, each column will span that number of units of the granularity, which is determined from the unit of the innermost of the passed headerLevels. For example, to show a span of 12 hours with inner columns that each span 15 minutes, you could pass "hour" and "minute" -based headerLevels, unit and unitCount values of "hour" and 12 respectively, and granularityPerColumn of 15.

      Parameters:
        `headerLevels` - the header levels to show in the timeline
        `unit` - the time unit to use when calculating the range of the timeline
        `unitCount` - the count of the passed unit that the timeline should span

    - #### setResolution

          public void setResolution(HeaderLevel[] headerLevels,
                                    TimeUnit unit,
                                    java.lang.Integer unitCount,
                                    java.lang.Integer granularityPerColumn)

      Reset the resolution, the header levels and scrollable range, of the timeline view.

      `headerLevels` specifies the array of `headers` to show above the timeline, and the `unit` and `unitCount` parameters dictate the scrollable range (eg, passing "week" and 6 will create a timeline with a scrollable range of six weeks, irrespective of the number of columns that requires, according to the `granularity`).

      If the optional `granularityPerColumn` parameter is passed, each column will span that number of units of the granularity, which is determined from the unit of the innermost of the passed headerLevels. For example, to show a span of 12 hours with inner columns that each span 15 minutes, you could pass "hour" and "minute" -based headerLevels, unit and unitCount values of "hour" and 12 respectively, and granularityPerColumn of 15.

      Parameters:
        `headerLevels` - the header levels to show in the timeline
        `unit` - the time unit to use when calculating the range of the timeline
        `unitCount` - the count of the passed unit that the timeline should span
        `granularityPerColumn` - how many units of the granularity (the unit of the innermost headerLevel) should each column span? The default is 1.

    - #### setTimelineRange

          public void setTimelineRange(java.util.Date start)

      Sets the range over which the timeline will display events.

      If the `end` parameter is not passed, the end date of the range will default to `20` columns of the current `granularity` following the start date.

      Parameters:
        `start` - start of range

    - #### setTimelineRange

          public void setTimelineRange(java.util.Date start,
                                       java.util.Date end)

      Sets the range over which the timeline will display events.

      If the `end` parameter is not passed, the end date of the range will default to `20` columns of the current `granularity` following the start date.

      Parameters:
        `start` - start of range
        `end` - end of range

    - #### shouldDisableDate

          public boolean shouldDisableDate(java.util.Date date)

      Returns true if the passed date should be considered disabled. Disabled dates don't allow events to be created by clicking on them, and drag operations that would start or end on such dates are also disallowed.

      The default implementation returns false only for dates that fall on a `weekend`.

      Parameters:
        `date` - a Date instance
      Returns:
        true if this date should be considered disabled

    - #### shouldDisableDate

          public boolean shouldDisableDate(java.util.Date date,
                                           CalendarView view)

      Returns true if the passed date should be considered disabled. Disabled dates don't allow events to be created by clicking on them, and drag operations that would start or end on such dates are also disallowed.

      The default implementation returns false only for dates that fall on a `weekend`.

      Parameters:
        `date` - a Date instance
        `view` - the view the date appears in
      Returns:
        true if this date should be considered disabled

    - #### shouldShowDate

          public boolean shouldShowDate(java.util.Date date)

      Indicates whether the passed date should be visible in the passed `CalendarView`.

      The default implementation returns true, unless the date falls on a `weekend` and `showWeekends` is false.

      Parameters:
        `date` - a Date instance
      Returns:
        true if this date should be considered disabled

    - #### shouldShowDate

          public boolean shouldShowDate(java.util.Date date,
                                        CalendarView view)

      Indicates whether the passed date should be visible in the passed `CalendarView`.

      The default implementation returns true, unless the date falls on a `weekend` and `showWeekends` is false.

      Parameters:
        `date` - a Date instance
        `view` - the view the date appears in
      Returns:
        true if this date should be considered disabled

    - #### shouldShowEvent

          public boolean shouldShowEvent(CalendarEvent event)

      Indicates whether the passed `event` should be visible in the passed `CalendarView`.

      The default implementation returns true - note that this method only runs for events that are known to be in the accessible range and is a mechanism for extended custom filtering.

      Parameters:
        `event` - the event to check
      Returns:
        true if this event should be displayed in the passed view

    - #### shouldShowEvent

          public boolean shouldShowEvent(CalendarEvent event,
                                         CalendarView view)

      Indicates whether the passed `event` should be visible in the passed `CalendarView`.

      The default implementation returns true - note that this method only runs for events that are known to be in the accessible range and is a mechanism for extended custom filtering.

      Parameters:
        `event` - the event to check
        `view` - the view the event will be rendered in
      Returns:
        true if this event should be displayed in the passed view

    - #### shouldShowLane

          public boolean shouldShowLane(Lane lane)

      Indicates whether the passed `lane` should be visible in the passed `CalendarView`.

      The default implementation returns true, unless the lane has no events and `hideUnusedLanes` is true.

      Parameters:
        `lane` - the lane object or name
      Returns:
        true if this lane should be displayed in the passed view

    - #### shouldShowLane

          public boolean shouldShowLane(java.lang.String lane)

      Indicates whether the passed `lane` should be visible in the passed `CalendarView`.

      The default implementation returns true, unless the lane has no events and `hideUnusedLanes` is true.

      Parameters:
        `lane` - the lane object or name
      Returns:
        true if this lane should be displayed in the passed view

    - #### shouldShowLane

          public boolean shouldShowLane(Lane lane,
                                        CalendarView view)

      Indicates whether the passed `lane` should be visible in the passed `CalendarView`.

      The default implementation returns true, unless the lane has no events and `hideUnusedLanes` is true.

      Parameters:
        `lane` - the lane object or name
        `view` - the view the lane appears in
      Returns:
        true if this lane should be displayed in the passed view

    - #### showEventDialog

          public void showEventDialog()

      Open the Quick Event dialog showing minimal information about an existing `event`.

      The `startDate` field on the event is used to calculate the display location for the dialog.

      If this method is called when the Event Dialog is already showing another event, and if changes have been made, a confirmation dialog is displayed and editing of the new event is cancelled unless confirmed.

      You can override this method to prevent the default action, perhaps instead showing a custom interface that performs validations or gathers custom data before making a call to `addCalendarEvent` or `updateCalendarEvent` when the new data is available.

    - #### showEventDialog

          public void showEventDialog(CalendarEvent event)

      See Also:
        `showEventDialog()`

    - #### showEventDialog

          public void showEventDialog(CalendarEvent event,
                                      java.lang.Boolean isNewEvent)

      Open the Quick Event dialog showing minimal information about an existing `event`.

      The `startDate` field on the event is used to calculate the display location for the dialog.

      If this method is called when the Event Dialog is already showing another event, and if changes have been made, a confirmation dialog is displayed and editing of the new event is cancelled unless confirmed.

      You can override this method to prevent the default action, perhaps instead showing a custom interface that performs validations or gathers custom data before making a call to `addCalendarEvent` or `updateCalendarEvent` when the new data is available.

      Parameters:
        `event` - the event to show in the Editor
        `isNewEvent` - optional boolean indicating that this is a new event, event if an event is passed - used to pass defaults for a new event

    - #### showEventEditor

          public void showEventEditor()

      Show an Event Editor for the passed event. Event Editor's fill the Calendar and allow for editing of the built-in Event fields, like `name` and `description`, as well as any custom fields supplied via `eventEditorFields`.

      If isNewEvent is true, a new event is created - in this case, if an event is passed, it represents default values to apply to the new event.

      You can override this method to prevent the default action, perhaps instead showing a custom interface that performs validations or gathers custom data before making a call to `addCalendarEvent` or `updateCalendarEvent` when the new data is available.

    - #### showEventEditor

          public void showEventEditor(CalendarEvent event)

      See Also:
        `showEventEditor()`

    - #### showEventEditor

          public void showEventEditor(CalendarEvent event,
                                      java.lang.Boolean isNewEvent)

      Show an Event Editor for the passed event. Event Editor's fill the Calendar and allow for editing of the built-in Event fields, like `name` and `description`, as well as any custom fields supplied via `eventEditorFields`.

      If isNewEvent is true, a new event is created - in this case, if an event is passed, it represents default values to apply to the new event.

      You can override this method to prevent the default action, perhaps instead showing a custom interface that performs validations or gathers custom data before making a call to `addCalendarEvent` or `updateCalendarEvent` when the new data is available.

      Parameters:
        `event` - an existing event to show in the Editor
        `isNewEvent` - optional boolean indicating that this is a new event, even if an event is passed - used to pass defaults for a new event

    - #### showNewEventDialog

          public void showNewEventDialog()

      Open the Quick Event dialog to begin editing a new `event`.

      If passed, the event parameter is used as defaults for the new event - in addition, the event's `startDate`, and its `lane`, for timeline events, are used to calculate the display location for the dialog.

      If this method is called when the Event Dialog is already showing another event, and if changes have been made, a confirmation dialog is displayed and editing of the new event is cancelled unless confirmed.

      You can override this method to prevent the default action, perhaps instead showing a custom interface that performs validations or gathers custom data before making a call to `addCalendarEvent` or `updateCalendarEvent` when the new data is available.

    - #### showNewEventDialog

          public void showNewEventDialog(CalendarEvent event)

      Open the Quick Event dialog to begin editing a new `event`.

      If passed, the event parameter is used as defaults for the new event - in addition, the event's `startDate`, and its `lane`, for timeline events, are used to calculate the display location for the dialog.

      If this method is called when the Event Dialog is already showing another event, and if changes have been made, a confirmation dialog is displayed and editing of the new event is cancelled unless confirmed.

      You can override this method to prevent the default action, perhaps instead showing a custom interface that performs validations or gathers custom data before making a call to `addCalendarEvent` or `updateCalendarEvent` when the new data is available.

      Parameters:
        `event` - defaults for the new event

    - #### showNewEventEditor

          public void showNewEventEditor()

      Show an Event Editor for a new event. If an `event` is passed as the parameter, it is used as defaults for the new event.

    - #### showNewEventEditor

          public void showNewEventEditor(CalendarEvent event)

      Show an Event Editor for a new event. If an `event` is passed as the parameter, it is used as defaults for the new event.
      Parameters:
        `event` - defaults for the new event to show in the Editor

    - #### addTimelineEventMovedHandler

          public com.google.gwt.event.shared.HandlerRegistration addTimelineEventMovedHandler(TimelineEventMovedHandler handler)

      Deprecated. Please use addEventReposition[Move/Stop]Handler instead, this will be removed in a future release.
      Add a timelineEventMoved handler.

      Called when a Timeline event is moved via dragging by a user. Call `TimelineEventMoved.cancel()` from within `TimelineEventMovedHandler.onTimelineEventMoved(com.smartgwt.client.widgets.calendar.events.TimelineEventMoved)` to disallow the move.

      Specified by:
        `addTimelineEventMovedHandler` in interface `HasTimelineEventMovedHandlers`
      Parameters:
        `handler` - the timelineEventMoved handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addTimelineEventResizedHandler

          public com.google.gwt.event.shared.HandlerRegistration addTimelineEventResizedHandler(TimelineEventResizedHandler handler)

      Deprecated. Please use addEventResize[Move/Stop]Handler instead, this will be removed in a future release.
      Add a timelineEventResized handler.

      Called when a Timeline event is resized via dragging by a user. Call `TimelineEventResized.cancel()` from within `TimelineEventResizedHandler.onTimelineEventResized(com.smartgwt.client.widgets.calendar.events.TimelineEventResized)` to disallow the resize.

      Specified by:
        `addTimelineEventResizedHandler` in interface `HasTimelineEventResizedHandlers`
      Parameters:
        `handler` - the timelineEventResized handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### updateCalendarEvent

          public void updateCalendarEvent(CalendarEvent event,
                                          CalendarEvent newEvent,
                                          java.util.Map otherFields)

      Update an event in this calendar.
      Parameters:
        `event` - The event object that will be updated
        `newEvent` - The new attributes for the event
        `otherFields` - new values of additional fields to be updated

    - #### setDefaultProperties

          public static void setDefaultProperties(Calendar calendarProperties)

      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

      Parameters:
        `calendarProperties` - properties that should be used as new defaults when instances of this class are created
      See Also:
        `SGWTProperties`

    - #### onInit

          protected void onInit()

      Overrides:
        `onInit` in class `Canvas`

    - #### onInit_Calendar

          protected void onInit_Calendar()

    - #### setWorkdayEnd

          public void setWorkdayEnd(java.lang.String workdayEnd)
                             throws java.lang.IllegalStateException

      When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.

      Both start and end time must fall on a 30 minute increment (eg 9:30, but not 9:45).

      The hours of the workday can be customized for particular dates by providing implementations of `Calendar.getWorkdayStart` and `Calendar.getWorkdayEnd`.

      Parameters:
        `workdayEnd` - Default value is "5:00pm"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getWorkdayEnd

          public java.lang.String getWorkdayEnd(java.util.Date date)

      When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.

      Both start and end time must fall on a 30 minute increment (eg 9:30, but not 9:45).

      The hours of the workday can be customized for particular dates by providing implementations of `Calendar.getWorkdayStart` and `Calendar.getWorkdayEnd`.

      Parameters:
        `date` - the date to get the workday end for
      Returns:
        Returns the end of the working day on the passed date. By default, this method returns the value of `workdayEnd`.

    - #### setWorkdayStart

          public void setWorkdayStart(java.lang.String workdayStart)
                               throws java.lang.IllegalStateException

      When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.

      Both start and end time must fall on a 30 minute increment (eg 9:30, but not 9:45).

      The hours of the workday can be customized for particular dates by providing implementations of `Calendar.getWorkdayStart` and `Calendar.getWorkdayEnd`.

      Parameters:
        `workdayStart` - Default value is "9:00am"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getWorkdayStart

          public java.lang.String getWorkdayStart(java.util.Date date)

      When using `showWorkday`:true, `workdayStart` and `workdayEnd` specify the time of day when the workday starts and ends, specified as a String acceptable to String.

      Both start and end time must fall on a 30 minute increment (eg 9:30, but not 9:45).

      The hours of the workday can be customized for particular dates by providing implementations of `Calendar.getWorkdayStart` and `Calendar.getWorkdayEnd`.

      Parameters:
        `date` - the date to get the workday start for
      Returns:
        Returns the start of the working day on the passed date. By default, this method returns the value of `workdayStart`.

    - #### dateIsWorkday

          public boolean dateIsWorkday(java.util.Date date)

      Should the parameter date be considered a workday? By default this method tries to find the parameter date day in `workdays`, and returns true if found. Override this method to provide custom logic for determining workday, for example returning false on holidays.
      Parameters:
        `date` - the date being tested
      Returns:
        Returns true if the date passed should be considered a workday

    - #### getDayBodyHTML

          protected java.lang.String getDayBodyHTML(java.util.Date date,
                                                    CalendarEvent[] events,
                                                    Calendar calendar,
                                                    int rowNum,
                                                    int colNum)

      Return the HTML to be shown in the body of a day in the month view.

      Default is to render a series of links that call `Calendar.eventClick` to provide details and/or an editing interface for the events.

      `getDayBodyHTML()` is not called for days outside of the current month if `showOtherDays` is false.

      Parameters:
        `date` - JavaScript Date object representing this day
        `events` - events that fall on this day
        `calendar` - the calendar itself
        `rowNum` - the row number to which the parameter date belongs
        `colNum` - the column number to which the parameter date belongs
      Returns:
        HTML to display

    - #### getDateLabelText

          public java.lang.String getDateLabelText(java.lang.String viewName,
                                                   java.util.Date startDate,
                                                   java.util.Date endDate)

      Returns the text to display with the navigation buttons above the Calendar - indicates the visible date range.

      Note: This is an override point.

      Parameters:
        `viewName` - one of "day", "week", "month" or "timeline"
        `startDate` - the start of the visible date range
        `endDate` - the optional end of the visible date range. May be null.
      Returns:
        a formmatted date or date-range string appropriate to the passed view

    - #### setEventEditorCustomizer

          public void setEventEditorCustomizer(EventEditorCustomizer customizer)

      Customizer called whenever the Calender needs to show an EventEditor, to edit or create a CalendarEvent
      Parameters:
        `customizer` - the customizer to execute.

    - #### setEventDialogCustomizer

          public void setEventDialogCustomizer(EventDialogCustomizer customizer)

      Customizer called whenever the Calender needs to show an EventDialog, to edit or view a CalendarEvent
      Parameters:
        `customizer` - the customizer to execute.

    - #### setEventHeaderHTMLCustomizer

          public void setEventHeaderHTMLCustomizer(EventHeaderHTMLCustomizer customizer)

      This method returns the HTML to be used as the header/title for the passed event.
      Parameters:
        `customizer` - the customizer to execute.

    - #### setEventBodyHTMLCustomizer

          public void setEventBodyHTMLCustomizer(EventBodyHTMLCustomizer customizer)

      This method installs a customizer that returns the HTML to be used as the body/description for the passed event.
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDateStyleCustomizer

          public void setDateStyleCustomizer(DateStyleCustomizer customizer)

      This method installs a customizer that returns the CSS class name for the passed date-cell when rendered in the passed view
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDateHeaderCustomizer

          public void setDateHeaderCustomizer(DateHeaderCustomizer customizer)

      This method installs a customizer to determine the HTML to be displayed in the header for a given date column in a CalendarView
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDateHTMLCustomizer

          public void setDateHTMLCustomizer(DateHTMLCustomizer customizer)

      This method installs a customizer that returns the HTML to display in the passed date-cell when rendered in the passed view
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDateCellAlignCustomizer

          public void setDateCellAlignCustomizer(DateCellAlignCustomizer customizer)

      This method installs a customizer that returns the horizontsal Alignment to display in the passed date-cell when rendered in the passed view
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDateCellVAlignCustomizer

          public void setDateCellVAlignCustomizer(DateCellVAlignCustomizer customizer)

      This method installs a customizer that returns the VerticalAlignment to display in the passed date-cell when rendered in the passed view
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDateCSSTextCustomizer

          public void setDateCSSTextCustomizer(DateCSSTextCustomizer customizer)

      This method returns the CSS class name for the passed event when rendered in the passed view
      Parameters:
        `customizer` - the customizer to execute.

    - #### setDisableDateCustomizer

          public void setDisableDateCustomizer(DisableDateCustomizer customizer)

      Return true from the customizer to have the passed event considered disabled in the passed view
      Parameters:
        `customizer` - the customizer to execute.

    - #### setShowDateCustomizer

          public void setShowDateCustomizer(ShowDateCustomizer customizer)

      This method is called during rendering for all events in the visible range - those which would be rendered by default. The customizer should return false to prevent the passed date from appearing in the passed view.
      Parameters:
        `customizer` - the customizer to execute.

    - #### setShowLaneCustomizer

          public void setShowLaneCustomizer(ShowLaneCustomizer customizer)

      Return false from the customizer to prevent the passed Lane from being rendered in the passed view.
      Parameters:
        `customizer` - the customizer to execute.

    - #### setShowEventCustomizer

          public void setShowEventCustomizer(ShowEventCustomizer customizer)

      Return false from the customizer to prevent the passed CalendarEvent from being rendered in the passed view.
      Parameters:
        `customizer` - the customizer to execute.

    - #### setEventHoverHTMLCustomizer

          public void setEventHoverHTMLCustomizer(EventHoverHTMLCustomizer eventHoverHTMLCustomizer)

      This method returns the hover HTML to be displayed when the user hovers over an event
      Parameters:
        `eventHoverHTMLCustomizer` - the customizer to execute.

    - #### setEventCanvasHoverHTMLCustomizer

          public void setEventCanvasHoverHTMLCustomizer(EventCanvasHoverHTMLCustomizer customizer)

      This method returns the hover HTML to be displayed when the user hovers over an eventCanvas
      Parameters:
        `customizer` - the customizer to execute.

    - #### setZoneHoverHTMLCustomizer

          public void setZoneHoverHTMLCustomizer(ZoneHoverHTMLCustomizer zoneHoverHTMLCustomizer)

      This method returns the hover HTML to be displayed when the user hovers over an ZoneCanvas
      Parameters:
        `zoneHoverHTMLCustomizer` - the customizer to execute.

    - #### setIndicatorHoverHTMLCustomizer

          public void setIndicatorHoverHTMLCustomizer(IndicatorHoverHTMLCustomizer indicatorHoverHTMLCustomizer)

      This method returns the hover HTML to be displayed when the user hovers over an IndicatorCanvas
      Parameters:
        `indicatorHoverHTMLCustomizer` - the customizer to execute.

    - #### setMonthViewHoverHTMLCustomizer

          public void setMonthViewHoverHTMLCustomizer(MonthViewHoverHTMLCustomizer monthViewHoverHTMLCustomizer)

      This method returns the hover HTML to be displayed when the user hovers over a cell displayed in the calendar month view tab.

      Default implementation will display a list of the events occurring on the date the user is hovering over. Override for custom behavior. Note that returning null will suppress the hover altogether.

      Parameters:
        `monthViewHoverHTMLCustomizer` - the customizer to execute.

    - #### setHeaderHoverCustomizer

          public void setHeaderHoverCustomizer(HeaderLevelHoverCustomizer customizer)

      Customize the Hover text for a given span in a HeaderLevel.
      Parameters:
        `customizer` - HeaderLevelHoverCustomizer the customizer

    - #### setDragHoverCustomizer

          public void setDragHoverCustomizer(DragHoverCustomizer customizer)

      Customize the Hover text to display during a drag operation
      Parameters:
        `customizer` - DragHoverCustomizer the customizer

    - #### setCellHoverCustomizer

          public void setCellHoverCustomizer(CellHoverCustomizer customizer)

      Customize the Hover text to display when the mouse hovers over cells in a CalendarView
      Parameters:
        `customizer` - CellHoverCustomizer the customizer

    - #### setEventCanvasGripperIconCustomizer

          public void setEventCanvasGripperIconCustomizer(EventCanvasGripperIconCustomizer customizer)

      This method returns the SCImgURL for the icon to use as the gripper for a given EventCanvas
      Parameters:
        `customizer` - the customizer to execute.

    - #### setLaneGroupStartOpen

          public void setLaneGroupStartOpen(GroupStartOpen group)

    - #### setLaneGroupStartOpen

          public void setLaneGroupStartOpen(java.lang.Object... groupValues)

      Parameters:
        `groupValues` - Array of values that should be opened

    - #### setEventEditorFields

          public void setEventEditorFields(FormItem... eventEditorFields)
                                    throws java.lang.IllegalStateException

      The set of fields for the `eventEditor`.

      The default set of fields are:

              {name: "startHours", title: "From", type: "select", width: 60},
           {name: "startMinutes", showTitle: false, type: "select", width: 60},    {name: "startAMPM", showTitle: false,
           type: "select", width: 60},    {name: "invalidDate", type: "blurb", colSpan: 4, visible: false}    {name:
           "endHours", title: "To", type: "select", width: 60},    {name: "endMinutes", showTitle: false, type: "select",
           width: 60},    {name: "endAMPM", showTitle: false, type: "select", width: 60},    {name: "name", title: "Name",
           type: "text", colSpan: 4},    {name: "description", title: "Description", type: "textArea", colSpan: 4, height:
           50}

      See the Customized Binding example below for more information on altering default datasource fields within forms.
      Parameters:
        `eventEditorFields` - eventEditorFields Default value is see below
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### setEventDialogFields

          public void setEventDialogFields(FormItem... eventDialogFields)
                                    throws java.lang.IllegalStateException

      The set of fields for the `eventDialog`.

      The default set of fields are:

              {name: "name", title: "Event Name", type: nameType, width: 250 },
           {name: "save", title: "Save Event", type: "SubmitItem", endRow: false},    {name: "details", title: "Edit
           Details", type: "button", startRow: false}

      See the Customized Binding example below for more information on altering default datasource fields within forms.
      Parameters:
        `eventDialogFields` - eventDialogFields Default value is see below
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### setData

          public void setData(Record[] data)

      An array of Record objects, specifying the data to be used to populate the DataBoundComponent. Note that not all DataBoundComponents observe the changes to the data to redraw themselves. Refer to the version of setData that accepts component specific records.
      Parameters:
        `data` - array of Record objects.
      See Also:
        `setData(CalendarEvent[])`

    - #### setData

          public void setData(RecordList data)

      An List of Record objects, specifying the data to be used to populate the DataBoundComponent. Note that not all DataBoundComponents observe the changes to the data to redraw themselves. Refer to the version of setData that accepts component specific records.
      Parameters:
        `data` - List of Records

    - #### setTimeFormatter

          public void setTimeFormatter(TimeFormatter timeFormatter)

      Deprecated. use `setTimeFormatter(TimeDisplayFormat)` instead.
      Display format to use for the time portion of events' date information.
      Parameters:
        `timeFormatter` - timeFormatter Default value is "toShortPaddedTime"

    - #### setTimeFormatter

          public void setTimeFormatter(TimeDisplayFormat timeFormatter)

      Display format to use for the time portion of events' date information.
      Parameters:
        `timeFormatter` - timeFormatter Default value is "toShortPaddedTime"

    - #### getTimeFormatter

          public TimeDisplayFormat getTimeFormatter()

      Display format to use for the time portion of events' date information.
      Returns:
        TimeDisplayFormat

    - #### removeLane

          public void removeLane(Lane lane)

      Removes a lane from the calendar in `timelineView` mode.
      Parameters:
        `lane` - the lane to remove

    - #### removeLane

          public void removeLane(java.lang.String laneName)

      Removes a lane from the calendar in `timelineView` mode.
      Parameters:
        `laneName` - the name of the lane to remove

    - #### addEvent

          public void addEvent(java.util.Date startDate,
                               java.util.Date endDate,
                               java.lang.String name,
                               java.lang.String description)

      Create a new event in this calendar instance.
      Parameters:
        `startDate` - start date of event
        `endDate` - end date of event
        `name` - name of event
        `description` - description of event

    - #### addEvent

          public void addEvent(java.util.Date startDate,
                               java.util.Date endDate,
                               java.lang.String name,
                               java.lang.String description,
                               java.util.Map otherFields)

      Create a new event in this calendar instance.
      Parameters:
        `startDate` - start date of event
        `endDate` - end date of event
        `name` - name of event
        `description` - description of event
        `otherFields` - new values of additional fields to be updated

    - #### removeEvent

          public void removeEvent(CalendarEvent event)

      Remove an event from this calendar.
      Parameters:
        `event` - The event object to remove from the calendar

    - #### updateEvent

          public void updateEvent(CalendarEvent event,
                                  java.util.Date startDate,
                                  java.util.Date endDate,
                                  java.lang.String name,
                                  java.lang.String description)

      update an event in this calendar.
      Parameters:
        `event` - The event object to remove from the calendar
        `startDate` - start date of event
        `endDate` - end date of event
        `name` - name of event
        `description` - description of event

    - #### setShowDayView

          public void setShowDayView(java.lang.Boolean showDayView)
                              throws java.lang.IllegalStateException

      Throws:
        `java.lang.IllegalStateException`

    - #### setShowWeekView

          public void setShowWeekView(java.lang.Boolean showWeekView)
                               throws java.lang.IllegalStateException

      Throws:
        `java.lang.IllegalStateException`

    - #### setShowMonthView

          public void setShowMonthView(java.lang.Boolean showMonthView)
                                throws java.lang.IllegalStateException

      Throws:
        `java.lang.IllegalStateException`

    - #### setWorkdays

          public void setWorkdays(int[] workdays)
                           throws java.lang.IllegalStateException

      Array of days that are considered workdays when `showWorkday` is true
      Parameters:
        `workdays` - workdays Default value is [1,2,3,4,5]
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### calendarLoaded

          public static boolean calendarLoaded()

      Static method indicating whether the optional Calendar module is loaded for the page. The Calendar component requires this module.
      Returns:
        true if the Calendar module is present

    - #### setDataPageSize

          public void setDataPageSize(int dataPageSize)

      Description copied from interface: `DataBoundComponent`
      When using `data paging`, how many records to fetch at a time. If set to a positive integer, `dataPageSize` will override the default `resultSize` for ResultSets automatically created when you call `fetchData()` (and similarly for the `resultSize` of ResultTrees). The default of 0 means to just use the default page size of the data container.

      Note that regardless of the `dataPageSize` setting, a component will always fetch all of data that it needs to draw. Settings such as `showAllRecords:true`, `drawAllMaxCells` and `drawAheadRatio` can cause more rows than the configured `dataPageSize` to be fetched.

      Specified by:
        `setDataPageSize` in interface `DataBoundComponent`
      Parameters:
        `dataPageSize` - dataPageSize Default value is 0
      See Also:
        `Databinding overview and related methods`

    - #### getDataPageSize

          public int getDataPageSize()

      Description copied from interface: `DataBoundComponent`
      When using `data paging`, how many records to fetch at a time. If set to a positive integer, `dataPageSize` will override the default `resultSize` for ResultSets automatically created when you call `fetchData()` (and similarly for the `resultSize` of ResultTrees). The default of 0 means to just use the default page size of the data container.

      Note that regardless of the `dataPageSize` setting, a component will always fetch all of data that it needs to draw. Settings such as `showAllRecords:true`, `drawAllMaxCells` and `drawAheadRatio` can cause more rows than the configured `dataPageSize` to be fetched.

      Specified by:
        `getDataPageSize` in interface `DataBoundComponent`
      Returns:
        int
      See Also:
        `Databinding overview and related methods`

    - #### setUseAllDataSourceFields

          public void setUseAllDataSourceFields(java.lang.Boolean useAllDataSourceFields)

      Description copied from interface: `DataBoundComponent`
      If true, the set of fields given by the "default binding" (see `fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.

      If `component.fields` contains fields that are not found in the DataSource, they will be shown after the most recently referred to DataSource field. If the new fields appear first, they will be shown first.

      Specified by:
        `setUseAllDataSourceFields` in interface `DataBoundComponent`
      Parameters:
        `useAllDataSourceFields` - useAllDataSourceFields Default value is false

    - #### getUseAllDataSourceFields

          public java.lang.Boolean getUseAllDataSourceFields()

      Description copied from interface: `DataBoundComponent`
      If true, the set of fields given by the "default binding" (see `fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.

      If `component.fields` contains fields that are not found in the DataSource, they will be shown after the most recently referred to DataSource field. If the new fields appear first, they will be shown first.

      Specified by:
        `getUseAllDataSourceFields` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setShowHiddenFields

          public void setShowHiddenFields(java.lang.Boolean showHiddenFields)

      Description copied from interface: `DataBoundComponent`
      Whether to show fields marked `hidden:true` when a DataBoundComponent is given a DataSource but no `component.fields`.

      The `hidden` property is used on DataSource fields to mark fields that are never of meaning to an end user.

      Specified by:
        `setShowHiddenFields` in interface `DataBoundComponent`
      Parameters:
        `showHiddenFields` - showHiddenFields Default value is false

    - #### getShowHiddenFields

          public java.lang.Boolean getShowHiddenFields()

      Description copied from interface: `DataBoundComponent`
      Whether to show fields marked `hidden:true` when a DataBoundComponent is given a DataSource but no `component.fields`.

      The `hidden` property is used on DataSource fields to mark fields that are never of meaning to an end user.

      Specified by:
        `getShowHiddenFields` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setShowComplexFields

          public void setShowComplexFields(java.lang.Boolean showComplexFields)

      Description copied from interface: `DataBoundComponent`
      Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no `component.fields`.

      If true, the component will show fields that declare a complex type, for example, a field 'shippingAddress' that declares type 'Address', where 'Address' is the ID of a DataSource that declares the fields of a shipping address (city, street name, etc).

      Such fields may need custom formatters or editors in order to create a usable interface, for example, an Address field in a ListGrid might use a custom formatter to combine the relevant fields of an address into one column, and might use a pop-up dialog for editing.

      Note : This is an advanced setting

      Specified by:
        `setShowComplexFields` in interface `DataBoundComponent`
      Parameters:
        `showComplexFields` - showComplexFields Default value is true

    - #### getShowComplexFields

          public java.lang.Boolean getShowComplexFields()

      Description copied from interface: `DataBoundComponent`
      Whether to show fields of non-atomic types when a DataBoundComponent is given a DataSource but no `component.fields`.

      If true, the component will show fields that declare a complex type, for example, a field 'shippingAddress' that declares type 'Address', where 'Address' is the ID of a DataSource that declares the fields of a shipping address (city, street name, etc).

      Such fields may need custom formatters or editors in order to create a usable interface, for example, an Address field in a ListGrid might use a custom formatter to combine the relevant fields of an address into one column, and might use a pop-up dialog for editing.

      Specified by:
        `getShowComplexFields` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setFetchOperation

          public void setFetchOperation(java.lang.String fetchOperation)

      Description copied from interface: `DataBoundComponent`
      Operation ID this component should use when performing fetch operations.
      Specified by:
        `setFetchOperation` in interface `DataBoundComponent`
      Parameters:
        `fetchOperation` - fetchOperation Default value is null

    - #### getFetchOperation

          public java.lang.String getFetchOperation()

      Description copied from interface: `DataBoundComponent`
      Operation ID this component should use when performing fetch operations.
      Specified by:
        `getFetchOperation` in interface `DataBoundComponent`
      Returns:
        String

    - #### setUpdateOperation

          public void setUpdateOperation(java.lang.String updateOperation)

      Description copied from interface: `DataBoundComponent`
      `operationId` this component should use when performing update operations.
      Specified by:
        `setUpdateOperation` in interface `DataBoundComponent`
      Parameters:
        `updateOperation` - Default value is null
      See Also:
        `Operations overview and related methods`

    - #### getUpdateOperation

          public java.lang.String getUpdateOperation()

      Description copied from interface: `DataBoundComponent`
      `operationId` this component should use when performing update operations.
      Specified by:
        `getUpdateOperation` in interface `DataBoundComponent`
      Returns:
        String
      See Also:
        `Operations overview and related methods`

    - #### setAddOperation

          public void setAddOperation(java.lang.String addOperation)

      Description copied from interface: `DataBoundComponent`
      `operationId` this component should use when performing add operations.
      Specified by:
        `setAddOperation` in interface `DataBoundComponent`
      Parameters:
        `addOperation` - Default value is null
      See Also:
        `Operations overview and related methods`

    - #### getAddOperation

          public java.lang.String getAddOperation()

      Description copied from interface: `DataBoundComponent`
      `operationId` this component should use when performing add operations.
      Specified by:
        `getAddOperation` in interface `DataBoundComponent`
      Returns:
        String
      See Also:
        `Operations overview and related methods`

    - #### setRemoveOperation

          public void setRemoveOperation(java.lang.String removeOperation)

      Description copied from interface: `DataBoundComponent`
      `operationId` this component should use when performing remove operations.
      Specified by:
        `setRemoveOperation` in interface `DataBoundComponent`
      Parameters:
        `removeOperation` - Default value is null
      See Also:
        `Operations overview and related methods`

    - #### getRemoveOperation

          public java.lang.String getRemoveOperation()

      Description copied from interface: `DataBoundComponent`
      `operationId` this component should use when performing remove operations.
      Specified by:
        `getRemoveOperation` in interface `DataBoundComponent`
      Returns:
        String
      See Also:
        `Operations overview and related methods`

    - #### setExportFields

          public void setExportFields(java.lang.String[] exportFields)

      Description copied from interface: `DataBoundComponent`
      The list of field-names to export. If provided, the field-list in the exported output is limited and sorted as per the list.

      If exportFields is not provided, the exported output includes all visible fields from this component, sorted as they appear.

      Specified by:
        `setExportFields` in interface `DataBoundComponent`
      Parameters:
        `exportFields` - exportFields Default value is null

    - #### getExportFields

          public java.lang.String[] getExportFields()

      Description copied from interface: `DataBoundComponent`
      The list of field-names to export. If provided, the field-list in the exported output is limited and sorted as per the list.

      If exportFields is not provided, the exported output includes all visible fields from this component, sorted as they appear.

      Specified by:
        `getExportFields` in interface `DataBoundComponent`
      Returns:
        the list of field-names to export.

    - #### setExportAll

          public void setExportAll(java.lang.Boolean exportAll)

      Description copied from interface: `DataBoundComponent`
      Setting exportAll to true prevents the component from passing its list of fields to the export call. The result is the export of all visible fields from `fields`.

      If exportAll is false, an export operation will first consider `exportFields`, if it's set, and fall back on all visible fields from `fields` otherwise.

      Specified by:
        `setExportAll` in interface `DataBoundComponent`
      Parameters:
        `exportAll` - exportAll Default value is false

    - #### getExportAll

          public java.lang.Boolean getExportAll()

      Description copied from interface: `DataBoundComponent`
      Setting exportAll to true prevents the component from passing its list of fields to the export call. The result is the export of all visible fields from `fields`.

      If exportAll is false, an export operation will first consider `exportFields`, if it's set, and fall back on all visible fields from `fields` otherwise.

      Specified by:
        `getExportAll` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setPreventDuplicates

          public void setPreventDuplicates(java.lang.Boolean preventDuplicates)
                                    throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via `DataBoundComponent.transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent)`. When a duplicate transfer is detected, a dialog will appear showing the `duplicateDragMessage`.

      If the component either does not have a `DataSource` or has a DataSource with no `primaryKey` declared, duplicate checking is off by default. If duplicate checking is enabled, it looks for an existing record in the dataset that has all of the properties of the dragged record, and considers that a duplicate.

      For `DragDataAction`:"copy" where the target DataSource is related to the source DataSource by foreignKey, a duplicate means that the target list, as filtered by the current criteria, already has a record whose value for the foreignKey field matches the primaryKey of the record being transferred.

      For example, consider dragging "employees" to "teams", where "teams" has a field "teams.employeeId" which is a foreignKey pointing to "employees.id", and the target grid has search criteria causing it to show all the members of one team. A duplicate - adding an employee to the same team twice - is when the target grid's dataset contains an record with "employeeId" matching the "id" field of the dropped employee.

      Specified by:
        `setPreventDuplicates` in interface `DataBoundComponent`
      Parameters:
        `preventDuplicates` - preventDuplicates Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getPreventDuplicates

          public java.lang.Boolean getPreventDuplicates()

      Description copied from interface: `DataBoundComponent`
      If set, detect and prevent duplicate records from being transferred to this component, either via drag and drop or via `DataBoundComponent.transferSelectedData(com.smartgwt.client.widgets.DataBoundComponent)`. When a duplicate transfer is detected, a dialog will appear showing the `duplicateDragMessage`.

      If the component either does not have a `DataSource` or has a DataSource with no `primaryKey` declared, duplicate checking is off by default. If duplicate checking is enabled, it looks for an existing record in the dataset that has all of the properties of the dragged record, and considers that a duplicate.

      For `DragDataAction`:"copy" where the target DataSource is related to the source DataSource by foreignKey, a duplicate means that the target list, as filtered by the current criteria, already has a record whose value for the foreignKey field matches the primaryKey of the record being transferred.

      For example, consider dragging "employees" to "teams", where "teams" has a field "teams.employeeId" which is a foreignKey pointing to "employees.id", and the target grid has search criteria causing it to show all the members of one team. A duplicate - adding an employee to the same team twice - is when the target grid's dataset contains an record with "employeeId" matching the "id" field of the dropped employee.

      Specified by:
        `getPreventDuplicates` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setDuplicateDragMessage

          public void setDuplicateDragMessage(java.lang.String duplicateDragMessage)
                                       throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      Message to show when a user attempts to transfer duplicate records into this component, and `preventDuplicates` is enabled. If set to null, duplicates will not be reported and the dragged duplicates will not be saved.
      Specified by:
        `setDuplicateDragMessage` in interface `DataBoundComponent`
      Parameters:
        `duplicateDragMessage` - duplicateDragMessage Default value is "Duplicates not allowed"
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDuplicateDragMessage

          public java.lang.String getDuplicateDragMessage()

      Description copied from interface: `DataBoundComponent`
      Message to show when a user attempts to transfer duplicate records into this component, and `preventDuplicates` is enabled. If set to null, duplicates will not be reported and the dragged duplicates will not be saved.
      Specified by:
        `getDuplicateDragMessage` in interface `DataBoundComponent`
      Returns:
        String

    - #### setAddDropValues

          public void setAddDropValues(java.lang.Boolean addDropValues)

      Description copied from interface: `DataBoundComponent`
      Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key. "Drop values" are properties of the dropped item that you wish to change (and persist) as a result of the item being dropped on this grid.

      If this value is true and this component is databound, `DataBoundComponent.getDropValues()` will be called for every databound item dropped on this grid, and an update performed on the item

      Specified by:
        `setAddDropValues` in interface `DataBoundComponent`
      Parameters:
        `addDropValues` - addDropValues Default value is true

    - #### getAddDropValues

          public java.lang.Boolean getAddDropValues()

      Description copied from interface: `DataBoundComponent`
      Indicates whether to add "drop values" to items dropped on this component, if both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key. "Drop values" are properties of the dropped item that you wish to change (and persist) as a result of the item being dropped on this grid.

      If this value is true and this component is databound, `DataBoundComponent.getDropValues()` will be called for every databound item dropped on this grid, and an update performed on the item

      Specified by:
        `getAddDropValues` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setDropValues

          public void setDropValues(java.util.Map dropValues)

      Description copied from interface: `DataBoundComponent`
      When an item is dropped on this component, and `addDropValues` is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that Smart GWT will apply to the dropped object before updating it.

      If this property is not defined, Smart GWT defaults to returning the selection criteria currently in place for this component. Thus, any databound items (for example, rows from other grids bound to the same DataSource) dropped on the grid will, by default, be subjected to an update that makes them conform to the grid's current filter criteria.

      Note : This is an advanced setting

      Specified by:
        `setDropValues` in interface `DataBoundComponent`
      Parameters:
        `dropValues` - dropValues Default value is null

    - #### getDropValues

          public java.util.Map getDropValues()

      Description copied from interface: `DataBoundComponent`
      When an item is dropped on this component, and `addDropValues` is true and both the source and target widgets are databound, either to the same DataSource or to different DataSources that are related via a foreign key, this object provides the "drop values" that Smart GWT will apply to the dropped object before updating it.

      If this property is not defined, Smart GWT defaults to returning the selection criteria currently in place for this component. Thus, any databound items (for example, rows from other grids bound to the same DataSource) dropped on the grid will, by default, be subjected to an update that makes them conform to the grid's current filter criteria.

      Note : This is an advanced setting

      Specified by:
        `getDropValues` in interface `DataBoundComponent`
      Returns:
        Returns the "drop values" to apply to a record dropped on this component prior to update. Only applicable to databound components - see `dropValues` for more details. If multiple records are being dropped, this method is called for each of them in turn.

        This method returns the following:

        - Nothing, if `addDropValues` is false
        - dropValues, if that property is set. If the component's criteria object is applicable (as explained in the next item), it is merged into dropValues, with properties in dropValues taking precedence.
        - The component's criteria object, if the most recent textMatchStyle for the component was "exact" and it is simple criteria (ie, not an AdvancedCriteria object)
        - Otherwise nothing

        You can override this method if you need more complex setting of drop values than can be provided by simply supplying a dropValues object.

    - #### setProgressiveLoading

          public void setProgressiveLoading(java.lang.Boolean progressiveLoading)

      Indicates whether or not this component will load its data `progressively`
      Parameters:
        `progressiveLoading` -
      See Also:
        `ProgressiveLoading`, `DataSource.setProgressiveLoading(java.lang.Boolean)`

    - #### getProgressiveLoading

          public java.lang.Boolean getProgressiveLoading()

      Indicates whether or not this component will load its data `progressively`
      Returns:
      See Also:
        `ProgressiveLoading`, `DataSource.getProgressiveLoading()`

    - #### setUseFlatFields

          public void setUseFlatFields(java.lang.Boolean useFlatFields)
                                throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      The `useFlatFields` flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.

      `useFlatFields` is typically used with imported metadata, such as `XMLTools.loadXMLSchema(java.lang.String, com.smartgwt.client.data.XSDLoadCallback)` from a `XMLTools.loadWSDL(java.lang.String, com.smartgwt.client.data.WSDLLoadCallback)`, as a means of eliminating levels of XML nesting that aren't meaningful in a user interface, without the cumbersome and fragile process of mapping form fields to XML structures.

      For example, having called `WebService.getInputDS(java.lang.String)` to retrieve the input message schema for a web service operation whose input message looks like this:

           <FindServices>
               <searchFor>search text</searchFor>
               <Options>
                   <caseSensitive>false</caseSensitive>
               </Options>
               <IncludeInSearch>
                   <serviceName>true</serviceName>
                   <documentation>true</documentation>
                   <keywords>true</keywords>
               </IncludeInSearch>
           </FindServices>

      Setting `useFlatFields` on a `DynamicForm` that is bound to this input message schema would result in 5 `FormItem` reflecting the 5 simple type fields in the message.

      For this form, the result of `DynamicForm.getValues()` might look like:

          {
              searchFor: "search text",
              caseSensitive: false,
              serviceName: true,
              documentation : true,
              keywords : true
           }

      When contacting a `WebService`, these values can be automatically mapped to the structure of the input message for a web service operation by setting `useFlatFields` (for use with `WebService.callOperation(java.lang.String, java.util.Map, java.lang.String, com.smartgwt.client.data.WebServiceCallback)`) or by setting `useFlatFields` (for use with a `DataSource` that is `'bound to a WSDL web service'` via `wsOperation`).

      Using these two facilities in conjunction (component.useFlatFields and request.useFlatFields) allows gratuitous nesting to be consistently bypassed in both the user presentation and when providing the data for XML messages.

      You can also set `useFlatFields` to automatically enable "flattened" XML serialization (request.useFlatFields) for all DataSource requests of a particular operationType.

      Note that `useFlatFields` is not generally recommended for use with structures where multiple simple type fields exist with the same name, however if used with such a structure, the first field to use a given name wins. "first" means the first field encountered in a depth first search. "wins" means only the first field will be present as a field when data binding.

      Specified by:
        `setUseFlatFields` in interface `DataBoundComponent`
      Parameters:
        `useFlatFields` - useFlatFields Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getUseFlatFields

          public java.lang.Boolean getUseFlatFields()

      Description copied from interface: `DataBoundComponent`
      The `useFlatFields` flag causes all simple type fields anywhere in a nested set of DataSources to be exposed as a flat list for form binding.

      `useFlatFields` is typically used with imported metadata, such as `XMLTools.loadXMLSchema(java.lang.String, com.smartgwt.client.data.XSDLoadCallback)` from a `XMLTools.loadWSDL(java.lang.String, com.smartgwt.client.data.WSDLLoadCallback)`, as a means of eliminating levels of XML nesting that aren't meaningful in a user interface, without the cumbersome and fragile process of mapping form fields to XML structures.

      For example, having called `WebService.getInputDS(java.lang.String)` to retrieve the input message schema for a web service operation whose input message looks like this:

           <FindServices>
               <searchFor>search text</searchFor>
               <Options>
                   <caseSensitive>false</caseSensitive>
               </Options>
               <IncludeInSearch>
                   <serviceName>true</serviceName>
                   <documentation>true</documentation>
                   <keywords>true</keywords>
               </IncludeInSearch>
           </FindServices>

      Setting `useFlatFields` on a `DynamicForm` that is bound to this input message schema would result in 5 `FormItem` reflecting the 5 simple type fields in the message.

      For this form, the result of `DynamicForm.getValues()` might look like:

          {
              searchFor: "search text",
              caseSensitive: false,
              serviceName: true,
              documentation : true,
              keywords : true
           }

      When contacting a `WebService`, these values can be automatically mapped to the structure of the input message for a web service operation by setting `useFlatFields` (for use with `WebService.callOperation(java.lang.String, java.util.Map, java.lang.String, com.smartgwt.client.data.WebServiceCallback)`) or by setting `useFlatFields` (for use with a `DataSource` that is `'bound to a WSDL web service'` via `wsOperation`).

      Using these two facilities in conjunction (component.useFlatFields and request.useFlatFields) allows gratuitous nesting to be consistently bypassed in both the user presentation and when providing the data for XML messages.

      You can also set `useFlatFields` to automatically enable "flattened" XML serialization (request.useFlatFields) for all DataSource requests of a particular operationType.

      Note that `useFlatFields` is not generally recommended for use with structures where multiple simple type fields exist with the same name, however if used with such a structure, the first field to use a given name wins. "first" means the first field encountered in a depth first search. "wins" means only the first field will be present as a field when data binding.

      Specified by:
        `getUseFlatFields` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setHiliteProperty

          public void setHiliteProperty(java.lang.String hiliteProperty)

      Description copied from interface: `DataBoundComponent`
      Marker that can be set on a record to flag that record as hilited. Should be set to a value that matches `id` for a hilite defined on this component.
      Specified by:
        `setHiliteProperty` in interface `DataBoundComponent`
      Parameters:
        `hiliteProperty` - hiliteProperty Default value is "_hilite"

    - #### getHiliteProperty

          public java.lang.String getHiliteProperty()

      Description copied from interface: `DataBoundComponent`
      Marker that can be set on a record to flag that record as hilited. Should be set to a value that matches `id` for a hilite defined on this component.
      Specified by:
        `getHiliteProperty` in interface `DataBoundComponent`
      Returns:
        String

    - #### editFields

          public void editFields()

      Shows a FieldPicker interface allowing end-users to rearrange the order and visibiility of the fields in the associated DataBoundComponent.

    - #### editHilites

          public void editHilites()

      Shows a HiliteEditor interface allowing end-users to edit the data-hilites currently in use by this DataBoundComponent.
      Specified by:
        `editHilites` in interface `DataBoundComponent`

    - #### getHiliteState

          public java.lang.String getHiliteState()

      Get the current hilites encoded as a String, for saving.
      Specified by:
        `getHiliteState` in interface `DataBoundComponent`
      Returns:
        the hilite state

    - #### setHiliteState

          public void setHiliteState(java.lang.String hiliteState)

      Set the current hilites based on a hiliteState String previously returned from getHilitesState.
      Specified by:
        `setHiliteState` in interface `DataBoundComponent`
      Parameters:
        `hiliteState` - hilites state encoded as a String

    - #### setHilites

          public void setHilites(Hilite[] hilites)

      Accepts an array of hilite objects and applies them to this DataBoundComponent. See also `getHilites` for a method of retrieving the hilite array for storage, including hilites manually added by the user.
      Specified by:
        `setHilites` in interface `DataBoundComponent`
      Parameters:
        `hilites` - array of hilite objects

    - #### getHilites

          public Hilite[] getHilites()

      Return the set of hilite-objects currently applied to this DataBoundComponent. These can be saved for storage and then restored to a component later via setHilites().
      Specified by:
        `getHilites` in interface `DataBoundComponent`
      Returns:
        array of hilite objects

    - #### setDragDataAction

          public void setDragDataAction(DragDataAction dragDataAction)

      Description copied from interface: `DataBoundComponent`
      Indicates what to do with data dragged into another DataBoundComponent. See DragDataAction type for details.
      Specified by:
        `setDragDataAction` in interface `DataBoundComponent`
      Parameters:
        `dragDataAction` - dragDataAction Default value is Canvas.MOVE

    - #### getDragDataAction

          public DragDataAction getDragDataAction()

      Description copied from interface: `DataBoundComponent`
      Indicates what to do with data dragged into another DataBoundComponent. See DragDataAction type for details.
      Specified by:
        `getDragDataAction` in interface `DataBoundComponent`
      Returns:
        DragDataAction

    - #### setDragTrackerStyle

          public void setDragTrackerStyle(java.lang.String dragTrackerStyle)

      Description copied from interface: `DataBoundComponent`
      CSS Style to apply to the drag tracker when dragging occurs on this component.
      Specified by:
        `setDragTrackerStyle` in interface `DataBoundComponent`
      Parameters:
        `dragTrackerStyle` - dragTrackerStyle Default value is "gridDragTracker"

    - #### getDragTrackerStyle

          public java.lang.String getDragTrackerStyle()

      Description copied from interface: `DataBoundComponent`
      CSS Style to apply to the drag tracker when dragging occurs on this component.
      Specified by:
        `getDragTrackerStyle` in interface `DataBoundComponent`
      Returns:
        String

    - #### setCanAddFormulaFields

          public void setCanAddFormulaFields(java.lang.Boolean canAddFormulaFields)

      Description copied from interface: `DataBoundComponent`
      Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the `com.smartgwt.client..FormulaBuilder`.

      User-added formula fields can be persisted via `ListGrid.getFieldState()` and `ListGrid.setFieldState(java.lang.String)`.

      Specified by:
        `setCanAddFormulaFields` in interface `DataBoundComponent`
      Parameters:
        `canAddFormulaFields` - canAddFormulaFields Default value is false

    - #### addSummaryField

          public void addSummaryField()

      Description copied from interface: `DataBoundComponent`
      Convenience method to display a `com.smartgwt.client..SummaryBuilder` to create a new Summary Field. This is equivalent to calling `DataBoundComponentGen#editSummaryField` with no parameter.
      Specified by:
        `addSummaryField` in interface `DataBoundComponent`

    - #### addFormulaField

          public void addFormulaField()

      Description copied from interface: `DataBoundComponent`
      Convenience method to display a `com.smartgwt.client..FormulaBuilder` to create a new Formula Field. This is equivalent to calling `DataBoundComponentGen#editFormulaField` with no parameter.
      Specified by:
        `addFormulaField` in interface `DataBoundComponent`

    - #### getCanAddFormulaFields

          public java.lang.Boolean getCanAddFormulaFields()

      Description copied from interface: `DataBoundComponent`
      Adds an item to the header context menu allowing users to launch a dialog to define a new field based on values present in other fields, using the `com.smartgwt.client..FormulaBuilder`.

      User-added formula fields can be persisted via `ListGrid.getFieldState()` and `ListGrid.setFieldState(java.lang.String)`.

      Specified by:
        `getCanAddFormulaFields` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setAddFormulaFieldText

          public void setAddFormulaFieldText(java.lang.String addFormulaFieldText)

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to add a formula field
      Specified by:
        `setAddFormulaFieldText` in interface `DataBoundComponent`
      Parameters:
        `addFormulaFieldText` - addFormulaFieldText Default value is "Add formula column..."

    - #### getAddFormulaFieldText

          public java.lang.String getAddFormulaFieldText()

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to add a formula field
      Specified by:
        `getAddFormulaFieldText` in interface `DataBoundComponent`
      Returns:
        String

    - #### setEditFormulaFieldText

          public void setEditFormulaFieldText(java.lang.String editFormulaFieldText)

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to edit a formula field
      Specified by:
        `setEditFormulaFieldText` in interface `DataBoundComponent`
      Parameters:
        `editFormulaFieldText` - editFormulaFieldText Default value is "Edit formula..."

    - #### getEditFormulaFieldText

          public java.lang.String getEditFormulaFieldText()

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to edit a formula field
      Specified by:
        `getEditFormulaFieldText` in interface `DataBoundComponent`
      Returns:
        String

    - #### setCanAddSummaryFields

          public void setCanAddSummaryFields(java.lang.Boolean canAddSummaryFields)

      Description copied from interface: `DataBoundComponent`
      Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the `com.smartgwt.client..SummaryBuilder`.

      User-added summary fields can be persisted via `ListGrid.getFieldState()` and `ListGrid.setFieldState(java.lang.String)`.

      Specified by:
        `setCanAddSummaryFields` in interface `DataBoundComponent`
      Parameters:
        `canAddSummaryFields` - canAddSummaryFields Default value is false

    - #### getCanAddSummaryFields

          public java.lang.Boolean getCanAddSummaryFields()

      Description copied from interface: `DataBoundComponent`
      Adds an item to the header context menu allowing users to launch a dialog to define a new text field that can contain both user-defined text and the formatted values present in other fields, using the `com.smartgwt.client..SummaryBuilder`.

      User-added summary fields can be persisted via `ListGrid.getFieldState()` and `ListGrid.setFieldState(java.lang.String)`.

      Specified by:
        `getCanAddSummaryFields` in interface `DataBoundComponent`
      Returns:
        Boolean

    - #### setAddSummaryFieldText

          public void setAddSummaryFieldText(java.lang.String addSummaryFieldText)

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to add a formula field
      Specified by:
        `setAddSummaryFieldText` in interface `DataBoundComponent`
      Parameters:
        `addSummaryFieldText` - addSummaryFieldText Default value is "Add summary column..."

    - #### getAddSummaryFieldText

          public java.lang.String getAddSummaryFieldText()

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to add a formula field
      Specified by:
        `getAddSummaryFieldText` in interface `DataBoundComponent`
      Returns:
        String

    - #### setEditSummaryFieldText

          public void setEditSummaryFieldText(java.lang.String editSummaryFieldText)

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to edit the formatter for a field
      Specified by:
        `setEditSummaryFieldText` in interface `DataBoundComponent`
      Parameters:
        `editSummaryFieldText` - editSummaryFieldText Default value is "Edit summary format..."

    - #### getEditSummaryFieldText

          public java.lang.String getEditSummaryFieldText()

      Description copied from interface: `DataBoundComponent`
      Text for a menu item allowing users to edit the formatter for a field
      Specified by:
        `getEditSummaryFieldText` in interface `DataBoundComponent`
      Returns:
        String

    - #### findAll

          public Record[] findAll(AdvancedCriteria adCriteria)

      Filters all objects according to the AdvancedCriteria passed
      Parameters:
        `adCriteria` - AdvancedCriteria to use to filter results
      Returns:
        all matching Objects or null if none found

    - #### find

          public Record find(AdvancedCriteria adCriteria)

      Filters all objects according to the AdvancedCriteria passed and returns the first matching object or null if not found
      Parameters:
        `adCriteria` - AdvancedCriteria to use to filter results
      Returns:
        first matching object or null if not found

    - #### findIndex

          public int findIndex(AdvancedCriteria adCriteria)

      Finds the index of the first Record that matches with the AdvacendCriteria passed.
      Parameters:
        `adCriteria` - AdvancedCriteria to use to filter results
      Returns:
        index of the first matching Record or -1 if not found

    - #### findNextIndex

          public int findNextIndex(int startIndex,
                                   AdvancedCriteria adCriteria,
                                   int endIndex)

      Like `RecordList.findIndex(java.util.Map)`, but considering the startIndex and endIndex parameters.
      Parameters:
        `startIndex` - first index to consider
        `adCriteria` - AdvancedCriteria to use to filter results
        `endIndex` - last index to consider
      Returns:
        index of the first matching Record or -1 if not found

    - #### findNextIndex

          public int findNextIndex(int startIndex,
                                   AdvancedCriteria adCriteria)

      Like `RecordList.findIndex(java.util.Map)`, but considering the startIndex parameter.
      Parameters:
        `startIndex` - first index to consider
        `adCriteria` - AdvancedCriteria to use to filter results
      Returns:
        index of the first matching Record or -1 if not found

    - #### selectRecord

          public void selectRecord(Record record)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a `Record` passed in explicitly, or by index.
      Specified by:
        `selectRecord` in interface `DataBoundComponent`
      Parameters:
        `record` - record (or row number) to select

    - #### selectRecord

          public void selectRecord(int record)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a `Record` passed in explicitly, or by index.
      Specified by:
        `selectRecord` in interface `DataBoundComponent`
      Parameters:
        `record` - record (or row number) to select

    - #### selectRecord

          public void selectRecord(int record,
                                   boolean newState)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a `Record` passed in explicitly, or by index.
      Specified by:
        `selectRecord` in interface `DataBoundComponent`
      Parameters:
        `record` - record (or row number) to select
        `newState` - new selection state (if null, defaults to true)

    - #### selectRecord

          public void selectRecord(Record record,
                                   boolean newState)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a `Record` passed in explicitly, or by index.
      Specified by:
        `selectRecord` in interface `DataBoundComponent`
      Parameters:
        `record` - record (or row number) to select
        `newState` - new selection state (if null, defaults to true)

    - #### selectRecords

          public void selectRecords(int[] records)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a list of `Record`s passed in explicitly, or by index.
      Specified by:
        `selectRecords` in interface `DataBoundComponent`
      Parameters:
        `records` - records (or row numbers) to select

    - #### selectRecords

          public void selectRecords(int[] records,
                                    boolean newState)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a list of `Record`s passed in explicitly, or by index.
      Specified by:
        `selectRecords` in interface `DataBoundComponent`
      Parameters:
        `records` - records (or row numbers) to select
        `newState` - new selection state

    - #### selectRecords

          public void selectRecords(Record[] records)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a list of `Record`s passed in explicitly, or by index.
      Specified by:
        `selectRecords` in interface `DataBoundComponent`
      Parameters:
        `records` - records (or row numbers) to select

    - #### selectRecords

          public void selectRecords(Record[] records,
                                    boolean newState)

      Description copied from interface: `DataBoundComponent`
      Select/deselect a list of `Record`s passed in explicitly, or by index.
      Specified by:
        `selectRecords` in interface `DataBoundComponent`
      Parameters:
        `records` - records (or row numbers) to select
        `newState` - new selection state (if null, defaults to true)

    - #### deselectRecord

          public void deselectRecord(Record record)

      Description copied from interface: `DataBoundComponent`
      Deselect a `Record` passed in explicitly, or by index.

      Synonym for `selectRecord(record, false)`

      Specified by:
        `deselectRecord` in interface `DataBoundComponent`
      Parameters:
        `record` - record (or row number) to deselect

    - #### deselectRecord

          public void deselectRecord(int record)

      Description copied from interface: `DataBoundComponent`
      Deselect a `Record` passed in explicitly, or by index.

      Synonym for `selectRecord(record, false)`

      Specified by:
        `deselectRecord` in interface `DataBoundComponent`
      Parameters:
        `record` - record (or row number) to deselect

    - #### deselectRecords

          public void deselectRecords(int[] records)

      Description copied from interface: `DataBoundComponent`
      Deselect a list of `Record`s passed in explicitly, or by index.

      Synonym for `selectRecords(records, false)`

      Specified by:
        `deselectRecords` in interface `DataBoundComponent`
      Parameters:
        `records` - records (or row numbers) to deselect

    - #### deselectRecords

          public void deselectRecords(Record[] records)

      Description copied from interface: `DataBoundComponent`
      Deselect a list of `Record`s passed in explicitly, or by index.

      Synonym for `selectRecords(records, false)`

      Specified by:
        `deselectRecords` in interface `DataBoundComponent`
      Parameters:
        `records` - records (or row numbers) to deselect

    - #### selectAllRecords

          public void selectAllRecords()

      Description copied from interface: `DataBoundComponent`
      Select all records
      Specified by:
        `selectAllRecords` in interface `DataBoundComponent`

    - #### deselectAllRecords

          public void deselectAllRecords()

      Description copied from interface: `DataBoundComponent`
      Deselect all records
      Specified by:
        `deselectAllRecords` in interface `DataBoundComponent`

    - #### anySelected

          public java.lang.Boolean anySelected()

      Description copied from interface: `DataBoundComponent`
      Whether at least one item is selected
      Specified by:
        `anySelected` in interface `DataBoundComponent`
      Returns:
        true == at least one item is selected false == nothing at all is selected

    - #### enableHilite

          public void enableHilite(java.lang.String hiliteID)

      Description copied from interface: `DataBoundComponent`
      Enable / disable a `hilites`
      Specified by:
        `enableHilite` in interface `DataBoundComponent`
      Parameters:
        `hiliteID` - ID of hilite to enable

    - #### enableHilite

          public void enableHilite(java.lang.String hiliteID,
                                   boolean enable)

      Description copied from interface: `DataBoundComponent`
      Enable / disable a `hilites`
      Specified by:
        `enableHilite` in interface `DataBoundComponent`
      Parameters:
        `hiliteID` - ID of hilite to enable
        `enable` - new enabled state to apply - if null, defaults to true

    - #### disableHilite

          public void disableHilite(java.lang.String hiliteID)

      Description copied from interface: `DataBoundComponent`
      Disable a hilite
      Specified by:
        `disableHilite` in interface `DataBoundComponent`
      Parameters:
        `hiliteID` - ID of hilite to disable

    - #### enableHiliting

          public void enableHiliting()

      Description copied from interface: `DataBoundComponent`
      Enable all hilites.
      Specified by:
        `enableHiliting` in interface `DataBoundComponent`

    - #### enableHiliting

          public void enableHiliting(boolean enable)

      Description copied from interface: `DataBoundComponent`
      Enable all hilites.
      Specified by:
        `enableHiliting` in interface `DataBoundComponent`
      Parameters:
        `enable` - new enabled state to apply - if null, defaults to true

    - #### disableHiliting

          public void disableHiliting()

      Description copied from interface: `DataBoundComponent`
      Disable all hilites.
      Specified by:
        `disableHiliting` in interface `DataBoundComponent`

    - #### getDragData

          public Record[] getDragData()

      Description copied from interface: `DataBoundComponent`
      During a drag-and-drop interaction, this method returns the set of records being dragged out of the component. In the default implementation, this is the list of currently selected records.

      This method is consulted by `ListGrid.willAcceptDrop()`.

      Specified by:
        `getDragData` in interface `DataBoundComponent`
      Returns:
        Array of `Record`s that are currently selected.

    - #### transferSelectedData

          public void transferSelectedData(DataBoundComponent source)

      Description copied from interface: `DataBoundComponent`
      Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction. This method acts on the dropped records exactly as if they had been dropped in an actual drag / drop interaction, including any special databound behavior invoked by calling `DataBoundComponent.getDropValues()` for each dropped record.

      To transfer all data in, for example, a `ListGrid`, call grid.selection.selectAll() first.

      Note that drag/drop type transfers of records between components are asynchronous operations: Smart GWT may need to perform server turnarounds to establish whether dropped records already exist in the target component. Therefore, it is possible to issue a call to `transferSelectedData()` and/or the `drop()` method of a databound component whilst a transfer is still active. When this happens, Smart GWT adds the second and subsequent transfer requests to a queue and runs them one after the other. If you want to be notified when a transfer process has actually completed, use `addDropCompleteHandler`. See the `Dragging` documentation for an overview of list grid drag/drop data transfer.

      Specified by:
        `transferSelectedData` in interface `DataBoundComponent`
      Parameters:
        `source` - source component from which the records will be tranferred

    - #### transferSelectedData

          public void transferSelectedData(DataBoundComponent source,
                                           int index)

      Description copied from interface: `DataBoundComponent`
      Simulates a drag / drop type transfer of the selected records in some other component to this component, without requiring any user interaction. This method acts on the dropped records exactly as if they had been dropped in an actual drag / drop interaction, including any special databound behavior invoked by calling `DataBoundComponent.getDropValues()` for each dropped record.

      To transfer all data in, for example, a `ListGrid`, call grid.selection.selectAll() first.

      Note that drag/drop type transfers of records between components are asynchronous operations: Smart GWT may need to perform server turnarounds to establish whether dropped records already exist in the target component. Therefore, it is possible to issue a call to `transferSelectedData()` and/or the `drop()` method of a databound component whilst a transfer is still active. When this happens, Smart GWT adds the second and subsequent transfer requests to a queue and runs them one after the other. If you want to be notified when a transfer process has actually completed, use `addDropCompleteHandler`. See the `Dragging` documentation for an overview of list grid drag/drop data transfer.

      Specified by:
        `transferSelectedData` in interface `DataBoundComponent`
      Parameters:
        `source` - source component from which the records will be transferred
        `index` - target index (drop position) of the rows within this grid.

    - #### getRecordIndex

          public int getRecordIndex(Record record)

      Description copied from interface: `DataBoundComponent`
      Get the index of the provided record.

      Override in subclasses to provide more specific behaviour, for instance, when data holds a large number of records

      Specified by:
        `getRecordIndex` in interface `DataBoundComponent`
      Parameters:
        `record` - the record whose index is to be retrieved
      Returns:
        indexindex of the record, or -1 if not found

    - #### getTitleFieldValue

          public java.lang.String getTitleFieldValue(Record record)

      Description copied from interface: `DataBoundComponent`
      Get the value of the titleField for the passed record

      Override in subclasses

      Specified by:
        `getTitleFieldValue` in interface `DataBoundComponent`
      Parameters:
        `record` - the record whose index is to be retrieved
      Returns:
        valuethe value of the titleField for the passed record

    - #### setTitleField

          public void setTitleField(java.lang.String titleField)

      Description copied from interface: `DataBoundComponent`
      Sets the best field to use for a user-visible title for an individual record from this component.
      Specified by:
        `setTitleField` in interface `DataBoundComponent`

    - #### getTitleField

          public java.lang.String getTitleField()

      Description copied from interface: `DataBoundComponent`
      Method to return the fieldName which represents the "title" for records in this Component.
      If this.titleField is explicitly specified it will always be used. Otherwise, default implementation will check `titleField` for databound components.
      For non databound components returns the first defined field name of `"title"`, `"name"`, or `"id"`. If we dont find any field-names that match these titles, the first field in the component will be used instead.
      Specified by:
        `getTitleField` in interface `DataBoundComponent`
      Returns:
        fieldName the title field for this component.

    - #### getDataSource

          public DataSource getDataSource()

      Description copied from interface: `DataBoundComponent`
      The DataSource that this component should bind to for default fields and for performing `DataSource requests`.
      Specified by:
        `getDataSource` in interface `DataBoundComponent`
      Returns:
        DataSource

    - #### setAutoFetchData

          public void setAutoFetchData(java.lang.Boolean autoFetchData)
                                throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      If true, when this component is first drawn, automatically call `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()` depending on `DataBoundComponent.getAutoFetchAsFilter()` . Criteria for this fetch may be picked up from `initialCriteria` and textMatchStyle may be specified via `DataBoundComponent.getAutoFetchTextMatchStyle()`.

      NOTE: If autoFetchData is set, calling ListGrid.fetchData() before draw will cause two requests to be issued, one from the manual call to fetchData() and one from the autoFetchData setting. The second request will use only `initialCriteria` and not any other criteria or settings from the first request. Generally, turn off autoFetchData if you are going to manually call fetchData() at any time.

      Specified by:
        `setAutoFetchData` in interface `DataBoundComponent`
      Parameters:
        `autoFetchData` - autoFetchData
      Throws:
        `java.lang.IllegalStateException`

    - #### getAutoFetchData

          public java.lang.Boolean getAutoFetchData()

      Description copied from interface: `DataBoundComponent`
      If true, when this component is first drawn, automatically call `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()` depending on `DataBoundComponent.getAutoFetchAsFilter()` . Criteria for this fetch may be picked up from `initialCriteria` and textMatchStyle may be specified via `DataBoundComponent.getAutoFetchTextMatchStyle()`.

      NOTE: If autoFetchData is set, calling ListGrid.fetchData() before draw will cause two requests to be issued, one from the manual call to fetchData() and one from the autoFetchData setting. The second request will use only `initialCriteria` and not any other criteria or settings from the first request. Generally, turn off autoFetchData if you are going to manually call fetchData() at any time.

      Specified by:
        `getAutoFetchData` in interface `DataBoundComponent`
      Returns:
        autoFetchData autoFetchData

    - #### setAutoFetchTextMatchStyle

          public void setAutoFetchTextMatchStyle(TextMatchStyle autoFetchTextMatchStyle)
                                          throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      If `autoFetchData` is `true`, this attribute allows the developer to specify a textMatchStyle for the initial `DataBoundComponent.fetchData()` call.
      Specified by:
        `setAutoFetchTextMatchStyle` in interface `DataBoundComponent`
      Throws:
        `java.lang.IllegalStateException`

    - #### getAutoFetchTextMatchStyle

          public TextMatchStyle getAutoFetchTextMatchStyle()

      Description copied from interface: `DataBoundComponent`
      If `autoFetchData` is `true`, this attribute allows the developer to specify a textMatchStyle for the initial `DataBoundComponent.fetchData()` call.
      Specified by:
        `getAutoFetchTextMatchStyle` in interface `DataBoundComponent`
      Returns:
        autoFetchTextMatchStyle autoFetchTextMatchStyle

    - #### setAutoFetchAsFilter

          public void setAutoFetchAsFilter(java.lang.Boolean autoFetchAsFilter)
                                    throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      If `DataBoundComponent.setAutoFetchData(Boolean)` is true, this attribute determines whether the initial fetch operation should be performed via `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()`
      Specified by:
        `setAutoFetchAsFilter` in interface `DataBoundComponent`
      Parameters:
        `autoFetchAsFilter` - autoFetchAsFilter
      Throws:
        `java.lang.IllegalStateException`

    - #### getAutoFetchAsFilter

          public java.lang.Boolean getAutoFetchAsFilter()

      Description copied from interface: `DataBoundComponent`
      If `DataBoundComponent.setAutoFetchData(Boolean)` is true, this attribute determines whether the initial fetch operation should be performed via `DataBoundComponent.fetchData()` or `DataBoundComponent.filterData()`
      Specified by:
        `getAutoFetchAsFilter` in interface `DataBoundComponent`
      Returns:
        auto fetch as filter

    - #### setInitialCriteria

          public void setInitialCriteria(Criteria initialCriteria)
                                  throws java.lang.IllegalStateException

      Description copied from interface: `DataBoundComponent`
      Criteria to use when `DataBoundComponent.setAutoFetchData(Boolean)` is used.
      Specified by:
        `setInitialCriteria` in interface `DataBoundComponent`
      Parameters:
        `initialCriteria` - the initial criteria
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getInitialCriteria

          public Criteria getInitialCriteria()

      Description copied from interface: `DataBoundComponent`
      Criteria to use when `DataBoundComponent.setAutoFetchData(Boolean)` is used.
      Specified by:
        `getInitialCriteria` in interface `DataBoundComponent`
      Returns:
        the criteria

    - #### fetchData

          public void fetchData()

      Description copied from interface: `DataBoundComponent`
      Retrieves data from the DataSource that matches the specified criteria.

      When `fetchData()` is first called, if data has not already been provided via `setData()`, this method will create a `ResultSet`, which will be configured based on component settings such as `fetchOperation` and `dataPageSize`, as well as the general purpose `dataProperties`. The created ResultSet will automatically send a DSRequest to retrieve data from the dataSource, and from then on will automatically manage paging through large datasets, as well as performing filtering and sorting operations inside the browser when possible - see the ResultSet docs for details.

      NOTE: do not use both `autoFetchData` and a call to `fetchData()` - this may result in two DSRequests to fetch data. Use either `autoFetchData` and `setAutoFetchCriteria()` or a manual call to fetchData() passing criteria.

      Whether a ResultSet was automatically created or provided via `setData()`, subsequent calls to fetchData() will simply call `resultSet.setCriteria()`.

      Changes to criteria may or may not result in a DSRequest to the server due to client-side filtering. You can call `willFetchData(criteria)` to determine if new criteria will result in a server fetch.

      If you need to force data to be re-fetched, you can call `invalidateCache()` and new data will automatically be fetched from the server using the current criteria and sort direction. NOTE: when using `invalidateCache()` there is no need to also call `fetchData()` and in fact this could produce unexpected results.

      This method takes an optional callback parameter (set to a `DSCallback`) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary, you can use `resultSet.willFetchData()` to determine whether or not a server fetch will occur when `fetchData()` is called with new criteria.

      In addition to the callback parameter for this method, developers can use `resultSet.addDataArrivedHandler` to be notified every time data is loaded.

      Specified by:
        `fetchData` in interface `DataBoundComponent`

    - #### fetchData

          public void fetchData(Criteria criteria)

      Description copied from interface: `DataBoundComponent`
      Retrieves data from the DataSource that matches the specified criteria.

      When `fetchData()` is first called, if data has not already been provided via `setData()`, this method will create a `ResultSet`, which will be configured based on component settings such as `fetchOperation` and `dataPageSize`, as well as the general purpose `dataProperties`. The created ResultSet will automatically send a DSRequest to retrieve data from the dataSource, and from then on will automatically manage paging through large datasets, as well as performing filtering and sorting operations inside the browser when possible - see the ResultSet docs for details.

      NOTE: do not use both `autoFetchData` and a call to `fetchData()` - this may result in two DSRequests to fetch data. Use either `autoFetchData` and `setAutoFetchCriteria()` or a manual call to fetchData() passing criteria.

      Whether a ResultSet was automatically created or provided via `setData()`, subsequent calls to fetchData() will simply call `resultSet.setCriteria()`.

      Changes to criteria may or may not result in a DSRequest to the server due to client-side filtering. You can call `willFetchData(criteria)` to determine if new criteria will result in a server fetch.

      If you need to force data to be re-fetched, you can call `invalidateCache()` and new data will automatically be fetched from the server using the current criteria and sort direction. NOTE: when using `invalidateCache()` there is no need to also call `fetchData()` and in fact this could produce unexpected results.

      This method takes an optional callback parameter (set to a `DSCallback`) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary, you can use `resultSet.willFetchData()` to determine whether or not a server fetch will occur when `fetchData()` is called with new criteria.

      In addition to the callback parameter for this method, developers can use `resultSet.addDataArrivedHandler` to be notified every time data is loaded.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`

    - #### fetchData

          public void fetchData(Criteria criteria,
                                DSCallback callback)

      Description copied from interface: `DataBoundComponent`
      Retrieves data from the DataSource that matches the specified criteria.

      When `fetchData()` is first called, if data has not already been provided via `setData()`, this method will create a `ResultSet`, which will be configured based on component settings such as `fetchOperation` and `dataPageSize`, as well as the general purpose `dataProperties`. The created ResultSet will automatically send a DSRequest to retrieve data from the dataSource, and from then on will automatically manage paging through large datasets, as well as performing filtering and sorting operations inside the browser when possible - see the ResultSet docs for details.

      NOTE: do not use both `autoFetchData` and a call to `fetchData()` - this may result in two DSRequests to fetch data. Use either `autoFetchData` and `setAutoFetchCriteria()` or a manual call to fetchData() passing criteria.

      Whether a ResultSet was automatically created or provided via `setData()`, subsequent calls to fetchData() will simply call `resultSet.setCriteria()`.

      Changes to criteria may or may not result in a DSRequest to the server due to client-side filtering. You can call `willFetchData(criteria)` to determine if new criteria will result in a server fetch.

      If you need to force data to be re-fetched, you can call `invalidateCache()` and new data will automatically be fetched from the server using the current criteria and sort direction. NOTE: when using `invalidateCache()` there is no need to also call `fetchData()` and in fact this could produce unexpected results.

      This method takes an optional callback parameter (set to a `DSCallback`) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary, you can use `resultSet.willFetchData()` to determine whether or not a server fetch will occur when `fetchData()` is called with new criteria.

      In addition to the callback parameter for this method, developers can use `resultSet.addDataArrivedHandler` to be notified every time data is loaded.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required

    - #### fetchData

          public void fetchData(Criteria criteria,
                                DSCallback callback,
                                DSRequest requestProperties)

      Description copied from interface: `DataBoundComponent`
      Retrieves data from the DataSource that matches the specified criteria.

      When `fetchData()` is first called, if data has not already been provided via `setData()`, this method will create a `ResultSet`, which will be configured based on component settings such as `fetchOperation` and `dataPageSize`, as well as the general purpose `dataProperties`. The created ResultSet will automatically send a DSRequest to retrieve data from the dataSource, and from then on will automatically manage paging through large datasets, as well as performing filtering and sorting operations inside the browser when possible - see the ResultSet docs for details.

      NOTE: do not use both `autoFetchData` and a call to `fetchData()` - this may result in two DSRequests to fetch data. Use either `autoFetchData` and `setAutoFetchCriteria()` or a manual call to fetchData() passing criteria.

      Whether a ResultSet was automatically created or provided via `setData()`, subsequent calls to fetchData() will simply call `resultSet.setCriteria()`.

      Changes to criteria may or may not result in a DSRequest to the server due to client-side filtering. You can call `willFetchData(criteria)` to determine if new criteria will result in a server fetch.

      If you need to force data to be re-fetched, you can call `invalidateCache()` and new data will automatically be fetched from the server using the current criteria and sort direction. NOTE: when using `invalidateCache()` there is no need to also call `fetchData()` and in fact this could produce unexpected results.

      This method takes an optional callback parameter (set to a `DSCallback`) to fire when the fetch completes. Note that this callback will not fire if no server fetch is performed. In this case the data is updated synchronously, so as soon as this method completes you can interact with the new data. If necessary, you can use `resultSet.willFetchData()` to determine whether or not a server fetch will occur when `fetchData()` is called with new criteria.

      In addition to the callback parameter for this method, developers can use `resultSet.addDataArrivedHandler` to be notified every time data is loaded.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required
        `requestProperties` - additional properties to set on the DSRequest that will be issued

    - #### filterData

          public void filterData()

      Description copied from interface: `DataBoundComponent`
      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `ListGrid.fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`

    - #### filterData

          public void filterData(Criteria criteria)

      Description copied from interface: `DataBoundComponent`
      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `ListGrid.fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`

    - #### filterData

          public void filterData(Criteria criteria,
                                 DSCallback callback)

      Description copied from interface: `DataBoundComponent`
      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `ListGrid.fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required; see `DataBoundComponent.fetchData()` for details

    - #### filterData

          public void filterData(Criteria criteria,
                                 DSCallback callback,
                                 DSRequest requestProperties)

      Description copied from interface: `DataBoundComponent`
      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `ListGrid.fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required; see `DataBoundComponent.fetchData()` for details
        `requestProperties` - for databound components only - optional additional properties to set on the DSRequest that will be issued

    - #### invalidateCache

          public void invalidateCache()

      Description copied from interface: `DataBoundComponent`
      Invalidate the current data cache for this databound component via a call to the dataset's `invalidateCache()` method, for example, `ResultSet.invalidateCache()`.

      NOTE: there is no need to call `invalidateCache()` when a save operation is performed on a DataSource. Automatic cache synchronization features will automatically update caches - see `ResultSet` for details. If automatic cache synchronization isn't working, troubleshoot the problem using the steps suggested in the FAQ rather than just calling invalidateCache(). Calling `invalidateCache()` unnecessarily causes extra server load and added code complexity.

      Calling `invalidateCache()` will automatically cause a new fetch to be performed with the current set of criteria if data had been previously fetched and the component is currently drawn with data visible - there is no need to manually call fetchData() after invalidateCache() and this could result in duplicate fetches.

      While data is being re-loaded after a call to `invalidateCache()`, the widget is in a state similar to initial data load - it doesn't know the total length of the dataset and any APIs that act on records or row indices will necessarily fail and should not be called. To detect that the widget is in this state, call `ResultSet.lengthIsKnown()`.

      `invalidateCache()` only has an effect if this component's dataset is a data manager class that manages a cache (eg ResultSet or ResultTree). If data was provided as a simple Array or List, invalidateCache() does nothing.

      Specified by:
        `invalidateCache` in interface `DataBoundComponent`
      See Also:
        `ListGrid.refreshData()`, `DataBoundComponentMethods overview and related methods`

    - #### getResultSet

          public ResultSet getResultSet()

      Description copied from interface: `DataBoundComponent`
      Return the underlying data of this DataBoundComponent as a `ResultSet`.

      Note that this method should only be called after initial data has been fetched by this DataBoundComponent.

      Specified by:
        `getResultSet` in interface `DataBoundComponent`
      Returns:
        ResultSet, or null if the underlying data is not a ResultSet
      See Also:
        `DataBoundComponent.fetchData()`

    - #### getRecordList

          public RecordList getRecordList()

      Description copied from interface: `DataBoundComponent`
      Return the underlying data of this DataBoundComponent as a `RecordList`.

      Depending on the component configuration, the actual JavaScript instance of the returned RecordList may be one of several types:

      - If the component is not bound to a `DataSource`, the instance is generally an Array of `Record`.
      - If the component is bound to a DataSource, the instance is a `ResultSet`.
      - If the component is a grouped ListGrid, the instance is a `Tree`. To access the ungrouped record list regardless of grouping status, use

            isGrouped() ? getOriginalRecordList() : getRecordList()

      - If the component is a `TreeGrid`, the instance is a ResultTree.
      The underlying type determines the structure of the returned data. An Array or ResultSet represents a list of records, but a Tree or ResultTree represents a list of open rows in the tree, including groups or other nodes which contain no records.
      Specified by:
        `getRecordList` in interface `DataBoundComponent`
      Returns:
        the RecordList

    - #### getDataAsJSList

          public com.google.gwt.core.client.JavaScriptObject getDataAsJSList()

      Specified by:
        `getDataAsJSList` in interface `DataBoundComponent`

    - #### exportData

          public void exportData()

      Description copied from interface: `DataBoundComponent`
      Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the current filter and sort criteria for this component, then exports the resulting data to a file or window in the requested format.

      A variety of DSRequest settings, such as `exportAs` and `exportFilename`, affect the exporting process: see `exportResults` for further detail.

      Note that data exported via this method does not include any client-side formatting and relies on both the Smart GWT server and server-side DataSources. To export client-data with formatters applied, see `exportClientData`, which still requires the Smart GWT server but does not rely on server-side DataSources.

      For more information on exporting data, see `DataSource.exportData`.

      Specified by:
        `exportData` in interface `DataBoundComponent`
      See Also:
        `DataBoundComponentMethods overview and related methods`

    - #### exportData

          public void exportData(DSRequest requestProperties)

      Description copied from interface: `DataBoundComponent`
      Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the current filter and sort criteria for this component, then exports the resulting data to a file or window in the requested format.

      A variety of DSRequest settings, such as `exportAs` and `exportFilename`, affect the exporting process: see `exportResults` for further detail.

      Note that data exported via this method does not include any client-side formatting and relies on both the Smart GWT server and server-side DataSources. To export client-data with formatters applied, see `exportClientData`, which still requires the Smart GWT server but does not rely on server-side DataSources.

      For more information on exporting data, see `DataSource.exportData`.

      Specified by:
        `exportData` in interface `DataBoundComponent`
      Parameters:
        `requestProperties` - additional properties to set on the DSRequest that will be issued
      See Also:
        `DataBoundComponentMethods overview and related methods`

    - #### addFetchDataHandler

          public com.google.gwt.event.shared.HandlerRegistration addFetchDataHandler(FetchDataHandler handler)

      Add a fetchData handler.

      Notification function fired on fetchData() or filterData()

      Specified by:
        `addFetchDataHandler` in interface `HasFetchDataHandlers`
      Parameters:
        `handler` - the filterData handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDropCompleteHandler

          public com.google.gwt.event.shared.HandlerRegistration addDropCompleteHandler(DropCompleteHandler handler)

      Add a `com.smartgwt.client.widgets.DropCompleteHandler`. See that class's documentation for a definition of "drop complete", and how it differs from "drag complete" (`com.smartgwt.client.widgets.DragCompleteHandler`).
      Specified by:
        `addDropCompleteHandler` in interface `HasDropCompleteHandlers`
      Parameters:
        `handler` - the DropCompleteHandler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDragCompleteHandler

          public com.google.gwt.event.shared.HandlerRegistration addDragCompleteHandler(DragCompleteHandler handler)

      Add a `com.smartgwt.client.widgets.DragCompleteHandler`. See that class's documentation for a definition of "drag complete", and how it differs from "drop complete" (`com.smartgwt.client.widgets.DropCompleteHandler`).
      Specified by:
        `addDragCompleteHandler` in interface `HasDragCompleteHandlers`
      Parameters:
        `handler` - the DropCompleteHandler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### getFieldAlignments

          public Alignment[] getFieldAlignments()

      Description copied from interface: `DataBoundComponent`
      Returna an array of field alignments for this grid
      Specified by:
        `getFieldAlignments` in interface `DataBoundComponent`
      Returns:
        array of Alignments

    - #### getDeepCloneOnEdit

          public java.lang.Boolean getDeepCloneOnEdit()

      Description copied from interface: `DataBoundComponent`
      Before we start editing values in this DataBoundComponent, should we perform a deep clone of the underlying values. See `DataSource.getDeepCloneOnEdit()` for details of what this means.

      If this value is not explicitly set, it defaults to the DataSource `deepCloneOnEdit` value. This value can also be overridden per-field with `DataSourceField.setDeepCloneOnEdit(java.lang.Boolean)`.

      Like the other `deepCloneOnEdit` settings, this flag only has an effect if you are editing a values object that contains nested objects or arrays, using `Canvas.setDataPath(java.lang.String)`

      Specified by:
        `getDeepCloneOnEdit` in interface `DataBoundComponent`

    - #### setDeepCloneOnEdit

          public void setDeepCloneOnEdit(java.lang.Boolean deepCloneOnEdit)

      Description copied from interface: `DataBoundComponent`
      Before we start editing values in this DataBoundComponent, should we perform a deep clone of the underlying values. See `DataSource.getDeepCloneOnEdit()` for details of what this means.

      If this value is not explicitly set, it defaults to the DataSource `deepCloneOnEdit` value. This value can also be overridden per-field with `DataSourceField.setDeepCloneOnEdit(java.lang.Boolean)`.

      Like the other `deepCloneOnEdit` settings, this flag only has an effect if you are editing a values object that contains nested objects or arrays, using `Canvas.setDataPath(java.lang.String)`

      Specified by:
        `setDeepCloneOnEdit` in interface `DataBoundComponent`

    - #### setFields

          public void setFields(com.google.gwt.core.client.JavaScriptObject... fields)

      Description copied from interface: `DataBoundComponent`
      Field setter variant (alternative to `setFields(FormItem...)`, `setFields(ListGridField...)`, etc.) that will accept an array of JavaScriptObject, rather than an array of SmartGWT Java wrappers of the field class type (e.g. `FormItem`, `ListGridField`, etc.) This is an advanced method and only for cases where you have the JavaScriptObject for each field but want to avoid having to create each associated SmartGWT Java wrapper.

      Note: use `toArray()` to create a Java array of JavaScriptObject if you only have the array itself as a single JavaScriptObject.

      Specified by:
        `setFields` in interface `DataBoundComponent`
      Parameters:
        `fields` - the component fields

    - #### getFieldsAsJavaScriptObjects

          public com.google.gwt.core.client.JavaScriptObject[] getFieldsAsJavaScriptObjects()

      Description copied from interface: `DataBoundComponent`
      Return the fields as JavaScriptObjects rather than as SmartGWT Java wrappers of the field class type (e.g. `FormItem`, `ListGridField`, etc.) This avoids building the SmartGWT Java wrappers for the fields in situations where they aren't needed - and for FormItems in particular - where there may not be enough information to determine the correct subclass, such as before the SmartClient instance underlying the `DynamicForm` has been created.
      Specified by:
        `getFieldsAsJavaScriptObjects` in interface `DataBoundComponent`
      Returns:
        the component fields

    - #### getFieldCount

          public int getFieldCount()

      Description copied from interface: `DataBoundComponent`
      Return the number of fields.
      Specified by:
        `getFieldCount` in interface `DataBoundComponent`
      Returns:
        the number of fields

    - #### setLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject setLogicalStructure(com.smartgwt.logicalstructure.widgets.calendar.CalendarLogicalStructure s)

      Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

    - #### getLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject getLogicalStructure()

      Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
      Specified by:
        `getLogicalStructure` in interface `LogicalStructure`
      Overrides:
        `getLogicalStructure` in class `Canvas`