public class DaySelectionModel extends AbstractDateSelectionModel
DateSelectionModel.SelectionMode
adjusting, calendar, EMPTY_DATES, listenerMap, locale, lowerBound, upperBound
Constructor and Description |
---|
DaySelectionModel() |
DaySelectionModel(java.util.Locale locale) |
Modifier and Type | Method and Description |
---|---|
void |
addSelectionInterval(java.util.Date startDate,
java.util.Date endDate)
Adds the specified selection interval to the selection model.
|
void |
clearSelection()
Clears any selection from the selection model.
|
java.util.Date |
getFirstSelectionDate()
Returns the earliest date in the selection or null if the selection is empty.
|
java.util.Date |
getLastSelectionDate()
Returns the latest date in the selection or null if the selection is empty.
|
java.util.Date |
getNormalizedDate(java.util.Date date)
Returns a normalized Date as used by the implementation, if any.
|
java.util.SortedSet<java.util.Date> |
getSelection()
Returns the current selection.
|
DateSelectionModel.SelectionMode |
getSelectionMode()
Get the selection mode.
|
java.util.SortedSet<java.util.Date> |
getUnselectableDates()
Returns a
SortedSet of Dates that are unselectable. |
boolean |
isSelected(java.util.Date date)
Returns true if the date specified is selected, false otherwise.
|
boolean |
isSelectionEmpty()
Returns true if the selection is empty, false otherwise.
|
boolean |
isUnselectableDate(java.util.Date date)
Returns true is the specified date is unselectable.
|
void |
removeSelectionInterval(java.util.Date startDate,
java.util.Date endDate)
Removes the specifed selection interval from the selection model.
|
void |
setSelectionInterval(java.util.Date startDate,
java.util.Date endDate)
Sest the specified selection interval to the selection model.
|
void |
setSelectionMode(DateSelectionModel.SelectionMode selectionMode)
Set the selection mode.
|
void |
setUnselectableDates(java.util.SortedSet<java.util.Date> unselectables)
Sets a collection of dates which are not selectable.
|
addDateSelectionListener, adjustDatesToTimeZone, endOfDay, fireValueChanged, getCalendar, getDateSelectionListeners, getFirstDayOfWeek, getLocale, getLowerBound, getMinimalDaysInFirstWeek, getTimeZone, getUpperBound, isAdjusting, isSameDay, removeDateSelectionListener, setAdjusting, setFirstDayOfWeek, setLocale, setLowerBound, setMinimalDaysInFirstWeek, setTimeZone, setUpperBound, startOfDay
public DaySelectionModel()
public DaySelectionModel(java.util.Locale locale)
public DateSelectionModel.SelectionMode getSelectionMode()
DateSelectionModel
public void setSelectionMode(DateSelectionModel.SelectionMode selectionMode)
DateSelectionModel
selectionMode
- new selection modepublic void addSelectionInterval(java.util.Date startDate, java.util.Date endDate)
startDate
- interval start date, must not be nullendDate
- interval end date >= start date, must not be nullpublic void setSelectionInterval(java.util.Date startDate, java.util.Date endDate)
startDate
- interval start date, must not be nullendDate
- interval end date >= start date, must not be nullpublic void removeSelectionInterval(java.util.Date startDate, java.util.Date endDate)
startDate
- interval start date, must not be nullendDate
- interval end date >= start date, must not be nullpublic void clearSelection()
public java.util.SortedSet<java.util.Date> getSelection()
public java.util.Date getFirstSelectionDate()
DateSelectionModel.getLastSelectionDate()
,
DateSelectionModel.getSelection()
,
DateSelectionModel.isSelectionEmpty()
public java.util.Date getLastSelectionDate()
DateSelectionModel.getFirstSelectionDate()
,
DateSelectionModel.getSelection()
,
DateSelectionModel.isSelectionEmpty()
public boolean isSelected(java.util.Date date)
Note: it is up to implementations to define the exact notion of selected. It does not imply the exact date as given is contained the set returned from getSelection().
date
- date to check for selection, must not be nullpublic boolean isSelectionEmpty()
public java.util.SortedSet<java.util.Date> getUnselectableDates()
SortedSet
of Dates that are unselectable.
public void setUnselectableDates(java.util.SortedSet<java.util.Date> unselectables)
Note: it is up to implementations to define the exact notion of unselectableDate. It does not imply the only the exact date as given is unselectable, it might have a period like "all dates on the same day". PENDING JW: any collection would do - why insist on a SortedSet?
unselectables
- dates that are unselectable, must not be null and
must not contain null dates.public boolean isUnselectableDate(java.util.Date date)
date
- the date to check for unselectability, must not be null.public java.util.Date getNormalizedDate(java.util.Date date)
The overall contract:
if ((date != null) && isSelectable(date)) {
setSelectionInterval(date, date);
assertEquals(getNormalized(date), getFirstSelectionDate();
}
Implemented to return the start of the day which contains the date.