001    package org.jdesktop.swingx.plaf;
002    
003    import javax.swing.plaf.ComponentUI;
004    
005    public abstract class MonthViewUI extends ComponentUI {
006        /**
007         * Return a long representing the date at the specified x/y position.
008         * It is expected that the date returned will have a valid day, month
009         * and year.  All other fields such as hour, minute, second and milli-
010         * second will be set to 0.
011         * @param x X position
012         * @param y Y position
013         * @return long The date, -1 if position does not contain a date.
014         */
015        public abstract long getDayAt(int x, int y);
016    
017        /**
018         * Calculate the last possible date that can be displayed.
019         * This is implemented by the UI since it is in control of layout
020         * and may possibly yeild different results based on implementation.
021         * @return long The date.
022         */
023        public abstract long calculateLastDisplayedDate();
024    }