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.taglib.decl.HasIdBindingAndRendered; 025 import org.apache.myfaces.tobago.taglib.decl.HasLabel; 026 import org.apache.myfaces.tobago.taglib.decl.HasTip; 027 import org.apache.myfaces.tobago.taglib.decl.HasWidth; 028 029 /* 030 * Date: 20.02.2006 031 * Time: 22:10:07 032 */ 033 034 /** 035 * Renders a UIComponent that represents a single column of data within a 036 * parent UIData component. 037 */ 038 @Tag(name = "column") 039 @UIComponentTag( 040 uiComponent = "org.apache.myfaces.tobago.component.UIColumn") 041 //rendererType = "Column") 042 public interface ColumnTagDeclaration extends TobagoTagDeclaration, HasIdBindingAndRendered, HasLabel, HasTip, 043 HasWidth { 044 /** 045 * Alignment of this column. 046 */ 047 @TagAttribute 048 @UIComponentTagAttribute() 049 void setAlign(String align); 050 051 /** 052 * Flag indicating whether or not this column is sortable. 053 * To make a column sortable the data of the sheet must be one of 054 * <code>java.util.List</code> or <code>Object[]</code>. 055 */ 056 @TagAttribute 057 @UIComponentTagAttribute(type = {"java.lang.Boolean"}, 058 defaultValue = "false") 059 void setSortable(String sortable); 060 061 /** 062 * Flag indicating whether or not the width of this column is resizable. 063 */ 064 @TagAttribute 065 @UIComponentTagAttribute(type = {"java.lang.Boolean"}, 066 defaultValue = "true") 067 void setResizable(String resizable); 068 069 /** 070 * Indicate markup of this component. 071 * Possible value is 'none'. But this can be overridden in the theme. 072 */ 073 @TagAttribute 074 @UIComponentTagAttribute(defaultValue = "none") 075 void setMarkup(String markup); 076 }