001 package org.apache.myfaces.tobago.taglib.component; 002 003 /* 004 * Licensed to the Apache Software Foundation (ASF) under one or more 005 * contributor license agreements. See the NOTICE file distributed with 006 * this work for additional information regarding copyright ownership. 007 * The ASF licenses this file to You under the Apache License, Version 2.0 008 * (the "License"); you may not use this file except in compliance with 009 * the License. You may obtain a copy of the License at 010 * 011 * http://www.apache.org/licenses/LICENSE-2.0 012 * 013 * Unless required by applicable law or agreed to in writing, software 014 * distributed under the License is distributed on an "AS IS" BASIS, 015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 016 * See the License for the specific language governing permissions and 017 * limitations under the License. 018 */ 019 020 import org.apache.myfaces.tobago.apt.annotation.Tag; 021 import org.apache.myfaces.tobago.apt.annotation.TagAttribute; 022 import org.apache.myfaces.tobago.apt.annotation.UIComponentTag; 023 import org.apache.myfaces.tobago.apt.annotation.UIComponentTagAttribute; 024 import org.apache.myfaces.tobago.apt.annotation.Facet; 025 import org.apache.myfaces.tobago.taglib.decl.HasBinding; 026 import org.apache.myfaces.tobago.taglib.decl.HasDimension; 027 import org.apache.myfaces.tobago.taglib.decl.HasId; 028 import org.apache.myfaces.tobago.taglib.decl.HasLabel; 029 import org.apache.myfaces.tobago.taglib.decl.HasState; 030 031 /* 032 * Created by IntelliJ IDEA. 033 * User: bommel 034 * Date: 30.03.2006 035 * Time: 21:57:22 036 */ 037 /** 038 * TODO description of page tag 039 */ 040 @Tag(name = "page") 041 @UIComponentTag( 042 uiComponent = "org.apache.myfaces.tobago.component.UIPage", 043 rendererType = "Page", 044 facets = 045 { @Facet(name = "action", description ="Contains an instance of UICommand (tc:command) for an auto-action"), 046 @Facet(name = "menuBar", description = "Menubar"), 047 @Facet(name="layout", description = "Contains an instance of UILayout")}) 048 049 public interface PageTagDeclaration extends TobagoBodyTagDeclaration, HasLabel, HasId, HasDimension, HasBinding, 050 HasState { 051 /** 052 * Possible values for doctype are: 053 * <dl> 054 * <dt>strict</dt><dd>HTML 4.01 Strict DTD</dd> 055 * <dt>loose</dt><dd>HTML 4.01 Transitional DTD</dd> 056 * <dt>frameset</dt><dd>HTML 4.01 Frameset DTD</dd> 057 * </dl> 058 * All other values are ignored and no DOCTYPE is set. 059 * The default value is 'loose'. 060 */ 061 @TagAttribute 062 @UIComponentTagAttribute(defaultValue = "loose") 063 void setDoctype(String doctype); 064 065 /** 066 * Contains the id of the component wich should have the focus after 067 * loading the page. 068 * Set to emtpy string for disabling setting of focus. 069 * Default (null) enables the "auto focus" feature. 070 */ 071 @TagAttribute 072 @UIComponentTagAttribute() 073 void setFocusId(String focusId); 074 075 /** 076 * Absolute URL to an image or image name to lookup in tobago resource path 077 * representing the application. In HTML it is used as a favicon. 078 */ 079 @TagAttribute 080 @UIComponentTagAttribute() 081 void setApplicationIcon(String icon); 082 083 }