Class DatePicker
- All Implemented Interfaces:
CalendarColors
,ImageObserver
,MenuContainer
,Serializable
This implementatin allows for specifying time component along with the date. Make sure that: 1) keepTime property is true; 2) stripTime is false; 3) dateFormat has time fields;
- Author:
- Michael Baranov
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
A constant for the "pickerStyle" property.static final int
A constant for the "pickerStyle" property.static final String
The name of a "dateFormat" property.static final String
The name of a "popupFocusable" property.static final String
The name of a "fieldEditable" property.static final String
The name of a "keepTime" property.static final String
The name of a "pickerStyle" property.Fields inherited from class com.michaelbaranov.microba.calendar.CalendarPane
PROPERTY_NAME_DATE, PROPERTY_NAME_FOCUS_LOST_BEHAVIOR, PROPERTY_NAME_HOLIDAY_POLICY, PROPERTY_NAME_LOCALE, PROPERTY_NAME_RESOURCES, PROPERTY_NAME_SHOW_NONE_BTN, PROPERTY_NAME_SHOW_NUMBER_WEEK, PROPERTY_NAME_SHOW_TODAY_BTN, PROPERTY_NAME_STRIP_TIME, PROPERTY_NAME_STYLE, PROPERTY_NAME_VETO_POLICY, PROPERTY_NAME_ZONE, STYLE_CLASSIC, STYLE_MODERN
Fields inherited from class com.michaelbaranov.microba.common.MicrobaComponent
PROPERTY_NAME_COLOR_OVERRIDE_MAP
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface com.michaelbaranov.microba.calendar.CalendarColors
COLOR_CALENDAR_GRID_BACKGROUND_DISABLED, COLOR_CALENDAR_GRID_BACKGROUND_ENABLED, COLOR_CALENDAR_GRID_FOCUS, COLOR_CALENDAR_GRID_FOREGROUND_DISABLED, COLOR_CALENDAR_GRID_FOREGROUND_ENABLED, COLOR_CALENDAR_GRID_HOLIDAY_FOREGROUND_DISABLED, COLOR_CALENDAR_GRID_HOLIDAY_FOREGROUND_ENABLED, COLOR_CALENDAR_GRID_RESTRICTED, COLOR_CALENDAR_GRID_SELECTION_BACKGROUND_DISABLED, COLOR_CALENDAR_GRID_SELECTION_BACKGROUND_ENABLED, COLOR_CALENDAR_GRID_WEEKEND_FOREGROUND_DISABLED, COLOR_CALENDAR_GRID_WEEKEND_FOREGROUND_ENABLED, COLOR_CALENDAR_HEADER_BACKGROUND_DISABLED, COLOR_CALENDAR_HEADER_BACKGROUND_ENABLED, COLOR_CALENDAR_HEADER_FOREGROUND_DISABLED, COLOR_CALENDAR_HEADER_FOREGROUND_ENABLED, COLOR_CALENDAR_HEADER_FOREGROUND_WEEKEND_DISABLED, COLOR_CALENDAR_HEADER_FOREGROUND_WEEKEND_ENABLED
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor.DatePicker
(Date initialDate) Constructor.DatePicker
(Date initialDate, int dateStyle) Constructor.DatePicker
(Date initialDate, int dateStyle, Locale locale) Constructor.DatePicker
(Date initialDate, int dateStyle, Locale locale, TimeZone zone) Constructor.DatePicker
(Date initialDate, DateFormat dateFormat) Constructor.DatePicker
(Date initialDate, DateFormat dateFormat, Locale locale) Constructor.DatePicker
(Date initialDate, DateFormat dateFormat, Locale locale, TimeZone zone) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Forces the control to commit current user's edit.Returns the date format.int
Returns current visual style of the picker control.void
Hides the calendar dropdown without selecting a date.boolean
Is the dropdown focusable?boolean
Is the edit field of the control editable by the user?boolean
Does UI try to preserve time components entered in the edit field?void
Forces the control to revert current user's edit to reflect current control's date.void
setDateFormat
(DateFormat dateFormat) Sets the date format constant defined byDateFormat
and updates the control to reflect new date style.void
setDropdownFocusable
(boolean popupFocusable) Enables or disables focusability of the dropdown calendar.void
setFieldEditable
(boolean fieldEditable) Enables or disables editing of the edit field by the user.void
setKeepTime
(boolean keepTime) Determines if the UI should try to preserve time components entered in the edit field.void
setPickerStyle
(int pickerStyle) Sets the current visual style of the picker control.void
showButtonOnly
(boolean buttonOnly) A shortucut method to switch picker style betweenPICKER_STYLE_FIELD_AND_BUTTON
andPICKER_STYLE_BUTTON
void
Displays the calendar dropdown.Methods inherited from class com.michaelbaranov.microba.calendar.CalendarPane
addActionListener, addCommitListener, commitOrRevert, fireActionEvent, fireCommitEvent, getDate, getFocusLostBehavior, getHolidayPolicy, getLocale, getResources, getStyle, getVetoPolicy, getZone, isShowNoneButton, isShowNumberOfWeek, isShowTodayButton, isStripTime, observeMonth, removeActionListener, removeCommitListener, setDate, setFocusLostBehavior, setHolidayPolicy, setLocale, setResources, setShowNoneButton, setShowNumberOfWeek, setShowTodayButton, setStripTime, setStyle, setVetoPolicy, setZone, stripTime
Methods inherited from class com.michaelbaranov.microba.common.MicrobaComponent
getColorOverrideMap, getUI, setColorOverrideMap, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
PROPERTY_NAME_DATE_FORMAT
The name of a "dateFormat" property.- See Also:
-
PROPERTY_NAME_FIELD_EDITABLE
The name of a "fieldEditable" property.- See Also:
-
PROPERTY_NAME_KEEP_TIME
The name of a "keepTime" property.- See Also:
-
PROPERTY_NAME_PICKER_STYLE
The name of a "pickerStyle" property.- See Also:
-
PROPERTY_NAME_DROPDOWN_FOCUSABLE
The name of a "popupFocusable" property.- See Also:
-
PICKER_STYLE_FIELD_AND_BUTTON
public static final int PICKER_STYLE_FIELD_AND_BUTTONA constant for the "pickerStyle" property.- See Also:
-
PICKER_STYLE_BUTTON
public static final int PICKER_STYLE_BUTTONA constant for the "pickerStyle" property.- See Also:
-
-
Constructor Details
-
DatePicker
public DatePicker()Constructor. -
DatePicker
Constructor. -
DatePicker
Constructor. -
DatePicker
Constructor. -
DatePicker
Constructor. -
DatePicker
Constructor. -
DatePicker
Constructor. -
DatePicker
Constructor.
-
-
Method Details
-
getUIClassID
- Overrides:
getUIClassID
in classCalendarPane
-
getDateFormat
Returns the date format.- Returns:
- current date format
- See Also:
-
setDateFormat
Sets the date format constant defined byDateFormat
and updates the control to reflect new date style.- Parameters:
dateFormat
- the date format constant to set- See Also:
-
isFieldEditable
public boolean isFieldEditable()Is the edit field of the control editable by the user?If not editable, the user can not type in the date and can only use calendar drop-down to select dates.
- Returns:
true
if the edit field is editable,false
otherwise- See Also:
-
setFieldEditable
public void setFieldEditable(boolean fieldEditable) Enables or disables editing of the edit field by the user.If not editable, the user can not type in the date and can only use calendar drop-down to select dates.
- Parameters:
fieldEditable
- the editable value to set- See Also:
-
isDropdownFocusable
public boolean isDropdownFocusable()Is the dropdown focusable?If not focusable, the dropdown calendar will lack some keyboard input capabilities.
- Returns:
true
if the dropdown is focusable,false
otherwise- See Also:
-
setDropdownFocusable
public void setDropdownFocusable(boolean popupFocusable) Enables or disables focusability of the dropdown calendar.If not focusable, the dropdown calendar will lack some keyboard input capabilities.
- Parameters:
popupFocusable
- the focusable value to set- See Also:
-
isKeepTime
public boolean isKeepTime()Does UI try to preserve time components entered in the edit field?If
true
and if the date format has some time fields (hours, minutes, seconds, fraction of second), the UI tries to respect the time fields' values entered by user as much as possible.Note: to be able to receive time portion of the date, make sure
CalendarPane.isStripTime()
isfalse
(the dafualt).- Returns:
true
if the UI respects time fields,false
otherwise- See Also:
-
setKeepTime
public void setKeepTime(boolean keepTime) Determines if the UI should try to preserve time components entered in the edit field.If
true
and if the date format has some time fields (hours, minutes, seconds, fraction of second), the UI tries to respect the time fields' values entered by user as much as possible.Note: to be able to receive time portion of the date, make sure
CalendarPane.isStripTime()
isfalse
(the dafualt).- Parameters:
keepTime
-true
to make the UI respects time fields,false
otherwise- See Also:
-
getPickerStyle
public int getPickerStyle()Returns current visual style of the picker control.NOTE: do not confuse with
CalendarPane.getStyle()
.- Returns:
- current visual style constant.
-
setPickerStyle
public void setPickerStyle(int pickerStyle) Sets the current visual style of the picker control.The control is then updated to reflect the new style.
NOTE: do not confuse with
CalendarPane.getStyle()
.- Parameters:
pickerStyle
- the style to set- See Also:
-
showButtonOnly
public void showButtonOnly(boolean buttonOnly) A shortucut method to switch picker style betweenPICKER_STYLE_FIELD_AND_BUTTON
andPICKER_STYLE_BUTTON
- Parameters:
buttonOnly
-true
to setPICKER_STYLE_BUTTON
,false
to setPICKER_STYLE_FIELD_AND_BUTTON
-
showPopup
public void showPopup()Displays the calendar dropdown. -
hidePopup
public void hidePopup()Hides the calendar dropdown without selecting a date. -
commitEdit
public boolean commitEdit()Description copied from class:CalendarPane
Forces the control to commit current user's edit. The opertaion may fail because the date in the control may be restricted by current veto policy. If successfull, the current date of the control may change, aCommitEvent
is fired.- Overrides:
commitEdit
in classCalendarPane
- Returns:
true
if successful,false
otherwise- See Also:
-
revertEdit
public void revertEdit()Description copied from class:CalendarPane
Forces the control to revert current user's edit to reflect current control's date. The current date of the control may change, aCommitEvent
is fired.- Overrides:
revertEdit
in classCalendarPane
- See Also:
-