Class sap.ui.unified.calendar.MonthsRowModule: sap/ui/unified/calendar/MonthsRow

extends Control

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

The MontsRow works with JavaScript Date objects, but only the month and the year are used to display and interact. As representation for a month, the 1st of the month will always be returned in the API.


Since: 1.32.0.
Constructor Summary
new sap.ui.unified.calendar.MonthsRow(sId?, mSettings?)Constructor for a new MonthsRow.
Event Summary
focus(oControlEvent)Month focus changed
select(oControlEvent)Month selection changed
Events borrowed from class sap.ui.core.Control
Method Summary
sap.ui.unified.calendar.MonthsRow.extend(sClassName, oClassInfo?, FNMetaImpl?)Creates a new subclass of class sap.ui.unified.calendar.MonthsRow with name sClassName and enriches it with the information contained in oClassInfo.
sap.ui.unified.calendar.MonthsRow.getMetadata()Returns a metadata object for class sap.ui.unified.calendar.MonthsRow.
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.MonthsRow.
attachSelect(oData?, fnFunction, oListener?)Attaches event handler fnFunction to the select event of this sap.ui.unified.calendar.MonthsRow.
checkDateFocusable(oDateTime)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.MonthsRow.
detachSelect(fnFunction, oListener)Detaches event handler fnFunction from the select event of this sap.ui.unified.calendar.MonthsRow.
displayDate(oDate)Displays the month of a given date without setting the focus
fireFocus(mParameters?)Fires event focus to attached listeners.
fireSelect(mParameters?)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.
getIntervalSelection()Gets current value of property intervalSelection.
getLegend()ID of the element which is the current target of the association legend, or null.
getMonths()Gets current value of property months.
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.
setIntervalSelection(bIntervalSelection)Sets a new value for property intervalSelection.
setLegend(oLegend)Sets the associated legend.
setMonths(iMonths)Sets a new value for property months.
setShowHeader(bShowHeader)Sets a new value for property showHeader.
setSingleSelection(bSingleSelection)Sets a new value for property singleSelection.
Constructor Detail
new sap.ui.unified.calendar.MonthsRow(sId?, mSettings?)

Constructor for a new MonthsRow. It shows a calendar with month granularity

Note: This is used inside the CalendarMonthInterval, 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

  • Associations

    • ariaLabelledBy : (sap.ui.core.ID | sap.ui.core.Control)[]
    • legend : (sap.ui.core.ID | sap.ui.unified.CalendarLegend)

  • 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:
stringsId?ID for the new control, generated automatically if no ID is given
objectmSettings?Initial settings for the new control
Event Detail
focus(oControlEvent)
Month focus changed
Parameters:
sap.ui.base.EventoControlEvent
sap.ui.base.EventProvideroControlEvent.getSource
objectoControlEvent.getParameters
objectoControlEvent.getParameters.dateFirst date, as JavaScript Date object, of the month that is focused.
booleanoControlEvent.getParameters.notVisibleIf set, the focused date is not rendered yet. (This happens by navigating out of the visible area.)
select(oControlEvent)
Month selection changed
Parameters:
sap.ui.base.EventoControlEvent
sap.ui.base.EventProvideroControlEvent.getSource
objectoControlEvent.getParameters
Method Detail
sap.ui.unified.calendar.MonthsRow.extend(sClassName, oClassInfo?, FNMetaImpl?): function

Creates a new subclass of class sap.ui.unified.calendar.MonthsRow 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:
stringsClassNameName of the class being created
objectoClassInfo?Object literal with information about the class
functionFNMetaImpl?Constructor function for the metadata object; if not given, it defaults to sap.ui.core.ElementMetadata
Returns:
functionCreated class / constructor function
sap.ui.unified.calendar.MonthsRow.getMetadata(): sap.ui.base.Metadata
Returns a metadata object for class sap.ui.unified.calendar.MonthsRow.
Returns:
sap.ui.base.MetadataMetadata object describing this class
addAriaLabelledBy(vAriaLabelledBy): sap.ui.unified.calendar.MonthsRow
Adds some ariaLabelledBy into the association ariaLabelledBy.
Parameters:
sap.ui.core.ID|sap.ui.core.ControlvAriaLabelledBythe ariaLabelledBy to add; if empty, nothing is inserted
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
addSelectedDate(oSelectedDate): sap.ui.unified.calendar.MonthsRow
Adds some selectedDate to the aggregation selectedDates.
Parameters:
sap.ui.unified.DateRangeoSelectedDatethe selectedDate to add; if empty, nothing is inserted
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
addSpecialDate(oSpecialDate): sap.ui.unified.calendar.MonthsRow
Adds some specialDate to the aggregation specialDates.
Parameters:
sap.ui.unified.DateTypeRangeoSpecialDatethe specialDate to add; if empty, nothing is inserted
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
attachFocus(oData?, fnFunction, oListener?): sap.ui.unified.calendar.MonthsRow

Attaches event handler fnFunction to the focus event of this sap.ui.unified.calendar.MonthsRow.

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.MonthsRow itself.

Month focus changed

Parameters:
objectoData?An application-specific payload object that will be passed to the event handler along with the event object when firing the event
functionfnFunctionThe function to be called when the event occurs
objectoListener?Context object to call the event handler with. Defaults to this sap.ui.unified.calendar.MonthsRow itself
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
attachSelect(oData?, fnFunction, oListener?): sap.ui.unified.calendar.MonthsRow

Attaches event handler fnFunction to the select event of this sap.ui.unified.calendar.MonthsRow.

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.MonthsRow itself.

Month selection changed

Parameters:
objectoData?An application-specific payload object that will be passed to the event handler along with the event object when firing the event
functionfnFunctionThe function to be called when the event occurs
objectoListener?Context object to call the event handler with. Defaults to this sap.ui.unified.calendar.MonthsRow itself
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
checkDateFocusable(oDateTime): 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:
objectoDateTimeJavaScript Date object for focused date.
Returns:
booleanflag if focusable
destroySelectedDates(): sap.ui.unified.calendar.MonthsRow
Destroys all the selectedDates in the aggregation selectedDates.
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
destroySpecialDates(): sap.ui.unified.calendar.MonthsRow
Destroys all the specialDates in the aggregation specialDates.
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
detachFocus(fnFunction, oListener): sap.ui.unified.calendar.MonthsRow

Detaches event handler fnFunction from the focus event of this sap.ui.unified.calendar.MonthsRow.

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

Parameters:
functionfnFunctionThe function to be called, when the event occurs
objectoListenerContext object on which the given function had to be called
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
detachSelect(fnFunction, oListener): sap.ui.unified.calendar.MonthsRow

Detaches event handler fnFunction from the select event of this sap.ui.unified.calendar.MonthsRow.

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

Parameters:
functionfnFunctionThe function to be called, when the event occurs
objectoListenerContext object on which the given function had to be called
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
Displays the month of a given date without setting the focus
Parameters:
objectoDateJavaScript Date object for focused date.
Returns:
sap.ui.unified.calendar.MonthsRowthis to allow method chaining
fireFocus(mParameters?): sap.ui.unified.calendar.MonthsRow
Fires event focus to attached listeners.
Parameters:
objectmParameters?Parameters to pass along with the event
objectmParameters.date?First date, as JavaScript Date object, of the month that is focused.
booleanmParameters.notVisible?If set, the focused date is not rendered yet. (This happens by navigating out of the visible area.)
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
fireSelect(mParameters?): sap.ui.unified.calendar.MonthsRow
Fires event select to attached listeners.
Parameters:
objectmParameters?Parameters to pass along with the event
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
getAriaLabelledBy(): sap.ui.core.ID[]
Returns array of IDs of the elements which are the current targets of the association ariaLabelledBy.
Returns:
sap.ui.core.ID[]
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 + months 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:
objectValue of property date
getIntervalSelection(): boolean

Gets current value of property intervalSelection.

If set, interval selection is allowed

Default value is false.

Returns:
booleanValue of property intervalSelection
getLegend(): sap.ui.core.ID
ID of the element which is the current target of the association legend, or null.
Returns:
sap.ui.core.ID
Since:
1.38.5
getMonths(): int

Gets current value of property months.

Number of months displayed

Default value is 12.

Returns:
intValue of property months
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.

Note: Even if only one day is selected, the whole corresponding month is selected.

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:
booleanValue 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:
booleanValue of property singleSelection
getSpecialDates(): sap.ui.unified.DateTypeRange[]

Gets content of aggregation specialDates.

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

Note: Even if only one day is set as a special day, the whole corresponding month is displayed in this way.

Returns:
sap.ui.unified.DateTypeRange[]
getStartDate(): object

Gets current value of property startDate.

Start date, as JavaScript Date object, of the row. The month of this date is the first month of the displayed row.

Returns:
objectValue 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.DateRangeoSelectedDateThe selectedDate whose index is looked for
Returns:
intThe 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.DateTypeRangeoSpecialDateThe specialDate whose index is looked for
Returns:
intThe index of the provided control in the aggregation if found, or -1 otherwise
insertSelectedDate(oSelectedDate, iIndex): sap.ui.unified.calendar.MonthsRow
Inserts a selectedDate into the aggregation selectedDates.
Parameters:
sap.ui.unified.DateRangeoSelectedDatethe selectedDate to insert; if empty, nothing is inserted
intiIndexthe 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.MonthsRowReference to this in order to allow method chaining
insertSpecialDate(oSpecialDate, iIndex): sap.ui.unified.calendar.MonthsRow
Inserts a specialDate into the aggregation specialDates.
Parameters:
sap.ui.unified.DateTypeRangeoSpecialDatethe specialDate to insert; if empty, nothing is inserted
intiIndexthe 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.MonthsRowReference to this in order to allow method chaining
removeAllAriaLabelledBy(): sap.ui.core.ID[]
Removes all the controls in the association named ariaLabelledBy.
Returns:
sap.ui.core.ID[]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.ID
Removes an ariaLabelledBy from the association named ariaLabelledBy.
Parameters:
int|sap.ui.core.ID|sap.ui.core.ControlvAriaLabelledByThe ariaLabelledBy to be removed or its index or ID
Returns:
sap.ui.core.IDThe removed ariaLabelledBy or null
removeSelectedDate(vSelectedDate): sap.ui.unified.DateRange
Removes a selectedDate from the aggregation selectedDates.
Parameters:
int|string|sap.ui.unified.DateRangevSelectedDateThe selectedDate to remove or its index or id
Returns:
sap.ui.unified.DateRangeThe removed selectedDate or null
removeSpecialDate(vSpecialDate): sap.ui.unified.DateTypeRange
Removes a specialDate from the aggregation specialDates.
Parameters:
int|string|sap.ui.unified.DateTypeRangevSpecialDateThe specialDate to remove or its index or id
Returns:
sap.ui.unified.DateTypeRangeThe removed specialDate or null
setIntervalSelection(bIntervalSelection): sap.ui.unified.calendar.MonthsRow

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:
booleanbIntervalSelectionNew value for property intervalSelection
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
Sets the associated legend.
Parameters:
sap.ui.core.ID|sap.ui.unified.CalendarLegendoLegendID of an element which becomes the new target of this legend association; alternatively, an element instance may be given
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
Since:
1.38.5

Sets a new value for property months.

Number of months displayed

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

Default value is 12.

Parameters:
intiMonthsNew value for property months
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
setShowHeader(bShowHeader): sap.ui.unified.calendar.MonthsRow

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:
booleanbShowHeaderNew value for property showHeader
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining
setSingleSelection(bSingleSelection): sap.ui.unified.calendar.MonthsRow

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:
booleanbSingleSelectionNew value for property singleSelection
Returns:
sap.ui.unified.calendar.MonthsRowReference to this in order to allow method chaining