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.BodyContentDescription;
021    import org.apache.myfaces.tobago.apt.annotation.Facet;
022    import org.apache.myfaces.tobago.apt.annotation.Tag;
023    import org.apache.myfaces.tobago.apt.annotation.UIComponentTag;
024    import org.apache.myfaces.tobago.taglib.decl.HasCommandType;
025    import org.apache.myfaces.tobago.taglib.decl.HasDeprecatedWidth;
026    import org.apache.myfaces.tobago.taglib.decl.HasIdBindingAndRendered;
027    import org.apache.myfaces.tobago.taglib.decl.HasImage;
028    import org.apache.myfaces.tobago.taglib.decl.HasLabelAndAccessKey;
029    import org.apache.myfaces.tobago.taglib.decl.HasMarkup;
030    import org.apache.myfaces.tobago.taglib.decl.HasTabIndex;
031    import org.apache.myfaces.tobago.taglib.decl.HasTarget;
032    import org.apache.myfaces.tobago.taglib.decl.HasTip;
033    import org.apache.myfaces.tobago.taglib.decl.IsDefaultCommand;
034    import org.apache.myfaces.tobago.taglib.decl.IsDisabled;
035    import org.apache.myfaces.tobago.taglib.decl.IsInline;
036    
037    /*
038     * Created by IntelliJ IDEA.
039     * User: bommel
040     * Date: 10.02.2006
041     * Time: 22:00:03
042     */
043    
044    /**
045     * Renders a button element.
046     */
047    @Tag(name = "button", tagExtraInfoClassName = "org.apache.myfaces.tobago.taglib.component.CommandTagExtraInfo")
048    @BodyContentDescription(anyTagOf = "facestag")
049    @UIComponentTag(
050        uiComponent = "org.apache.myfaces.tobago.component.UIButtonCommand",
051        rendererType = "Button",
052        facets = {
053            @Facet(name="confirmation", description = "Contains a UIOutput instance with the confirmation message."),
054            @Facet(name="popup", description = "Contains a UIPopup instance.")})
055    public interface ButtonTagDeclaration extends AbstractCommandTagDeclaration,
056        HasIdBindingAndRendered, HasLabelAndAccessKey, HasImage,
057        IsDisabled, HasCommandType, IsDefaultCommand, HasDeprecatedWidth, HasTip, 
058        IsInline, HasTarget, HasMarkup, HasTabIndex {
059    }