1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, 13 * software distributed under the License is distributed on an 14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 * KIND, either express or implied. See the License for the 16 * specific language governing permissions and limitations 17 * under the License. 18 */ 19 20 package org.apache.myfaces.custom.schedule; 21 22 import java.io.Serializable; 23 24 import org.apache.myfaces.component.UserRoleAware; 25 26 /** 27 * A schedule component similar to the ones found in Outlook or Evolution 28 * <p> 29 * Renders a schedule component, showing appointments and events 30 * in a day, workweek, week or month view, similar to the schedule 31 * part of MS Outlook or Evolution. 32 * </p><p> 33 * The component is backed by an implementation of the 34 * ScheduleModel interface. Creating a custom model can be easily 35 * achieved by implementing this interface, or by overriding 36 * the AbstractScheduleModel class. 37 * </p><p> 38 * AbstractHtmlSchedule class holds all properties specific to the HTML version of the Schedule component. 39 * </p> 40 * 41 * @JSFComponent 42 * name = "t:schedule" 43 * class = "org.apache.myfaces.custom.schedule.HtmlSchedule" 44 * tagClass = "org.apache.myfaces.custom.schedule.ScheduleTag" 45 * tagHandler = "org.apache.myfaces.custom.schedule.ScheduleTagHandler" 46 * implements = "java.io.Serializable" 47 * serialuid = "5859593107442371656L" 48 * 49 * @author Bruno Aranda (latest modification by $Author: lu4242 $) 50 * @author Jurgen Lust 51 * @since 1.1.7 52 * @version $Revision: 691856 $ 53 */ 54 public abstract class AbstractHtmlSchedule extends UISchedule implements UserRoleAware, 55 Serializable 56 { 57 58 //private static final long serialVersionUID = 5859593107442371656L; 59 60 public static final String COMPONENT_FAMILY = "javax.faces.Panel"; 61 public static final String COMPONENT_TYPE = "org.apache.myfaces.Schedule"; 62 private static final String DEFAULT_RENDERER_TYPE = "org.apache.myfaces.Schedule"; 63 64 /** 65 * @JSFProperty 66 * @return the backgroundClass 67 */ 68 public abstract String getBackgroundClass(); 69 70 /** 71 * @JSFProperty 72 * @return the columnClass 73 */ 74 public abstract String getColumnClass(); 75 76 /** 77 * @JSFProperty 78 * @return the contentClass 79 */ 80 public abstract String getContentClass(); 81 82 /** 83 * @JSFProperty 84 * @return the dateClass 85 */ 86 public abstract String getDateClass(); 87 88 /** 89 * @JSFProperty 90 * @return the dayClass 91 */ 92 public abstract String getDayClass(); 93 94 /** 95 * @JSFProperty 96 * @return the entryClass 97 */ 98 public abstract String getEntryClass(); 99 100 /** 101 * @JSFProperty 102 * @return the entryRenderer 103 */ 104 public abstract Object getEntryRenderer(); 105 106 /** 107 * @JSFProperty 108 * @return the evenClass 109 */ 110 public abstract String getEvenClass(); 111 112 /** 113 * @JSFProperty 114 * @return the foregroundClass 115 */ 116 public abstract String getForegroundClass(); 117 118 /** 119 * @JSFProperty 120 * @return the freeClass 121 */ 122 public abstract String getFreeClass(); 123 124 /** 125 * @JSFProperty 126 * @return the gutterClass 127 */ 128 public abstract String getGutterClass(); 129 130 /** 131 * @JSFProperty 132 * @return the headerClass 133 */ 134 public abstract String getHeaderClass(); 135 136 /** 137 * @JSFProperty 138 * @return the holidayClass 139 */ 140 public abstract String getHolidayClass(); 141 142 /** 143 * @JSFProperty 144 * @return the hoursClass 145 */ 146 public abstract String getHoursClass(); 147 148 /** 149 * @JSFProperty 150 * @return the inactiveDayClass 151 */ 152 public abstract String getInactiveDayClass(); 153 154 /** 155 * @JSFProperty 156 * @return the minutesClass 157 */ 158 public abstract String getMinutesClass(); 159 160 /** 161 * @JSFProperty 162 * @return the monthClass 163 */ 164 public abstract String getMonthClass(); 165 166 /** 167 * @JSFProperty 168 * @return the selectedClass 169 */ 170 public abstract String getSelectedClass(); 171 172 /** 173 * @JSFProperty 174 * @return the selectedEntryClass 175 */ 176 public abstract String getSelectedEntryClass(); 177 178 /** 179 * @JSFProperty 180 * @return the subtitleClass 181 */ 182 public abstract String getSubtitleClass(); 183 184 /** 185 * @JSFProperty 186 * @return the textClass 187 */ 188 public abstract String getTextClass(); 189 190 /** 191 * @JSFProperty 192 * @return the titleClass 193 */ 194 public abstract String getTitleClass(); 195 196 /** 197 * @JSFProperty 198 * @return the unevenClass 199 */ 200 public abstract String getUnevenClass(); 201 202 /** 203 * the css class of the table representing a week in the compact mode (default: week) 204 * 205 * @JSFProperty 206 * @return the weekClass 207 */ 208 public abstract String getWeekClass(); 209 210 } 211 //The End