Class sap.ui.unified.calendar.TimesRowModule: sap/ui/unified/calendar/TimesRow

extends Control

Renders a row of time items using ItemNavigation. There is no paging or navigation outside the rendered area implemented. This is done inside the CalendarTimeInterval. If used inside the CalendarTimeInterval the properties and aggregation are directly taken from the parent (to not duplicate and synchronize DateRanges and so on...).

The TimesRow works with JavaScript Date objects.


Since: 1.32.0.
Constructor Summary
new sap.ui.unified.calendar.TimesRow(sId?, mSettings?)Constructor for a new TimesRow.
Event Summary
focus(oControlEvent)Time focus changed
select(oControlEvent)Time selection changed
Events borrowed from class sap.ui.core.Control
Method Summary
sap.ui.unified.calendar.TimesRow.extend(sClassName, oClassInfo?, FNMetaImpl?)Creates a new subclass of class sap.ui.unified.calendar.TimesRow with name sClassName and enriches it with the information contained in oClassInfo.
sap.ui.unified.calendar.TimesRow.getMetadata()Returns a metadata object for class sap.ui.unified.calendar.TimesRow.
addAriaLabelledBy(vAriaLabelledBy)Adds some ariaLabelledBy into the association ariaLabelledBy.
addSelectedDate(oSelectedDate)Adds some selectedDate to the aggregation selectedDates.
addSpecialDate(oSpecialDate)Adds some specialDate to the aggregation specialDates.
attachFocus(oData?, fnFunction, oListener?)Attaches event handler fnFunction to the focus event of this sap.ui.unified.calendar.TimesRow.
attachSelect(oData?, fnFunction, oListener?)Attaches event handler fnFunction to the select event of this sap.ui.unified.calendar.TimesRow.
checkDateFocusable(oDate)Checks if a date is focusable in the current rendered output.
destroySelectedDates()Destroys all the selectedDates in the aggregation selectedDates.
destroySpecialDates()Destroys all the specialDates in the aggregation specialDates.
detachFocus(fnFunction, oListener)Detaches event handler fnFunction from the focus event of this sap.ui.unified.calendar.TimesRow.
detachSelect(fnFunction, oListener)Detaches event handler fnFunction from the select event of this sap.ui.unified.calendar.TimesRow.
displayDate(oDate)Displays the given date without setting the focus
fireFocus(mArguments?)Fires event focus to attached listeners.
fireSelect(mArguments?)Fires event select to attached listeners.
getAriaLabelledBy()Returns array of IDs of the elements which are the current targets of the association ariaLabelledBy.
getDate()Gets current value of property date.
getIntervalMinutes()Gets current value of property intervalMinutes.
getIntervalSelection()Gets current value of property intervalSelection.
getItems()Gets current value of property items.
getLegend()ID of the element which is the current target of the association legend, or null.
getSelectedDates()Gets content of aggregation selectedDates.
getShowHeader()Gets current value of property showHeader.
getSingleSelection()Gets current value of property singleSelection.
getSpecialDates()Gets content of aggregation specialDates.
getStartDate()Gets current value of property startDate.
indexOfSelectedDate(oSelectedDate)Checks for the provided sap.ui.unified.DateRange in the aggregation selectedDates.
indexOfSpecialDate(oSpecialDate)Checks for the provided sap.ui.unified.DateTypeRange in the aggregation specialDates.
insertSelectedDate(oSelectedDate, iIndex)Inserts a selectedDate into the aggregation selectedDates.
insertSpecialDate(oSpecialDate, iIndex)Inserts a specialDate into the aggregation specialDates.
removeAllAriaLabelledBy()Removes all the controls in the association named ariaLabelledBy.
removeAllSelectedDates()Removes all the controls from the aggregation selectedDates.
removeAllSpecialDates()Removes all the controls from the aggregation specialDates.
removeAriaLabelledBy(vAriaLabelledBy)Removes an ariaLabelledBy from the association named ariaLabelledBy.
removeSelectedDate(vSelectedDate)Removes a selectedDate from the aggregation selectedDates.
removeSpecialDate(vSpecialDate)Removes a specialDate from the aggregation specialDates.
setDate(oDate)Sets a new value for property date.
setIntervalMinutes(iIntervalMinutes)Sets a new value for property intervalMinutes.
setIntervalSelection(bIntervalSelection)Sets a new value for property intervalSelection.
setItems(iItems)Sets a new value for property items.
setLegend(oLegend)Sets the associated legend.
setShowHeader(bShowHeader)Sets a new value for property showHeader.
setSingleSelection(bSingleSelection)Sets a new value for property singleSelection.
setStartDate(oStartDate)Sets a new value for property startDate.
Constructor Detail
new sap.ui.unified.calendar.TimesRow(sId?, mSettings?)
Constructor for a new TimesRow. It shows a calendar with time granularity (normally hours)

Note: This is used inside the CalendarTimeInterval, not for standalone usage.

Accepts an object literal mSettings that defines initial property values, aggregated and associated objects as well as event handlers. See sap.ui.base.ManagedObject for a general description of the syntax of the settings object.

The supported settings are:

  • Properties
  • Aggregations
  • Events
    • select : fnListenerFunction or [fnListenerFunction, oListenerObject] or [oData, fnListenerFunction, oListenerObject]
    • focus : fnListenerFunction or [fnListenerFunction, oListenerObject] or [oData, fnListenerFunction, oListenerObject]

In addition, all settings applicable to the base type sap.ui.core.Control can be used as well.

Parameters:
{string}sId? ID for the new control, generated automatically if no ID is given
{object}mSettings? Initial settings for the new control
Event Detail
focus(oControlEvent)
Time focus changed
Parameters:
{sap.ui.base.Event}oControlEvent
{sap.ui.base.EventProvider}oControlEvent.getSource
{object}oControlEvent.getParameters
{object}oControlEvent.getParameters.date date, as JavaScript Date object, of the focused time.
{boolean}oControlEvent.getParameters.notVisible If set, the focused date is not rendered yet. (This happens by navigating out of the visible area.)
select(oControlEvent)
Time selection changed
Parameters:
{sap.ui.base.Event}oControlEvent
{sap.ui.base.EventProvider}oControlEvent.getSource
{object}oControlEvent.getParameters
Method Detail
sap.ui.unified.calendar.TimesRow.extend(sClassName, oClassInfo?, FNMetaImpl?): function
Creates a new subclass of class sap.ui.unified.calendar.TimesRow with name sClassName and enriches it with the information contained in oClassInfo.

oClassInfo might contain the same kind of information as described in sap.ui.core.Control.extend.

Parameters:
{string}sClassName Name of the class being created
{object}oClassInfo? Object literal with information about the class
{function}FNMetaImpl? Constructor function for the metadata object; if not given, it defaults to sap.ui.core.ElementMetadata
Returns:
{function} Created class / constructor function
sap.ui.unified.calendar.TimesRow.getMetadata(): sap.ui.base.Metadata
Returns a metadata object for class sap.ui.unified.calendar.TimesRow.
Returns:
{sap.ui.base.Metadata} Metadata object describing this class
addAriaLabelledBy(vAriaLabelledBy): sap.ui.unified.calendar.TimesRow
Adds some ariaLabelledBy into the association ariaLabelledBy.
Parameters:
{string|sap.ui.core.Control}vAriaLabelledBy the ariaLabelledBy to add; if empty, nothing is inserted
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
addSelectedDate(oSelectedDate): sap.ui.unified.calendar.TimesRow
Adds some selectedDate to the aggregation selectedDates.
Parameters:
{sap.ui.unified.DateRange}oSelectedDate the selectedDate to add; if empty, nothing is inserted
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
addSpecialDate(oSpecialDate): sap.ui.unified.calendar.TimesRow
Adds some specialDate to the aggregation specialDates.
Parameters:
{sap.ui.unified.DateTypeRange}oSpecialDate the specialDate to add; if empty, nothing is inserted
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
attachFocus(oData?, fnFunction, oListener?): sap.ui.unified.calendar.TimesRow
Attaches event handler fnFunction to the focus event of this sap.ui.unified.calendar.TimesRow.

When called, the context of the event handler (its this) will be bound to oListener if specified, otherwise it will be bound to this sap.ui.unified.calendar.TimesRow itself.

Time focus changed

Parameters:
{object}oData? An application-specific payload object that will be passed to the event handler along with the event object when firing the event
{function}fnFunction The function to be called when the event occurs
{object}oListener? Context object to call the event handler with. Defaults to this sap.ui.unified.calendar.TimesRow itself
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
attachSelect(oData?, fnFunction, oListener?): sap.ui.unified.calendar.TimesRow
Attaches event handler fnFunction to the select event of this sap.ui.unified.calendar.TimesRow.

When called, the context of the event handler (its this) will be bound to oListener if specified, otherwise it will be bound to this sap.ui.unified.calendar.TimesRow itself.

Time selection changed

Parameters:
{object}oData? An application-specific payload object that will be passed to the event handler along with the event object when firing the event
{function}fnFunction The function to be called when the event occurs
{object}oListener? Context object to call the event handler with. Defaults to this sap.ui.unified.calendar.TimesRow itself
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
checkDateFocusable(oDate): boolean
Checks if a date is focusable in the current rendered output. This means that if it is not rendered, it is not focusable.
Parameters:
{object}oDate JavaScript Date object for focused date.
Returns:
{boolean} flag if focusable
destroySelectedDates(): sap.ui.unified.calendar.TimesRow
Destroys all the selectedDates in the aggregation selectedDates.
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
destroySpecialDates(): sap.ui.unified.calendar.TimesRow
Destroys all the specialDates in the aggregation specialDates.
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
detachFocus(fnFunction, oListener): sap.ui.unified.calendar.TimesRow
Detaches event handler fnFunction from the focus event of this sap.ui.unified.calendar.TimesRow.

The passed function and listener object must match the ones used for event registration.

Parameters:
{function}fnFunction The function to be called, when the event occurs
{object}oListener Context object on which the given function had to be called
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
detachSelect(fnFunction, oListener): sap.ui.unified.calendar.TimesRow
Detaches event handler fnFunction from the select event of this sap.ui.unified.calendar.TimesRow.

The passed function and listener object must match the ones used for event registration.

Parameters:
{function}fnFunction The function to be called, when the event occurs
{object}oListener Context object on which the given function had to be called
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
Displays the given date without setting the focus
Parameters:
{object}oDate JavaScript Date object for focused date.
Returns:
{sap.ui.unified.calendar.TimesRow}this to allow method chaining
fireFocus(mArguments?): sap.ui.unified.calendar.TimesRow
Fires event focus to attached listeners.

Expects the following event parameters:

  • date of type objectdate, as JavaScript Date object, of the focused time.
  • notVisible of type booleanIf set, the focused date is not rendered yet. (This happens by navigating out of the visible area.)
Parameters:
{Map}mArguments? The arguments to pass along with the event
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
fireSelect(mArguments?): sap.ui.unified.calendar.TimesRow
Fires event select to attached listeners.
Parameters:
{Map}mArguments? The arguments to pass along with the event
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
getAriaLabelledBy(): sap.ui.core.Control[]
Returns array of IDs of the elements which are the current targets of the association ariaLabelledBy.
Returns:
{sap.ui.core.Control[]}
getDate(): object
Gets current value of property date.

A date as JavaScript Date object. The month including this date is rendered and this date is focused initially (if no other focus is set). If the date property is not in the range startDate + items in the rendering phase, it is set to the startDate. So after setting the startDate the date should be set to be in the visible range.

Returns:
{object} Value of property date
getIntervalMinutes(): int
Gets current value of property intervalMinutes.

Size of on time interval in minutes, default is 60 minutes.

Note: the start of the interval calculation is always startDat at 00:00.

A interval longer then 720 minutes is not allowed. Please use the DatesRow instead.

A day must be divisible by this interval size. One interval must not include more than one day.

Default value is 60.

Returns:
{int} Value of property intervalMinutes
getIntervalSelection(): boolean
Gets current value of property intervalSelection.

If set, interval selection is allowed

Default value is false.

Returns:
{boolean} Value of property intervalSelection
getItems(): int
Gets current value of property items.

Number of time items displayed

Default value is 12.

Returns:
{int} Value of property items
ID of the element which is the current target of the association legend, or null.
Since:
1.38.5
Returns:
{sap.ui.unified.CalendarLegend}
getSelectedDates(): sap.ui.unified.DateRange[]
Gets content of aggregation selectedDates.

Date ranges for selected dates. If singleSelection is set, only the first entry is used.

Returns:
{sap.ui.unified.DateRange[]}
getShowHeader(): boolean
Gets current value of property showHeader.

If set, a header with the years is shown to visualize what month belongs to what year.

Default value is false.

Returns:
{boolean} Value of property showHeader
getSingleSelection(): boolean
Gets current value of property singleSelection.

If set, only a single month or interval, if intervalSelection is enabled, can be selected

Note: Selection of multiple intervals is not supported in the current version.

Default value is true.

Returns:
{boolean} Value of property singleSelection
getSpecialDates(): sap.ui.unified.DateTypeRange[]
Gets content of aggregation specialDates.

Date ranges with type to visualize special item in the row. If one day is assigned to more than one type, only the first one will be used.

Returns:
{sap.ui.unified.DateTypeRange[]}
getStartDate(): object
Gets current value of property startDate.

Start date, as JavaScript Date object, of the row.

Returns:
{object} Value of property startDate
indexOfSelectedDate(oSelectedDate): int
Checks for the provided sap.ui.unified.DateRange in the aggregation selectedDates. and returns its index if found or -1 otherwise.
Parameters:
{sap.ui.unified.DateRange}oSelectedDate The selectedDate whose index is looked for
Returns:
{int} The index of the provided control in the aggregation if found, or -1 otherwise
indexOfSpecialDate(oSpecialDate): int
Checks for the provided sap.ui.unified.DateTypeRange in the aggregation specialDates. and returns its index if found or -1 otherwise.
Parameters:
{sap.ui.unified.DateTypeRange}oSpecialDate The specialDate whose index is looked for
Returns:
{int} The index of the provided control in the aggregation if found, or -1 otherwise
insertSelectedDate(oSelectedDate, iIndex): sap.ui.unified.calendar.TimesRow
Inserts a selectedDate into the aggregation selectedDates.
Parameters:
{sap.ui.unified.DateRange}oSelectedDate the selectedDate to insert; if empty, nothing is inserted
{int}iIndex the 0-based index the selectedDate should be inserted at; for a negative value of iIndex, the selectedDate is inserted at position 0; for a value greater than the current size of the aggregation, the selectedDate is inserted at the last position
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
insertSpecialDate(oSpecialDate, iIndex): sap.ui.unified.calendar.TimesRow
Inserts a specialDate into the aggregation specialDates.
Parameters:
{sap.ui.unified.DateTypeRange}oSpecialDate the specialDate to insert; if empty, nothing is inserted
{int}iIndex the 0-based index the specialDate should be inserted at; for a negative value of iIndex, the specialDate is inserted at position 0; for a value greater than the current size of the aggregation, the specialDate is inserted at the last position
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
removeAllAriaLabelledBy(): sap.ui.core.Control[]
Removes all the controls in the association named ariaLabelledBy.
Returns:
{sap.ui.core.Control[]} An array of the removed elements (might be empty)
removeAllSelectedDates(): sap.ui.unified.DateRange[]
Removes all the controls from the aggregation selectedDates.

Additionally, it unregisters them from the hosting UIArea.

Returns:
{sap.ui.unified.DateRange[]} An array of the removed elements (might be empty)
removeAllSpecialDates(): sap.ui.unified.DateTypeRange[]
Removes all the controls from the aggregation specialDates.

Additionally, it unregisters them from the hosting UIArea.

Returns:
{sap.ui.unified.DateTypeRange[]} An array of the removed elements (might be empty)
removeAriaLabelledBy(vAriaLabelledBy): sap.ui.core.Control
Removes an ariaLabelledBy from the association named ariaLabelledBy.
Parameters:
{int|string|sap.ui.core.Control}vAriaLabelledBy The ariaLabelledByto be removed or its index or ID
Returns:
{sap.ui.core.Control} the removed ariaLabelledBy or null
removeSelectedDate(vSelectedDate): sap.ui.unified.DateRange
Removes a selectedDate from the aggregation selectedDates.
Parameters:
{int|string|sap.ui.unified.DateRange}vSelectedDate The selectedDateto remove or its index or id
Returns:
{sap.ui.unified.DateRange} The removed selectedDate or null
removeSpecialDate(vSpecialDate): sap.ui.unified.DateTypeRange
Removes a specialDate from the aggregation specialDates.
Parameters:
{int|string|sap.ui.unified.DateTypeRange}vSpecialDate The specialDateto remove or its index or id
Returns:
{sap.ui.unified.DateTypeRange} The removed specialDate or null
Sets a new value for property date.

A date as JavaScript Date object. The month including this date is rendered and this date is focused initially (if no other focus is set). If the date property is not in the range startDate + items in the rendering phase, it is set to the startDate. So after setting the startDate the date should be set to be in the visible range.

When called with a value of null or undefined, the default value of the property will be restored.

Parameters:
{object}oDate New value for property date
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
setIntervalMinutes(iIntervalMinutes): sap.ui.unified.calendar.TimesRow
Sets a new value for property intervalMinutes.

Size of on time interval in minutes, default is 60 minutes.

Note: the start of the interval calculation is always startDat at 00:00.

A interval longer then 720 minutes is not allowed. Please use the DatesRow instead.

A day must be divisible by this interval size. One interval must not include more than one day.

When called with a value of null or undefined, the default value of the property will be restored.

Default value is 60.

Parameters:
{int}iIntervalMinutes New value for property intervalMinutes
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
setIntervalSelection(bIntervalSelection): sap.ui.unified.calendar.TimesRow
Sets a new value for property intervalSelection.

If set, interval selection is allowed

When called with a value of null or undefined, the default value of the property will be restored.

Default value is false.

Parameters:
{boolean}bIntervalSelection New value for property intervalSelection
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
Sets a new value for property items.

Number of time items displayed

When called with a value of null or undefined, the default value of the property will be restored.

Default value is 12.

Parameters:
{int}iItems New value for property items
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
Sets the associated legend.
Parameters:
{sap.ui.unified.CalendarLegend}oLegend Id of an element which becomes the new target of this legend association; alternatively, an element instance may be given
Since:
1.38.5
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
setShowHeader(bShowHeader): sap.ui.unified.calendar.TimesRow
Sets a new value for property showHeader.

If set, a header with the years is shown to visualize what month belongs to what year.

When called with a value of null or undefined, the default value of the property will be restored.

Default value is false.

Parameters:
{boolean}bShowHeader New value for property showHeader
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
setSingleSelection(bSingleSelection): sap.ui.unified.calendar.TimesRow
Sets a new value for property singleSelection.

If set, only a single month or interval, if intervalSelection is enabled, can be selected

Note: Selection of multiple intervals is not supported in the current version.

When called with a value of null or undefined, the default value of the property will be restored.

Default value is true.

Parameters:
{boolean}bSingleSelection New value for property singleSelection
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining
setStartDate(oStartDate): sap.ui.unified.calendar.TimesRow
Sets a new value for property startDate.

Start date, as JavaScript Date object, of the row.

When called with a value of null or undefined, the default value of the property will be restored.

Parameters:
{object}oStartDate New value for property startDate
Returns:
{sap.ui.unified.calendar.TimesRow} Reference to this in order to allow method chaining