Package org.meteoinfo.ui.calendar
Class JCalendar
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.meteoinfo.ui.calendar.JCalendar
-
- All Implemented Interfaces:
java.beans.PropertyChangeListener,java.util.EventListener
public class JCalendar extends javax.swing.JPanel implements java.beans.PropertyChangeListenerJCalendar is a bean for entering a date by choosing the year, month and day.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
-
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
-
-
Field Summary
Fields Modifier and Type Field Description protected JDayChooserdayChooserthe day chooserprotected java.util.Localelocalethe localeJMonthChoosermonthChooserthe month chooserprotected booleanweekOfYearVisibleindicates if weeks of year shall be visibleprotected JYearChooseryearChooserthe year chooser-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description JCalendar()Default JCalendar constructor.JCalendar(boolean monthSpinner)JCalendar constructor specifying the month spinner type.JCalendar(java.util.Calendar calendar)JCalendar constructor which allows the initial calendar to be set.JCalendar(java.util.Date date)JCalendar constructor which allows the initial date to be set.JCalendar(java.util.Date date, boolean monthSpinner)JCalendar constructor specifying both the initial date and the month spinner type.JCalendar(java.util.Date date, java.util.Locale locale)JCalendar constructor specifying both the initial date and locale.JCalendar(java.util.Date date, java.util.Locale locale, boolean monthSpinner, boolean weekOfYearVisible)JCalendar constructor with month spinner parameter.JCalendar(java.util.Locale locale)JCalendar constructor allowing the initial locale to be set.JCalendar(java.util.Locale locale, boolean monthSpinner)JCalendar constructor specifying both the locale and the month spinner.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.CalendargetCalendar()Returns the calendar property.java.util.DategetDate()Returns a Date object.JDayChoosergetDayChooser()Gets the dayChooser attribute of the JCalendar objectjava.awt.ColorgetDecorationBackgroundColor()Returns the color of the decoration (day names and weeks).java.util.LocalegetLocale()Returns the locale.intgetMaxDayCharacters()Gets the maximum number of characters of a day name or 0.java.util.DategetMaxSelectableDate()Gets the minimum selectable date.java.util.DategetMinSelectableDate()Gets the maximum selectable date.JMonthChoosergetMonthChooser()Gets the monthChooser attribute of the JCalendar objectjava.lang.StringgetNullDateButtonText()java.awt.ColorgetSundayForeground()Returns the Sunday foreground.java.lang.StringgetTodayButtonText()java.awt.ColorgetWeekdayForeground()Returns the weekday foreground.JYearChoosergetYearChooser()Gets the yearChooser attribute of the JCalendar objectbooleanisDecorationBackgroundVisible()Gets the visibility of the decoration background.booleanisDecorationBordersVisible()Gets the visibility of the decoration border.booleanisEnabled()Returns true, if enabled.booleanisNullDateButtonVisible()booleanisTodayButtonVisible()booleanisWeekOfYearVisible()Indicates if the weeks of year are visible..static voidmain(java.lang.String[] s)Creates a JFrame with a JCalendar inside and can be used for testing.voidpropertyChange(java.beans.PropertyChangeEvent evt)JCalendar is a PropertyChangeListener, for its day, month and year chooser.voidsetBackground(java.awt.Color bg)Sets the background color.voidsetCalendar(java.util.Calendar c)Sets the calendar property.voidsetDate(java.util.Date date)Sets the date.voidsetDecorationBackgroundColor(java.awt.Color decorationBackgroundColor)Sets the background of days and weeks of year buttons.voidsetDecorationBackgroundVisible(boolean decorationBackgroundVisible)Sets the decoration background visible.voidsetDecorationBordersVisible(boolean decorationBordersVisible)Sets the decoration borders visible.voidsetEnabled(boolean enabled)Enable or disable the JCalendar.voidsetFont(java.awt.Font font)Sets the font property.voidsetForeground(java.awt.Color fg)Sets the foreground color.voidsetLocale(java.util.Locale l)Sets the locale property.voidsetMaxDayCharacters(int maxDayCharacters)Sets the maximum number of characters per day in the day bar.voidsetMaxSelectableDate(java.util.Date max)Sets the maximum selectable date.voidsetMinSelectableDate(java.util.Date min)Sets the minimum selectable date.voidsetNullDateButtonText(java.lang.String nullDateButtonText)Sets the Null Date button text.voidsetNullDateButtonVisible(boolean isNullDateButtonVisible)Sets the Null Date button visible.voidsetSelectableDateRange(java.util.Date min, java.util.Date max)Sets a valid date range for selectable dates.voidsetSundayForeground(java.awt.Color sundayForeground)Sets the Sunday foreground.voidsetTodayButtonText(java.lang.String todayButtonText)Sets the Today button text.voidsetTodayButtonVisible(boolean isTodayButtonVisible)Sets the Today button visible.voidsetWeekdayForeground(java.awt.Color weekdayForeground)Sets the weekday foreground.voidsetWeekOfYearVisible(boolean weekOfYearVisible)Sets the week of year visible.-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, 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, 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, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, 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
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, 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, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, 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, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
-
-
-
Field Detail
-
dayChooser
protected JDayChooser dayChooser
the day chooser
-
weekOfYearVisible
protected boolean weekOfYearVisible
indicates if weeks of year shall be visible
-
locale
protected java.util.Locale locale
the locale
-
monthChooser
public JMonthChooser monthChooser
the month chooser
-
yearChooser
protected JYearChooser yearChooser
the year chooser
-
-
Constructor Detail
-
JCalendar
public JCalendar()
Default JCalendar constructor.
-
JCalendar
public JCalendar(java.util.Date date)
JCalendar constructor which allows the initial date to be set.- Parameters:
date- the date
-
JCalendar
public JCalendar(java.util.Calendar calendar)
JCalendar constructor which allows the initial calendar to be set.- Parameters:
calendar- the calendar
-
JCalendar
public JCalendar(java.util.Locale locale)
JCalendar constructor allowing the initial locale to be set.- Parameters:
locale- the new locale
-
JCalendar
public JCalendar(java.util.Date date, java.util.Locale locale)JCalendar constructor specifying both the initial date and locale.- Parameters:
date- the datelocale- the new locale
-
JCalendar
public JCalendar(java.util.Date date, boolean monthSpinner)JCalendar constructor specifying both the initial date and the month spinner type.- Parameters:
date- the datemonthSpinner- false, if no month spinner should be used
-
JCalendar
public JCalendar(java.util.Locale locale, boolean monthSpinner)JCalendar constructor specifying both the locale and the month spinner.- Parameters:
locale- the localemonthSpinner- false, if no month spinner should be used
-
JCalendar
public JCalendar(boolean monthSpinner)
JCalendar constructor specifying the month spinner type.- Parameters:
monthSpinner- false, if no month spinner should be used
-
JCalendar
public JCalendar(java.util.Date date, java.util.Locale locale, boolean monthSpinner, boolean weekOfYearVisible)JCalendar constructor with month spinner parameter.- Parameters:
date- the datelocale- the localemonthSpinner- false, if no month spinner should be usedweekOfYearVisible- true, if weeks of year shall be visible
-
-
Method Detail
-
main
public static void main(java.lang.String[] s)
Creates a JFrame with a JCalendar inside and can be used for testing.- Parameters:
s- The command line arguments
-
getCalendar
public java.util.Calendar getCalendar()
Returns the calendar property.- Returns:
- the value of the calendar property.
-
getDayChooser
public JDayChooser getDayChooser()
Gets the dayChooser attribute of the JCalendar object- Returns:
- the dayChooser value
-
getLocale
public java.util.Locale getLocale()
Returns the locale.- Overrides:
getLocalein classjava.awt.Component- Returns:
- the value of the locale property.
- See Also:
setLocale(java.util.Locale)
-
getMonthChooser
public JMonthChooser getMonthChooser()
Gets the monthChooser attribute of the JCalendar object- Returns:
- the monthChooser value
-
getYearChooser
public JYearChooser getYearChooser()
Gets the yearChooser attribute of the JCalendar object- Returns:
- the yearChooser value
-
isWeekOfYearVisible
public boolean isWeekOfYearVisible()
Indicates if the weeks of year are visible..- Returns:
- boolean true, if weeks of year are visible
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent evt)
JCalendar is a PropertyChangeListener, for its day, month and year chooser.- Specified by:
propertyChangein interfacejava.beans.PropertyChangeListener- Parameters:
evt- the property change event
-
setBackground
public void setBackground(java.awt.Color bg)
Sets the background color.- Overrides:
setBackgroundin classjavax.swing.JComponent- Parameters:
bg- the new background
-
setCalendar
public void setCalendar(java.util.Calendar c)
Sets the calendar property. This is a bound property.- Parameters:
c- the new calendar- Throws:
java.lang.NullPointerException- - if c is null;- See Also:
getCalendar()
-
setEnabled
public void setEnabled(boolean enabled)
Enable or disable the JCalendar.- Overrides:
setEnabledin classjavax.swing.JComponent- Parameters:
enabled- the new enabled value
-
isEnabled
public boolean isEnabled()
Returns true, if enabled.- Overrides:
isEnabledin classjava.awt.Component- Returns:
- true, if enabled.
-
setFont
public void setFont(java.awt.Font font)
Sets the font property.- Overrides:
setFontin classjavax.swing.JComponent- Parameters:
font- the new font
-
setForeground
public void setForeground(java.awt.Color fg)
Sets the foreground color.- Overrides:
setForegroundin classjavax.swing.JComponent- Parameters:
fg- the new foreground
-
setLocale
public void setLocale(java.util.Locale l)
Sets the locale property. This is a bound property.- Overrides:
setLocalein classjava.awt.Component- Parameters:
l- the new locale value- See Also:
getLocale()
-
setWeekOfYearVisible
public void setWeekOfYearVisible(boolean weekOfYearVisible)
Sets the week of year visible.- Parameters:
weekOfYearVisible- true, if weeks of year shall be visible
-
isDecorationBackgroundVisible
public boolean isDecorationBackgroundVisible()
Gets the visibility of the decoration background.- Returns:
- true, if the decoration background is visible.
-
setDecorationBackgroundVisible
public void setDecorationBackgroundVisible(boolean decorationBackgroundVisible)
Sets the decoration background visible.- Parameters:
decorationBackgroundVisible- true, if the decoration background should be visible.
-
isDecorationBordersVisible
public boolean isDecorationBordersVisible()
Gets the visibility of the decoration border.- Returns:
- true, if the decoration border is visible.
-
setDecorationBordersVisible
public void setDecorationBordersVisible(boolean decorationBordersVisible)
Sets the decoration borders visible.- Parameters:
decorationBordersVisible- true, if the decoration borders should be visible.
-
getDecorationBackgroundColor
public java.awt.Color getDecorationBackgroundColor()
Returns the color of the decoration (day names and weeks).- Returns:
- the color of the decoration (day names and weeks).
-
setDecorationBackgroundColor
public void setDecorationBackgroundColor(java.awt.Color decorationBackgroundColor)
Sets the background of days and weeks of year buttons.- Parameters:
decorationBackgroundColor- the background color
-
getSundayForeground
public java.awt.Color getSundayForeground()
Returns the Sunday foreground.- Returns:
- Color the Sunday foreground.
-
getWeekdayForeground
public java.awt.Color getWeekdayForeground()
Returns the weekday foreground.- Returns:
- Color the weekday foreground.
-
setSundayForeground
public void setSundayForeground(java.awt.Color sundayForeground)
Sets the Sunday foreground.- Parameters:
sundayForeground- the sundayForeground to set
-
setWeekdayForeground
public void setWeekdayForeground(java.awt.Color weekdayForeground)
Sets the weekday foreground.- Parameters:
weekdayForeground- the weekdayForeground to set
-
getDate
public java.util.Date getDate()
Returns a Date object.- Returns:
- a date object constructed from the calendar property.
-
setDate
public void setDate(java.util.Date date)
Sets the date. Fires the property change "date".- Parameters:
date- the new date.- Throws:
java.lang.NullPointerException- - if the date is null
-
setSelectableDateRange
public void setSelectableDateRange(java.util.Date min, java.util.Date max)Sets a valid date range for selectable dates. If max is before min, the default range with no limitation is set.- Parameters:
min- the minimum selectable date or null (then the minimum date is set to 01\01\0001)max- the maximum selectable date or null (then the maximum date is set to 01\01\9999)
-
getMaxSelectableDate
public java.util.Date getMaxSelectableDate()
Gets the minimum selectable date.- Returns:
- the minimum selectable date
-
getMinSelectableDate
public java.util.Date getMinSelectableDate()
Gets the maximum selectable date.- Returns:
- the maximum selectable date
-
setMaxSelectableDate
public void setMaxSelectableDate(java.util.Date max)
Sets the maximum selectable date.- Parameters:
max- maximum selectable date
-
setMinSelectableDate
public void setMinSelectableDate(java.util.Date min)
Sets the minimum selectable date.- Parameters:
min- minimum selectable date
-
getMaxDayCharacters
public int getMaxDayCharacters()
Gets the maximum number of characters of a day name or 0. If 0 is returned, dateFormatSymbols.getShortWeekdays() will be used.- Returns:
- the maximum number of characters of a day name or 0.
-
setMaxDayCharacters
public void setMaxDayCharacters(int maxDayCharacters)
Sets the maximum number of characters per day in the day bar. Valid values are 0-4. If set to 0, dateFormatSymbols.getShortWeekdays() will be used, otherwise theses strings will be reduced to the maximum number of characters.- Parameters:
maxDayCharacters- the maximum number of characters of a day name.
-
setTodayButtonVisible
public void setTodayButtonVisible(boolean isTodayButtonVisible)
Sets the Today button visible.- Parameters:
isTodayButtonVisible- true, is the today button shall be visible.
-
isTodayButtonVisible
public boolean isTodayButtonVisible()
- Returns:
- true, if Today button is visible.
-
setNullDateButtonVisible
public void setNullDateButtonVisible(boolean isNullDateButtonVisible)
Sets the Null Date button visible.- Parameters:
isNullDateButtonVisible- true, is the Null Date button shall be visible.
-
isNullDateButtonVisible
public boolean isNullDateButtonVisible()
- Returns:
- true, if Null Date button is visible.
-
getTodayButtonText
public java.lang.String getTodayButtonText()
- Returns:
- the text of the Today button
-
setTodayButtonText
public void setTodayButtonText(java.lang.String todayButtonText)
Sets the Today button text.- Parameters:
todayButtonText- the new text
-
getNullDateButtonText
public java.lang.String getNullDateButtonText()
- Returns:
- the text of the Null Date button
-
setNullDateButtonText
public void setNullDateButtonText(java.lang.String nullDateButtonText)
Sets the Null Date button text.- Parameters:
nullDateButtonText- the new text
-
-