Package org.jfree.ui
Class SerialDateChooserPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.jfree.ui.SerialDateChooserPanel
-
- All Implemented Interfaces:
java.awt.event.ActionListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible
public class SerialDateChooserPanel extends javax.swing.JPanel implements java.awt.event.ActionListenerA panel that allows the user to select a date.This class is incomplete and untested. You should not use it yet...
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description private javax.swing.JButton[]buttonsAn array of buttons used to display the days-of-the-month.private java.awt.ColorchosenOtherButtonColorThe color for dates that are visible, but not in the current month.private SerialDatedateThe date selected in the panel.private java.awt.ColordateButtonColorThe color for the selected date.private java.awt.FontdateFontThe font used to display the date.static java.awt.ColorDEFAULT_DATE_BUTTON_COLORThe default background color for the selected date.static java.awt.ColorDEFAULT_MONTH_BUTTON_COLORThe default background color for the current month.private intfirstDayOfWeekThe first day-of-the-week.private java.awt.ColormonthButtonColorThe color for dates in the current month.private javax.swing.JComboBoxmonthSelectorA combo for selecting the month.private booleanrefreshingA flag that indicates whether or not we are currently refreshing the buttons.private javax.swing.JButtontodayButtonA button for selecting today's date.private intyearSelectionRangeThe range used for selecting years.private javax.swing.JComboBoxyearSelectorA combo for selecting the year.-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description SerialDateChooserPanel()Constructs a new date chooser panel, using today's date as the initial selection.SerialDateChooserPanel(SerialDate date, boolean controlPanel)Constructs a new date chooser panel.SerialDateChooserPanel(SerialDate date, boolean controlPanel, java.awt.Color dateButtonColor, java.awt.Color monthButtonColor)Constructs a new date chooser panel.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent e)Handles action-events from the date panel.private javax.swing.JPanelconstructControlPanel()Returns a panel that appears at the bottom of the calendar panel - contains a button for selecting today's date.private javax.swing.JPanelconstructSelectionPanel()Constructs a panel containing two JComboBoxes (for the month and year) and a button (to reset the date to TODAY).protected java.awt.ColorgetButtonColor(SerialDate targetDate)Returns the button color according to the specified date.private javax.swing.JPanelgetCalendarPanel()Returns a panel of buttons, each button representing a day in the month.SerialDategetDate()Returns the date selected in the panel.private intgetFirstDayOfWeek()Returns the first day of the week (controls the labels in the date panel).protected SerialDategetFirstVisibleDate()Returns the first date that is visible in the grid.private java.util.VectorgetYears(int chosenYear)Returns a vector of years preceding and following the specified year.protected voidrefreshButtons()Update the button labels and colors to reflect date selection.private voidrefreshYearSelector()Changes the contents of the year selection JComboBox to reflect the chosen date and the year range.voidsetDate(SerialDate date)Sets the date chosen in the panel.-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
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, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
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 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, getLocale, 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, 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, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
DEFAULT_DATE_BUTTON_COLOR
public static final java.awt.Color DEFAULT_DATE_BUTTON_COLOR
The default background color for the selected date.
-
DEFAULT_MONTH_BUTTON_COLOR
public static final java.awt.Color DEFAULT_MONTH_BUTTON_COLOR
The default background color for the current month.
-
date
private SerialDate date
The date selected in the panel.
-
dateButtonColor
private java.awt.Color dateButtonColor
The color for the selected date.
-
monthButtonColor
private java.awt.Color monthButtonColor
The color for dates in the current month.
-
chosenOtherButtonColor
private java.awt.Color chosenOtherButtonColor
The color for dates that are visible, but not in the current month.
-
firstDayOfWeek
private int firstDayOfWeek
The first day-of-the-week.
-
yearSelectionRange
private int yearSelectionRange
The range used for selecting years.
-
dateFont
private java.awt.Font dateFont
The font used to display the date.
-
monthSelector
private javax.swing.JComboBox monthSelector
A combo for selecting the month.
-
yearSelector
private javax.swing.JComboBox yearSelector
A combo for selecting the year.
-
todayButton
private javax.swing.JButton todayButton
A button for selecting today's date.
-
buttons
private javax.swing.JButton[] buttons
An array of buttons used to display the days-of-the-month.
-
refreshing
private boolean refreshing
A flag that indicates whether or not we are currently refreshing the buttons.
-
-
Constructor Detail
-
SerialDateChooserPanel
public SerialDateChooserPanel()
Constructs a new date chooser panel, using today's date as the initial selection.
-
SerialDateChooserPanel
public SerialDateChooserPanel(SerialDate date, boolean controlPanel)
Constructs a new date chooser panel.- Parameters:
date- the date.controlPanel- a flag that indicates whether or not the 'today' button should appear on the panel.
-
SerialDateChooserPanel
public SerialDateChooserPanel(SerialDate date, boolean controlPanel, java.awt.Color dateButtonColor, java.awt.Color monthButtonColor)
Constructs a new date chooser panel.- Parameters:
date- the date.controlPanel- the control panel.dateButtonColor- the date button color.monthButtonColor- the month button color.
-
-
Method Detail
-
setDate
public void setDate(SerialDate date)
Sets the date chosen in the panel.- Parameters:
date- the new date.
-
getDate
public SerialDate getDate()
Returns the date selected in the panel.- Returns:
- the selected date.
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent e)
Handles action-events from the date panel.- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener- Parameters:
e- information about the event that occurred.
-
getCalendarPanel
private javax.swing.JPanel getCalendarPanel()
Returns a panel of buttons, each button representing a day in the month. This is a sub-component of the DatePanel.- Returns:
- the panel.
-
getButtonColor
protected java.awt.Color getButtonColor(SerialDate targetDate)
Returns the button color according to the specified date.- Parameters:
targetDate- the target date.- Returns:
- the button color.
-
getFirstVisibleDate
protected SerialDate getFirstVisibleDate()
Returns the first date that is visible in the grid. This should always be in the month preceding the month of the selected date.- Returns:
- the first visible date.
-
getFirstDayOfWeek
private int getFirstDayOfWeek()
Returns the first day of the week (controls the labels in the date panel).- Returns:
- the first day of the week.
-
refreshButtons
protected void refreshButtons()
Update the button labels and colors to reflect date selection.
-
refreshYearSelector
private void refreshYearSelector()
Changes the contents of the year selection JComboBox to reflect the chosen date and the year range.
-
getYears
private java.util.Vector getYears(int chosenYear)
Returns a vector of years preceding and following the specified year. The number of years preceding and following is determined by the yearSelectionRange attribute.- Parameters:
chosenYear- the current year.- Returns:
- a vector of years.
-
constructSelectionPanel
private javax.swing.JPanel constructSelectionPanel()
Constructs a panel containing two JComboBoxes (for the month and year) and a button (to reset the date to TODAY).- Returns:
- the panel.
-
constructControlPanel
private javax.swing.JPanel constructControlPanel()
Returns a panel that appears at the bottom of the calendar panel - contains a button for selecting today's date.- Returns:
- the panel.
-
-