public class Calendar extends AbstractComponent implements CalendarComponentEvents.NavigationNotifier, CalendarComponentEvents.EventMoveNotifier, CalendarComponentEvents.RangeSelectNotifier, CalendarComponentEvents.EventResizeNotifier, CalendarEventProvider.EventSetChangeListener, DropTarget, CalendarEditableEventProvider, Action.Container, LegacyComponent
Vaadin Calendar is for visualizing events in a calendar. Calendar events can be visualized in the variable length view depending on the start and end dates.
setStartDate(Date)
and setEndDate(Date)
methods. Calendar has a default date range of
one weekCalendarEventProvider
. By
default, a BasicEventProvider
is used.Modifier and Type | Class and Description |
---|---|
static class |
Calendar.TimeFormat
Calendar can use either 12 hours clock or 24 hours clock.
|
CalendarEventProvider.EventSetChangeEvent, CalendarEventProvider.EventSetChangeListener, CalendarEventProvider.EventSetChangeNotifier
Component.ErrorEvent, Component.Event, Component.Focusable, Component.Listener
ClientConnector.AttachEvent, ClientConnector.AttachListener, ClientConnector.ConnectorErrorEvent, ClientConnector.DetachEvent, ClientConnector.DetachListener
Sizeable.Unit
Modifier and Type | Field and Description |
---|---|
protected Calendar |
currentCalendar
Internal calendar data source.
|
protected Calendar.TimeFormat |
currentTimeFormat
Defines currently active format for time.
|
protected DateFormat |
df_date
Date format that will be used in the UIDL for dates.
|
protected DateFormat |
df_date_time
Date format that will be used in the UIDL for both date and time.
|
protected DateFormat |
df_time
Time format that will be used in the UIDL for time.
|
protected Date |
endDate
Defines the calendar's date range ending point.
|
protected List<CalendarEvent> |
events
Internal buffer for the events that are retrieved from the event
provider.
|
protected Date |
startDate
Defines the calendar's date range starting point.
|
protected TimeZone |
timezone
Defines the component's active time zone.
|
DESIGN_ATTR_PLAIN_TEXT
SIZE_UNDEFINED, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS
Constructor and Description |
---|
Calendar()
Construct a Vaadin Calendar with a BasicEventProvider and no caption.
|
Calendar(CalendarEventProvider eventProvider)
Construct a Vaadin Calendar with event provider.
|
Calendar(String caption)
Construct a Vaadin Calendar with a BasicEventProvider and the provided
caption.
|
Calendar(String caption,
CalendarEventProvider eventProvider)
Construct a Vaadin Calendar with event provider and a caption.
|
Modifier and Type | Method and Description |
---|---|
void |
addActionHandler(Action.Handler actionHandler)
Adds an action handler to the calender that handles event produced by the
context menu.
|
void |
addEvent(CalendarEvent event)
Adds an event to the event provider
|
void |
autoScaleVisibleHoursOfDay()
Sets the displayed start and end time to fit all current events that were
retrieved from the last call to getEvents().
|
void |
beforeClientResponse(boolean initial)
Called before the shared state and RPC invocations are sent to the
client.
|
void |
changeVariables(Object source,
Map<String,Object> variables)
Called when one or more variables handled by the implementing class are
changed.
|
void |
eventSetChange(CalendarEventProvider.EventSetChangeEvent changeEvent)
Called when the set of Events has changed.
|
protected Date |
expandEndDate(Date end,
boolean expandToFullWeek)
Finds the last day of the week and returns a day representing the end of
that day
|
protected Date |
expandStartDate(Date start,
boolean expandToFullWeek)
Finds the first day of the week and returns a day representing the start
of that day
|
protected void |
fireDateClick(Date date)
Fires event when a date was clicked in the calendar.
|
protected void |
fireEventClick(Integer index)
Fires event when a date was clicked in the calendar.
|
protected void |
fireEventMove(int index,
Date newFromDatetime)
Fires an event move event to all server side move listerners
|
protected void |
fireEventResize(int index,
Date startTime,
Date endTime)
Fires an event resize event.
|
protected void |
fireNavigationEvent(boolean forward)
Fires an event when the user selecing moving forward/backward in the
calendar.
|
protected void |
fireRangeSelect(Date from,
Date to,
boolean monthlyMode)
Fires an event range selected event.
|
protected void |
fireWeekClick(int week,
int year)
Fires event when a week was clicked in the calendar.
|
protected Collection<String> |
getCustomAttributes()
Returns a collection of attributes that should not be handled by the
basic implementation of the
readDesign and writeDesign
methods. |
protected String[] |
getDayNamesShort()
Localized display names for week days starting from sunday.
|
DropHandler |
getDropHandler()
Get the currently active drop handler
|
Date |
getEndDate()
Gets the calendar's end date.
|
CalendarEventProvider |
getEventProvider() |
List<CalendarEvent> |
getEvents(Date startDate,
Date endDate)
Gets all available events in the target date range between startDate and
endDate.
|
protected Date |
getFirstDateForWeek(Date date)
Gets a date that is first day in the week that target given date belongs
to.
|
int |
getFirstVisibleDayOfWeek()
Get the first visible day of the week.
|
int |
getFirstVisibleHourOfDay()
Returns the first visible hour in the week view.
|
EventListener |
getHandler(String eventId)
Get the assigned event handler for the given eventId.
|
Calendar |
getInternalCalendar()
Get the internally used Calendar instance.
|
protected Date |
getLastDateForWeek(Date date)
Gets a date that is last day in the week that target given date belongs
to.
|
int |
getLastVisibleDayOfWeek()
Get the last visible day of the week.
|
int |
getLastVisibleHourOfDay()
Returns the last visible hour in the week view.
|
protected Logger |
getLogger()
Returns the logger for the calendar
|
protected String[] |
getMonthNamesShort()
Localized display names for months starting from January.
|
Date |
getStartDate()
Gets the calendar's start date.
|
CalendarState |
getState()
Returns the shared state bean with information to be sent from the server
to the client.
|
protected CalendarState |
getState(boolean markAsDirty)
Returns the shared state for this connector.
|
Calendar.TimeFormat |
getTimeFormat()
Gets currently active time format.
|
TimeZone |
getTimeZone()
Returns a time zone that is currently used by this component.
|
String |
getWeeklyCaptionFormat()
Gets the date caption format for the weekly view.
|
protected boolean |
isClientChangeAllowed()
Is the user allowed to trigger events which alters the events
|
boolean |
isEventCaptionAsHtml()
Checks whether event captions are rendered as HTML
|
protected boolean |
isEventClickAllowed()
Deprecated.
As of 7.4, override
fireEventClick(Integer) instead. |
boolean |
isMonthlyMode()
Is the calendar in a mode where all days of the month is shown
|
void |
paintContent(PaintTarget target)
Paints the Paintable into a UIDL stream.
|
void |
readDesign(org.jsoup.nodes.Element design,
DesignContext designContext)
Reads the component state from the given design.
|
void |
removeActionHandler(Action.Handler actionHandler)
Removes a previously registered action handler for the contents of
this container.
|
void |
removeEvent(CalendarEvent event)
Removes an event from the event provider
|
void |
resetVisibleHoursOfDay()
Resets the
setFirstVisibleHourOfDay(int) and
setLastVisibleHourOfDay(int) to the default values, 0 and 23
respectively. |
void |
setContainerDataSource(Container.Indexed container)
Sets a container as a data source for the events in the calendar.
|
void |
setContainerDataSource(Container.Indexed container,
Object captionProperty,
Object descriptionProperty,
Object startDateProperty,
Object endDateProperty,
Object styleNameProperty)
Sets a container as a data source for the events in the calendar.
|
protected void |
setDefaultHandlers()
Set all the wanted default handlers here.
|
void |
setDropHandler(DropHandler dropHandler)
Set the drop handler for the calendar See
DropHandler for
implementation details. |
void |
setEndDate(Date date)
Sets end date for the calendar.
|
void |
setEventCaptionAsHtml(boolean eventCaptionAsHtml)
Sets whether the event captions are rendered as HTML.
|
void |
setEventProvider(CalendarEventProvider calendarEventProvider)
Set the
CalendarEventProvider to be used with this calendar. |
void |
setFirstDayOfWeek(Integer dayOfWeek)
Allow setting first day of week independent of Locale.
|
void |
setFirstVisibleDayOfWeek(int firstDay)
This method restricts the weekdays that are shown.
|
void |
setFirstVisibleHourOfDay(int firstHour)
This method restricts the hours that are shown per day.
|
void |
setHandler(CalendarComponentEvents.BackwardHandler listener)
Add a backward navigation listener.
|
void |
setHandler(CalendarComponentEvents.DateClickHandler listener)
Add a date click listener.
|
void |
setHandler(CalendarComponentEvents.EventClickHandler listener)
Add a event click listener.
|
void |
setHandler(CalendarComponentEvents.EventMoveHandler listener)
Set the EventMoveHandler.
|
void |
setHandler(CalendarComponentEvents.EventResizeHandler listener)
Set a EventResizeHandler.
|
void |
setHandler(CalendarComponentEvents.ForwardHandler listener)
Add a forward navigation listener.
|
void |
setHandler(CalendarComponentEvents.RangeSelectHandler listener)
Set the RangeSelectHandler that listens for drag-marking.
|
void |
setHandler(CalendarComponentEvents.WeekClickHandler listener)
Add a week click listener.
|
protected void |
setHandler(String eventId,
Class<?> eventType,
EventListener listener,
Method listenerMethod)
Set the handler for the given type information.
|
void |
setLastVisibleDayOfWeek(int lastDay)
This method restricts the weekdays that are shown.
|
void |
setLastVisibleHourOfDay(int lastHour)
This method restricts the hours that are shown per day.
|
void |
setLocale(Locale newLocale)
Sets the locale to be used in the Calendar component.
|
void |
setStartDate(Date date)
Sets start date for the calendar.
|
void |
setTimeFormat(Calendar.TimeFormat format)
Example:
setTimeFormat(TimeFormat.Format12H); Set to null, if you want the format being defined by the locale. |
void |
setTimeZone(TimeZone zone)
Set time zone that this component will use.
|
void |
setWeeklyCaptionFormat(String dateFormatPattern)
Sets custom date format for the weekly view.
|
TargetDetails |
translateDropTargetDetails(Map<String,Object> clientVariables)
Called before the
DragAndDropEvent is passed to
DropHandler . |
void |
writeDesign(org.jsoup.nodes.Element design,
DesignContext designContext)
Writes the component state to the given design.
|
addContextClickListener, addListener, addShortcutListener, addStyleName, attach, detach, findAncestor, fireComponentErrorEvent, fireComponentEvent, focus, getActionManager, getCaption, getComponentError, getData, getDebugId, getDescription, getErrorMessage, getExplicitImmediateValue, getHeight, getHeightUnits, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getStyleName, getWidth, getWidthUnits, isCaptionAsHtml, isConnectorEnabled, isEnabled, isImmediate, isOrHasAncestor, isReadOnly, isResponsive, isVisible, removeContextClickListener, removeListener, removeShortcutListener, removeStyleName, setCaption, setCaptionAsHtml, setComponentError, setData, setDebugId, setDescription, setEnabled, setHeight, setHeight, setHeightUndefined, setIcon, setId, setImmediate, setParent, setPrimaryStyleName, setReadOnly, setResponsive, setSizeFull, setSizeUndefined, setStyleName, setStyleName, setVisible, setWidth, setWidth, setWidthUndefined
addAttachListener, addDetachListener, addExtension, addListener, addListener, addListener, addMethodInvocationToQueue, createState, encodeState, equals, fireEvent, getAllChildrenIterable, getConnectorId, getErrorHandler, getExtensions, getListeners, getResource, getRpcManager, getRpcProxy, getSession, getStateType, getUI, handleConnectorRequest, hashCode, hasListeners, isAttached, isThis, markAsDirty, markAsDirtyRecursive, registerRpc, registerRpc, removeAttachListener, removeDetachListener, removeExtension, removeListener, removeListener, removeListener, removeListener, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler, setResource
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
markAsDirty
isEnabled, isImmediate
addListener, addStyleName, attach, getCaption, getDescription, getIcon, getId, getLocale, getParent, getPrimaryStyleName, getStyleName, getUI, isEnabled, isReadOnly, isVisible, removeListener, removeStyleName, setCaption, setEnabled, setIcon, setId, setParent, setPrimaryStyleName, setReadOnly, setStyleName, setVisible
addAttachListener, addDetachListener, detach, encodeState, getErrorHandler, getExtensions, getRpcManager, getStateType, handleConnectorRequest, isAttached, isConnectorEnabled, markAsDirtyRecursive, removeAttachListener, removeDetachListener, removeExtension, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setErrorHandler
getConnectorId
getHeight, getHeightUnits, getWidth, getWidthUnits, setHeight, setHeight, setHeightUndefined, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthUndefined
protected Calendar.TimeFormat currentTimeFormat
protected Calendar currentCalendar
protected TimeZone timezone
protected Date startDate
protected Date endDate
protected List<CalendarEvent> events
protected DateFormat df_date
protected DateFormat df_time
protected DateFormat df_date_time
public Calendar()
public Calendar(String caption)
caption
- public Calendar(CalendarEventProvider eventProvider)
Construct a Vaadin Calendar with event provider. Event provider is obligatory, because calendar component will query active events through it.
By default, Vaadin Calendar will show dates from the start of the current
week to the end of the current week. Use setStartDate(Date)
and
setEndDate(Date)
to change this.
eventProvider
- Event provider, cannot be null.public Calendar(String caption, CalendarEventProvider eventProvider)
Construct a Vaadin Calendar with event provider and a caption. Event provider is obligatory, because calendar component will query active events through it.
By default, Vaadin Calendar will show dates from the start of the current
week to the end of the current week. Use setStartDate(Date)
and
setEndDate(Date)
to change this.
eventProvider
- Event provider, cannot be null.protected Logger getLogger()
public CalendarState getState()
AbstractComponent
getState
in class AbstractComponent
protected CalendarState getState(boolean markAsDirty)
AbstractClientConnector
getState
in class AbstractComponent
markAsDirty
- true if the connector should automatically be marked dirty,
false otherwiseAbstractClientConnector.getState()
public void beforeClientResponse(boolean initial)
ClientConnector
beforeClientResponse
in interface ClientConnector
beforeClientResponse
in class AbstractComponent
initial
- true
if the client-side connector will be created
and initialized after this method has been invoked.
false
if there is already an initialized
client-side connector.protected void setDefaultHandlers()
public Date getStartDate()
public void setStartDate(Date date)
setEndDate(Date)
control the range of dates visible on the component. The default range is
one week.date
- First visible date to show.public Date getEndDate()
public void setEndDate(Date date)
setStartDate(Date)
control the range of dates visible
on the component. The default range is one week.date
- Last visible date to show.public void setLocale(Locale newLocale)
setLocale
in class AbstractComponent
newLocale
- the locale to become this component's locale.AbstractComponent.setLocale(java.util.Locale)
public void autoScaleVisibleHoursOfDay()
If no events exist, nothing happens.
NOTE: triggering this method only does this once for the current events - events that are not in the current visible range, are ignored!
public void resetVisibleHoursOfDay()
setFirstVisibleHourOfDay(int)
and
setLastVisibleHourOfDay(int)
to the default values, 0 and 23
respectively.public Calendar.TimeFormat getTimeFormat()
public void setTimeFormat(Calendar.TimeFormat format)
setTimeFormat(TimeFormat.Format12H);
format
- Set 12h or 24h format. Default is defined by the locale.public TimeZone getTimeZone()
public void setTimeZone(TimeZone zone)
zone
- Time zone to usepublic Calendar getInternalCalendar()
Calendar
but is bound to change during the
lifetime of the component.public void setFirstVisibleDayOfWeek(int firstDay)
This method restricts the weekdays that are shown. This affects both the monthly and the weekly view. The general contract is that firstDay < lastDay.
Note that this only affects the rendering process. Events are still
requested by the dates set by setStartDate(Date)
and
setEndDate(Date)
.
firstDay
- the first day of the week to show, between 1 and 7public int getFirstVisibleDayOfWeek()
Calendar.DAY_OF_WEEK
Calendar.DAY_OF_WEEK
public void setLastVisibleDayOfWeek(int lastDay)
This method restricts the weekdays that are shown. This affects both the monthly and the weekly view. The general contract is that firstDay < lastDay.
Note that this only affects the rendering process. Events are still
requested by the dates set by setStartDate(Date)
and
setEndDate(Date)
.
lastDay
- the first day of the week to show, between 1 and 7public int getLastVisibleDayOfWeek()
Calendar.DAY_OF_WEEK
Calendar.DAY_OF_WEEK
public void setFirstVisibleHourOfDay(int firstHour)
Note that this only affects the rendering process. Events are still
requested by the dates set by setStartDate(Date)
and
setEndDate(Date)
.
You can use autoScaleVisibleHoursOfDay()
for automatic scaling
of the visible hours based on current events.
firstHour
- the first hour of the day to show, between 0 and 23autoScaleVisibleHoursOfDay()
public int getFirstVisibleHourOfDay()
public void setLastVisibleHourOfDay(int lastHour)
Note that this only affects the rendering process. Events are still
requested by the dates set by setStartDate(Date)
and
setEndDate(Date)
.
You can use autoScaleVisibleHoursOfDay()
for automatic scaling
of the visible hours based on current events.
lastHour
- the first hour of the day to show, between 0 and 23autoScaleVisibleHoursOfDay()
public int getLastVisibleHourOfDay()
public String getWeeklyCaptionFormat()
public void setWeeklyCaptionFormat(String dateFormatPattern)
dateFormatPattern
- The date caption pattern.protected boolean isClientChangeAllowed()
isEventClickAllowed()
@Deprecated protected boolean isEventClickAllowed()
fireEventClick(Integer)
instead.true
by
default. Subclass can override this method to disallow firing event
clicks got from the client side.isClientChangeAllowed()
protected void fireNavigationEvent(boolean forward)
forward
- True if the calendar moved forward else backward is assumed.protected void fireEventMove(int index, Date newFromDatetime)
index
- The index of the event in the events listnewFromDatetime
- The changed from date timeprotected void fireWeekClick(int week, int year)
week
- The week that was clickedyear
- The year of the weekprotected void fireEventClick(Integer index)
index
- The index of the event in the event cache.protected void fireDateClick(Date date)
date
- The date and time that was clickedprotected void fireRangeSelect(Date from, Date to, boolean monthlyMode)
from
- The start date and time of the highlighted areato
- The end date and time of the highlighted areamonthlyMode
- Is the calendar in monthly modeprotected void fireEventResize(int index, Date startTime, Date endTime)
index
- The index of the event in the event cachestartTime
- The new start date and time of the eventendTime
- The new end date and time of the eventprotected String[] getDayNamesShort()
protected String[] getMonthNamesShort()
protected Date getFirstDateForWeek(Date date)
date
- Target dateprotected Date getLastDateForWeek(Date date)
date
- Target dateprotected Date expandStartDate(Date start, boolean expandToFullWeek)
start
- The actual dateexpandToFullWeek
- Should the returned date be moved to the start of the weekprotected Date expandEndDate(Date end, boolean expandToFullWeek)
end
- The actual dateexpandToFullWeek
- Should the returned date be moved to the end of the weekpublic void setEventProvider(CalendarEventProvider calendarEventProvider)
CalendarEventProvider
to be used with this calendar. The
EventProvider is used to query for events to show, and must be non-null.
By default a BasicEventProvider
is used.calendarEventProvider
- the calendarEventProvider to set. Cannot be null.public CalendarEventProvider getEventProvider()
CalendarEventProvider
currently usedpublic void eventSetChange(CalendarEventProvider.EventSetChangeEvent changeEvent)
CalendarEventProvider.EventSetChangeListener
eventSetChange
in interface CalendarEventProvider.EventSetChangeListener
protected void setHandler(String eventId, Class<?> eventType, EventListener listener, Method listenerMethod)
addListener
from
AbstractComponenteventId
- A unique id for the event. Usually one of
CalendarEventId
eventType
- The class of the event, most likely a subclass of
CalendarComponentEvent
listener
- A listener that listens to the given eventlistenerMethod
- The method on the lister to call when the event is triggeredpublic void setHandler(CalendarComponentEvents.ForwardHandler listener)
CalendarComponentEvents.NavigationNotifier
setHandler
in interface CalendarComponentEvents.NavigationNotifier
listener
- ForwardHandler to be added.public void setHandler(CalendarComponentEvents.BackwardHandler listener)
CalendarComponentEvents.NavigationNotifier
setHandler
in interface CalendarComponentEvents.NavigationNotifier
listener
- BackwardHandler to be added.public void setHandler(CalendarComponentEvents.DateClickHandler listener)
CalendarComponentEvents.NavigationNotifier
setHandler
in interface CalendarComponentEvents.NavigationNotifier
listener
- DateClickHandler to be added.public void setHandler(CalendarComponentEvents.EventClickHandler listener)
CalendarComponentEvents.NavigationNotifier
setHandler
in interface CalendarComponentEvents.NavigationNotifier
listener
- EventClickHandler to be added.public void setHandler(CalendarComponentEvents.WeekClickHandler listener)
CalendarComponentEvents.NavigationNotifier
setHandler
in interface CalendarComponentEvents.NavigationNotifier
listener
- WeekClickHandler to be added.public void setHandler(CalendarComponentEvents.EventResizeHandler listener)
CalendarComponentEvents.EventResizeNotifier
setHandler
in interface CalendarComponentEvents.EventResizeNotifier
listener
- EventResizeHandler to be setpublic void setHandler(CalendarComponentEvents.RangeSelectHandler listener)
CalendarComponentEvents.RangeSelectNotifier
setHandler
in interface CalendarComponentEvents.RangeSelectNotifier
listener
- RangeSelectHandler to be added.public void setHandler(CalendarComponentEvents.EventMoveHandler listener)
CalendarComponentEvents.EventMoveNotifier
setHandler
in interface CalendarComponentEvents.EventMoveNotifier
listener
- EventMoveHandler to be addedpublic EventListener getHandler(String eventId)
CalendarComponentEvents.CalendarEventNotifier
getHandler
in interface CalendarComponentEvents.CalendarEventNotifier
public DropHandler getDropHandler()
getDropHandler
in interface DropTarget
public void setDropHandler(DropHandler dropHandler)
DropHandler
for
implementation details.dropHandler
- The drop handler to setpublic TargetDetails translateDropTargetDetails(Map<String,Object> clientVariables)
DropTarget
DragAndDropEvent
is passed to
DropHandler
. Implementation may for example translate the drop
target details provided by the client side (drop target) to meaningful
server side values. If null is returned the terminal implementation will
automatically create a TargetDetails
with raw client side data.translateDropTargetDetails
in interface DropTarget
clientVariables
- data passed from the DropTargets client side counterpart.DragSource.getTransferable(Map)
public void setContainerDataSource(Container.Indexed container)
Calendar.setEventProvider(new ContainerEventProvider(container))
Use this method if you are adding a container which uses the default
property ids like BeanItemContainer
for instance. If you are
using custom properties instead use
setContainerDataSource(Container.Indexed, Object, Object, Object, Object, Object)
Please note that the container must be sorted by date!container
- The container to use as a datasourcepublic void setContainerDataSource(Container.Indexed container, Object captionProperty, Object descriptionProperty, Object startDateProperty, Object endDateProperty, Object styleNameProperty)
Calendar.setEventProvider(new ContainerEventProvider(container))
Please note that the container must be sorted by date!container
- The container to use as a data sourcecaptionProperty
- The property that has the caption, null if no caption property
is presentdescriptionProperty
- The property that has the description, null if no description
property is presentstartDateProperty
- The property that has the starting dateendDateProperty
- The property that has the ending datestyleNameProperty
- The property that has the stylename, null if no stylname
property is presentpublic List<CalendarEvent> getEvents(Date startDate, Date endDate)
CalendarEventProvider
Gets all available events in the target date range between startDate and endDate. The Vaadin Calendar queries the events from the range that is shown, which is not guaranteed to be the same as the date range that is set.
For example, if you set the date range to be monday 22.2.2010 - wednesday 24.2.2010, the used Event Provider will be queried for events between monday 22.2.2010 00:00 and sunday 28.2.2010 23:59. Generally you can expect the date range to be expanded to whole days and whole weeks.
getEvents
in interface CalendarEventProvider
startDate
- Start dateendDate
- End datepublic void addEvent(CalendarEvent event)
CalendarEditableEventProvider
addEvent
in interface CalendarEditableEventProvider
event
- The event to addpublic void removeEvent(CalendarEvent event)
CalendarEditableEventProvider
removeEvent
in interface CalendarEditableEventProvider
event
- The eventpublic void addActionHandler(Action.Handler actionHandler)
The Action.Handler.getActions(Object, Object)
parameters depend on what
view the Calendar is in:
CalendarDateRange
with a range of
half-an-hour. The Action.Handler.getActions(Object, Object)
method will
be called once per half-hour slot.CalendarDateRange
with a range of one day. The
Action.Handler.getActions(Object, Object)
will be called once for each
day.
CalendarDateRange
are in the same
timezone as the calendar is.
The Action.Handler.handleAction(Action, Object, Object)
parameters
depend on what the context menu is called upon:
CalendarEvent
Date
representing that slot
addActionHandler
in interface Action.Container
actionHandler
- the new handler to be added.public boolean isMonthlyMode()
public void removeActionHandler(Action.Handler actionHandler)
Action.Container
removeActionHandler
in interface Action.Container
actionHandler
- the handler to be removed.public void changeVariables(Object source, Map<String,Object> variables)
VariableOwner
changeVariables
in interface VariableOwner
source
- the Source of the variable change. This is the origin of the
event. For example in Web Adapter this is the request.variables
- the Mapping from variable names to new variable values.public void paintContent(PaintTarget target) throws PaintException
LegacyComponent
Paints the Paintable into a UIDL stream. This method creates the UIDL sequence describing it and outputs it to the given UIDL stream.
It is called when the contents of the component should be painted in response to the component first being shown or having been altered so that its visual representation is changed.
paintContent
in interface LegacyComponent
target
- the target UIDL stream where the component should paint itself
to.PaintException
- if the paint operation failed.public void setEventCaptionAsHtml(boolean eventCaptionAsHtml)
If set to true, the captions are rendered in the browser as HTML and the developer is responsible for ensuring no harmful HTML is used. If set to false, the caption is rendered in the browser as plain text.
The default is false, i.e. to render that caption as plain text.
captionAsHtml
- true if the captions are rendered as HTML, false if rendered
as plain textpublic boolean isEventCaptionAsHtml()
The default is false, i.e. to render that caption as plain text.
public void readDesign(org.jsoup.nodes.Element design, DesignContext designContext)
Component
The component is responsible not only for updating its own state but also for ensuring that its children update their state based on the design.
It is assumed that the component is in its default state when this method is called. Reading should only take into consideration attributes specified in the design and not reset any unspecified attributes to their defaults.
This method must not modify the design.
readDesign
in interface Component
readDesign
in class AbstractComponent
design
- The element to obtain the state fromdesignContext
- The DesignContext instance used for parsing the designpublic void writeDesign(org.jsoup.nodes.Element design, DesignContext designContext)
Component
The component is responsible not only for writing its own state but also for ensuring that its children write their state to the design.
This method must not modify the component state.
writeDesign
in interface Component
writeDesign
in class AbstractComponent
design
- The element to write the component state to. Any previous
attributes or child nodes are not cleared.designContext
- The DesignContext instance used for writing the designprotected Collection<String> getCustomAttributes()
AbstractComponent
readDesign
and writeDesign
methods. Typically these are handled in a custom way in the overridden
versions of the above methodsgetCustomAttributes
in class AbstractComponent
public void setFirstDayOfWeek(Integer dayOfWeek)
dayOfWeek
- any of java.util.Calendar.SUNDAY..java.util.Calendar.SATURDAY
or null to revert to default first day of week by localeCopyright © 2019 Vaadin Ltd. All rights reserved.