Author: nbelaevski
Date: 2009-07-23 11:08:56 -0400 (Thu, 23 Jul 2009)
New Revision: 14984
Added:
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModel.java
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModelItem.java
Log:
Calendar component API moved
Copied:
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModel.java
(from rev 14980,
root/framework/trunk/api/src/main/java/org/richfaces/model/CalendarDataModel.java)
===================================================================
---
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModel.java
(rev 0)
+++
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModel.java 2009-07-23
15:08:56 UTC (rev 14984)
@@ -0,0 +1,44 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.model;
+
+import java.util.Date;
+/**
+ * @author Alexej Kushunin
+ * created 19.06.2007
+ *
+ */
+public interface CalendarDataModel {
+
+ /**
+ * @return array of CalendarDataModelItems for selected dates.
+ * This method will be called every time when components will need next block of
CalendarDataItems.
+ * That may happens when calendar rendered, or when user navigate to next(previous)
month or in any other case when calendar renders.
+ * This method will be called in Ajax mode when Calendar renders new page.
+ * */
+ public CalendarDataModelItem[] getData(Date[] dateArray);
+
+ /**
+ * @return tool tip when it's used in "single" mode
+ * This method used when tool tips are displayed in "single" mode
+ * */
+ public Object getToolTip(Date date);
+}
Copied:
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModelItem.java
(from rev 14980,
root/framework/trunk/api/src/main/java/org/richfaces/model/CalendarDataModelItem.java)
===================================================================
---
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModelItem.java
(rev 0)
+++
root/ui-sandbox/trunk/components/calendar/api/src/main/java/org/richfaces/model/CalendarDataModelItem.java 2009-07-23
15:08:56 UTC (rev 14984)
@@ -0,0 +1,68 @@
+/**
+ * License Agreement.
+ *
+ * JBoss RichFaces - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+package org.richfaces.model;
+
+
+
+/**
+ * @author Alexej Kushunin
+ * created 19.06.2007
+ *
+ */
+
+public interface CalendarDataModelItem {
+
+ /**
+ *@return true if date is �selectable� on calendar, default implementation return true
+ **/
+ public boolean isEnabled();
+
+ /**
+ * @return String that will be appended to style class for that date span.
+ * For example it may be �relevant holyday� � that mean class will be like �rich-cal-day
relevant holyday�.
+ * Default implementation return empty string.
+ * */
+ public String getStyleClass();
+
+ /**
+ * @return any additional payload that must be JSON-serialazable object.
+ * May be used in custom date representation on calendar (inside custom facet).*/
+ public Object getData();
+
+ /**
+ * @return true if given date has an associated with it tooltip data.
+ * Default implementation return false.*/
+ public boolean hasToolTip();
+
+ /**
+ *@return tool tip data that will be used in �batch� tooltip loading mode.
+ **/
+ public Object getToolTip();
+
+ /**
+ *@return day of the month on which data must be shown.
+ **/
+ public int getDay();
+
+}
+
+
+