001 /*
002 * Copyright (c) 2009 The openGion Project.
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
013 * either express or implied. See the License for the specific language
014 * governing permissions and limitations under the License.
015 */
016 package org.opengion.hayabusa.taglib;
017
018 import org.opengion.hayabusa.common.HybsSystem;
019 import org.opengion.fukurou.util.XHTMLTag;
020
021 /**
022 * æŒ?®šã?ä½ç½®ã«ç”»åƒã‚’é…ç½®ã™ã‚‹HTML拡張タグã§ã™ã?
023 *
024 * @og.formSample
025 * â—å½¢å¼ï¼?lt;og:img src="?¥?¥?¥" alt="?¥?¥?¥"; />
026 * â—body?šãªã?
027 *
028 * â—Tag定義??
029 * <og:img
030 * name ã€HTML】åå‰ã‚’æŒ?®šã—ã¾ã?
031 * src â—‹ã?HTML】表示ã•ã›ã‚‹ç”»åƒã?URLを指定ã—ã¾ã?å¿??)ã€?
032 * alt â—‹ã?HTML】画åƒãŒè¡¨ç¤ºã•れãªã??åˆã?代ã‚りã«è¡¨ç¤ºã•ã›ã‚‹ãƒ†ã‚ストをæŒ?®šã—ã¾ã?å¿??)ã€?
033 * longdesc ã€HTML】画åƒéƒ¨åˆ?«ã¤ã?¦ã®è©³ã—ã„æƒ??ãŒã‚ã‚‹URL(longdesc)を指定ã—ã¾ã?
034 * width ã€HTML】横å¹?‚’ピクセル数ã¾ãŸã???§æŒ?®šã—ã¾ã?
035 * height ã€HTML】縦å¹?‚’ピクセル数ã¾ãŸã???§æŒ?®šã—ã¾ã?
036 * usemap ã€HTML】クライアントサイドクリãƒ?‚«ãƒ–ルを指定ã—ã¾ã?
037 * ismap ã€HTML】サーãƒã?サイドクリãƒ?‚«ãƒ–ルを指定ã—ã¾ã?
038 * clazz ã€HTML】è¦ç´?«å¯¾ã—㦠class 属æ?ã‚’è¨å®šã—ã¾ã?
039 * id ã€HTML】è¦ç´?«å¯¾ã—ã¦å›ºæœ‰ã?åå‰(id)ã‚’ã¤ã‘ã‚‹å ´åˆã«è¨å®šã—ã¾ã?
040 * title ã€HTML】è¦ç´?«å¯¾ã™ã‚‹è£œè¶³çš?ƒ…å ±(title)ã‚’è¨å®šã—ã¾ã?
041 * style ã€HTML】ã“ã®è¦ç´?«å¯¾ã—ã¦é©ç”¨ã•ã›ã‚‹ã‚¹ã‚¿ã‚¤ãƒ«ã‚·ãƒ¼ãƒ?style)ã‚’è¨å®šã—ã¾ã?
042 * lang ã€HTML】è¦ç´??å†?®¹ã¨ä»–ã?属æ?値ã®è¨?ª?lang,xml:lang)を指定ã—ã¾ã?
043 * dir ã€HTML】文å—表記ã?æ–¹å?dir)を指定ã—ã¾ã?
044 * onClick ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onClick ã‚’è¨å®šã—ã¾ã?ä¾?onClick="renew('query.jsp','QUERY');")
045 * onBlur ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onBlur ã‚’è¨å®šã—ã¾ã?ä¾?onBlur="this.value=value.toUpperCase();")
046 * onFocus ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onFocus ã‚’è¨å®šã—ã¾ã?
047 * ondblClick ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?ondblClick ã‚’è¨å®šã—ã¾ã?
048 * onMouseDown ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onMouseDown ã‚’è¨å®šã—ã¾ã?
049 * onMouseUp ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onMouseUp ã‚’è¨å®šã—ã¾ã?
050 * onMouseMove ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onMouseMove ã‚’è¨å®šã—ã¾ã?
051 * onMouseOut ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onMouseOut ã‚’è¨å®šã—ã¾ã?
052 * onMouseOver ã€HTML】JavaScriptã®ã‚¤ãƒ™ãƒ³ãƒ?onMouseOver ã‚’è¨å®šã—ã¾ã?
053 * roles ã€TAG】ãƒãƒ¼ãƒ«ã‚’ã‚»ãƒ?ƒˆã—ã¾ã?
054 * caseKey ã€TAG】ã“ã®ã‚¿ã‚°è‡ªä½“を利用ã™ã‚‹ã‹ã©ã?‹ã®æ¡ä»¶ã‚ーを指定ã—ã¾ã?åˆæœŸå€¤:null) 5.7.7.2 (2014/06/20)
055 * caseVal ã€TAG】ã“ã®ã‚¿ã‚°è‡ªä½“を利用ã™ã‚‹ã‹ã©ã?‹ã®æ¡ä»¶å€¤ã‚’指定ã—ã¾ã?åˆæœŸå€¤:null) 5.7.7.2 (2014/06/20)
056 * caseNN ã€TAG】指定ã?値ãŒã?null/ã‚¼ãƒæ–?—å? ã§ãªã??å?Not Null=NN)ã¯ã€ã“ã®ã‚¿ã‚°ã¯ä½¿ç”¨ã•れã¾ã?åˆæœŸå€¤:true) 5.7.7.2 (2014/06/20)
057 * caseNull ã€TAG】指定ã?値ãŒã?null/ã‚¼ãƒæ–?—å? ã®å ´åˆã?ã€ã“ã®ã‚¿ã‚°ã¯ä½¿ç”¨ã•れã¾ã?åˆæœŸå€¤:true) 5.7.7.2 (2014/06/20)
058 * debug ã€TAG】デãƒãƒƒã‚°æƒ??ã‚’å?力ã™ã‚‹ã‹ã©ã?‹[true/false]を指定ã—ã¾ã?åˆæœŸå€¤:false)
059 * />
060 *
061 * â—使用ä¾?
062 * <og:img src="{@URL}" alt="sample" />
063 *
064 * src : 表示ã•ã›ã‚‹ç”»åƒã?URL(å¿??)
065 * alt : ç”»åƒãŒè¡¨ç¤ºã•れãªã??åˆã?代ã‚りã«è¡¨ç¤ºã•ã›ã‚‹ãƒ†ã‚スãƒ?å¿??)
066 *
067 * @og.group ç”»é¢éƒ¨å“?
068 *
069 * @version 4.0
070 * @author Kohei Naruse
071 * @since JDK5.0,
072 */
073 public class ImageTag extends HTMLTagSupport {
074 //* ã“ã?プãƒã‚°ãƒ©ãƒ??VERSIONæ–?—å?ã‚’è¨å®šã—ã¾ã™ã? {@value} */
075 private static final String VERSION = "4.0.0.0 (2005/01/31)" ;
076
077 private static final long serialVersionUID = 400020050131L ;
078
079 /**
080 * æŒ?®šä½ç½®ã«ç”»åƒã‚’é…ç½®ã™ã‚‹ãŸã‚ã®ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚¿ã‚°ã‚’作æ?ã—ã¾ã™ã?
081 *
082 * @return イメージタグ
083 */
084 @Override
085 protected String makeTag() {
086 StringBuilder rtn = new StringBuilder( HybsSystem.BUFFER_MIDDLE );
087
088 rtn.append(XHTMLTag.img(getAttributes()));
089
090 return rtn.toString();
091 }
092
093 /**
094 * ã€HTML】åå‰ã‚’æŒ?®šã—ã¾ã™ã?
095 *
096 * @og.tag åå‰ã‚’指定ã—ã¾ã™ã?
097 *
098 * @param name åå‰
099 */
100 public void setName( final String name ) {
101 set( "name",getRequestParameter( name ) );
102 }
103
104 /**
105 * ã€HTML】表示ã•ã›ã‚‹ç”»åƒã?URLを指定ã—ã¾ã™ã?
106 *
107 * @og.tag 表示ã•ã›ã‚‹ç”»åƒã?URLを指定ã—ã¾ã™ã?
108 *
109 * @param src ç”»åƒã?URL
110 */
111 public void setSrc( final String src ) {
112 set( "src",getRequestParameter( src ) );
113 }
114
115 /**
116 * ã€HTML】画åƒãŒè¡¨ç¤ºã•れãªã??åˆã?代ã‚りã«è¡¨ç¤ºã•ã›ã‚‹ãƒ†ã‚ストをæŒ?®šã—ã¾ã™ã?
117 *
118 * @og.tag ç”»åƒãŒè¡¨ç¤ºã•れãªã??åˆã?代ã‚りã«è¡¨ç¤ºã•ã›ã‚‹ãƒ†ã‚ストをæŒ?®šã—ã¾ã™ã?
119 *
120 * @param alt 代替ãˆãƒ†ã‚スãƒ?
121 */
122 public void setAlt( final String alt ) {
123 set( "alt",getRequestParameter( alt ) );
124 }
125
126 /**
127 * ã€HTML】画åƒéƒ¨åˆ?«ã¤ã?¦ã®è©³ã—ã„æƒ??ãŒã‚ã‚‹URL(longdesc)を指定ã—ã¾ã™ã?
128 *
129 * @og.tag longdescを指定ã—ã¾ã™ã?
130 *
131 * @param longdesc 詳ã—ã„æƒ??ãŒã‚ã‚‹URL
132 */
133 public void setLongdesc( final String longdesc ) {
134 set( "longdesc",getRequestParameter( longdesc ) );
135 }
136
137 /**
138 * ã€HTML】横å¹?‚’ピクセル数ã¾ãŸã???§æŒ?®šã—ã¾ã™ã?
139 *
140 * @og.tag 横å¹?‚’æŒ?®šã—ã¾ã™ã?
141 *
142 * @param width 横å¹?ピクセル数ã¾ãŸã???
143 */
144 public void setWidth( final String width ) {
145 set( "width",getRequestParameter( width ) );
146 }
147
148 /**
149 * ã€HTML】縦å¹?‚’ピクセル数ã¾ãŸã???§æŒ?®šã—ã¾ã™ã?
150 *
151 * @og.tag 縦å¹?‚’æŒ?®šã—ã¾ã™ã?
152 *
153 * @param height 縦å¹?ピクセル数ã¾ãŸã???
154 */
155 public void setHeight( final String height ) {
156 set( "height",getRequestParameter( height ) );
157 }
158
159 /**
160 * ã€HTML】クライアントサイドクリãƒ?‚«ãƒ–ルを指定ã—ã¾ã™ã?
161 *
162 * @og.tag クライアントサイドクリãƒ?‚«ãƒ–ルを指定ã—ã¾ã™ã?
163 *
164 * @param usemap クライアントサイドクリãƒ?‚«ãƒ–ル
165 */
166 public void setUsemap( final String usemap ) {
167 set( "usemap",getRequestParameter( usemap ) );
168 }
169
170 /**
171 * ã€HTML】サーãƒã?サイドクリãƒ?‚«ãƒ–ルを指定ã—ã¾ã™ã?
172 *
173 * @og.tag サーãƒã?サイドクリãƒ?‚«ãƒ–ルを指定ã—ã¾ã™ã?
174 *
175 * @param ismap クライアントサイドクリãƒ?‚«ãƒ–ル
176 */
177 public void setIsmap( final String ismap ) {
178 set( "ismap",getRequestParameter( ismap ) );
179 }
180
181 /**
182 * ã‚¿ã‚°ã®åç§°ã‚’ã?è¿”ã—ã¾ã™ã?
183 * 自åˆ??身ã®ã‚¯ãƒ©ã‚¹åよりã?自動的ã«å–り出ã›ãªã?Ÿã‚ã?ã“ã?メソãƒ?ƒ‰ã‚’オーãƒã?ライドã—ã¾ã™ã?
184 *
185 * @og.rev 4.0.0.0 (2005/01/31) æ–°è¦è¿½åŠ?
186 *
187 * @return ã‚¿ã‚°ã®åç§°
188 */
189 @Override
190 protected String getTagName() {
191 return "img" ;
192 }
193 }