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 static org.opengion.fukurou.util.StringUtil.nval;
019
020 import org.opengion.fukurou.util.XHTMLTag;
021 import org.opengion.hayabusa.common.HybsSystem;
022 import org.opengion.hayabusa.resource.GUIInfo;
023
024 /**
025 * ãƒ?‚ストフィールドã?入力を補助するポップアãƒ??を作æ?しますã?
026 *
027 * 通常のãƒ?‚ストフィールドにçµ?�¿込ã‚?‚±ースと、ä¸?¦§表にçµ?�¿込ã‚?‚±ースに対応してã�?�¾すã?
028 * 基本çš?�«は、columnMarker タグと同じ使ã�?–¹ですが、フィールドが書き込み許可時に表示させるå¿?¦�が
029 * あるため、実際には、viewMarker の isRendere="false" で使用するケースが多いと思いますã?
030 * なおã?ポップアãƒ??専用なので href="index.jsp" target="CONTENTS" がデフォルトで設定されてã�?�¾すã?
031 *
032 * @og.formSample
033 * ●形式ï¼?lt;og:popup gamenId="…" href="…" keys="…,…" vals="…,…" rtnKeys="…,…" />
034 * ●body?šなã�?
035 *
036 * ●Tag定義??
037 * <og:popup
038 * name 【TAG】この要ç´?‚’リンクの対象とするための名前を指定しまã�?
039 * gamenId 【TAG】画面ID属æ?を登録しまã�?
040 * href 【TAG】ã?ãƒ??アãƒ??先ã?URLを指定しまã�?初期値:index.jsp)
041 * keys 【TAG】ã?ãƒ??アãƒ??先に渡すå?力キー配å?をCSV形式でè¤?•°æŒ?®šしまã�?
042 * vals 【TAG】ã?ãƒ??アãƒ??先に渡すå?配å?をCSV形式でè¤?•°æŒ?®šしまã�?
043 * rtnKeys 【TAG】ã?ãƒ??アãƒ??先より受け取るキー配å?をCSV形式でè¤?•°æŒ?®šしまã�?
044 * column 【TAG】リンクをつけたã�?‚«ラãƒ?‚’æŒ?®šしまã�?
045 * onMark 【TAG】リンクを張ã‚?true or 1)/張らなã�?false or 0)の設定をæŒ?®šしまã�?初期値:true)
046 * markList 【TAG】å?ç�?�™るã?ークをã?"|"区åˆ?‚Šのæ–?—å?でæŒ?®šしまã�?
047 * height 【TAG】ダイアログの縦å¹?‚’ピクセル数でæŒ?®šしまã�?
048 * width 【TAG】ダイアログの横å¹?‚’ピクセル数でæŒ?®šしまã�?
049 * src 【TAG】表示させる画像ã?URLを指定しまã�?
050 * charset 【TAG】ã?ãƒ??アãƒ??先ã?æ–?—コードセãƒ?ƒˆを指定しまã�?
051 * target 【TAG】ã?ãƒ??アãƒ??先ã?表示ターゲãƒ?ƒˆを指定しまã�?初期値:CONTENTS)
052 * caseKey 【TAG】このタグ自体を利用するかどã�?�‹の条件キーを指定しまã�?初期値:null)
053 * caseVal 【TAG】このタグ自体を利用するかどã�?�‹の条件値を指定しまã�?初期値:null)
054 * caseNN 【TAG】指定ã?値がã?null/ゼロæ–?—å? でなã�??å�?Not Null=NN)は、このタグは使用されまã�?初期値:true)
055 * caseNull 【TAG】指定ã?値がã?null/ゼロæ–?—å? の場合ã?、このタグは使用されまã�?初期値:true)
056 * id 【HTML】要ç´?�«対して固有ã?名前(id)をつける場合に設定しまã�?
057 * lang 【HTML】要ç´??å†?®¹と他ã?属æ?値のè¨?ª?lang,xml:lang)を指定しまã�?
058 * dir 【HTML】文字表記ã?方å�?dir)を指定しまã�?
059 * title 【HTML】要ç´?�«対する補足çš?ƒ…報(title)を設定しまã�?
060 * style 【HTML】この要ç´?�«対して適用させるスタイルシーãƒ?style)を設定しまã�?
061 * tabindex 【HTML】タブã?移動é?(tabindex)を指定しまã�?0 ??32767)
062 * accesskey 【HTML】アクセスキー(alt+キーで直接æŒ?®?を割り当てまã�?
063 * clazz 【HTML】要ç´?�«対して class 属æ?を設定しまã�?
064 * lbl 【TAG】ラベルリソースのラベルIDを指定しまã�?
065 * language 【TAG】タグå†?ƒ¨で使用するè¨?ªžコード[ja/en/zh/…]を指定しまã�?
066 * command 【TAGã€?通常使ã�?�¾せん)処ç�??実行をæŒ?®šすã‚?command を設定できまã�?初期値:NEW)
067 * append 【TAG】返ってきた値をキャレãƒ?ƒˆ位置に追記するかどã�?�‹(初期値?šfalse)
068 * debug 【TAG】デバッグæƒ??をå?力するかどã�?�‹[true/false]を指定しまã�?初期値:false)
069 * />
070 *
071 * ●使用ä¾?
072 * ・普通ã?ポップアãƒ??
073 * <og:popup gamenId="GE0002" href="index.jsp" target="CONTENTS"
074 * keys="AAA,BBB,CCC" vals="{@AAA},{@B},ABC"
075 * rtnKeys="DDD,EEE" />
076 *
077 * ・QUERYの入力フィールドにçµ?�¿込ã‚?
078 * â‘?eys、vals、rtnKeys がセãƒ?ƒˆされるå?å�?
079 * ã€??ã€??セãƒ?ƒˆされã‚?keys に対して vals の値をã?ãƒ??アãƒ??画面に渡しã?ポップアãƒ??画面の戻りå?ã‚?rtnKeys にセãƒ?ƒˆされますã?
080 * <og:column name="AAA" value="{@AAA}" >
081 * <og:popup gamenId="GE0002"
082 * keys="AAA,BBB,CCC" vals="{@AAA},{@B},ABC"
083 * rtnKeys="DDD,EEE" />
084 * </og:column>
085 * ②keys、vals、rtnKeys がセãƒ?ƒˆされなã�??å�?
086 * ã€??ã€?? ポップアãƒ??画面にリクエスト変数 XNAME に外å?のカラãƒ?��、XVALUE にカラãƒ??入力å?、rtnKeys にカラãƒ?��をè?動的にセãƒ?ƒˆされますã?
087 * <og:column name="AAA" value="{@AAA}" >
088 * <og:popup gamenId="GE0002" />
089 * </og:column>
090 *
091 * ・RESULTの入力フィールドにçµ?�¿込ã‚?viewMarker 経由)
092 * gamenId を指定しなければこã?画面へのURLを作æ?しますã?
093 * こã?URLは、その画面の index.jsp に直接ジャンプするためã?URLですã?
094 * <og:viewMarker command="{@command}" isRenderer="false">
095 * <og:popup gamenId="GE0002" column="ABC" onMark="[ABC]" markList="1|2|3"
096 * keys="AAA,BBB,CCC" vals="[AAA],[BBB].value,{@CCC}"
097 * rtnKeys="DDD,EEE" />
098 * </og:viewMarker>
099 *
100 * ・ポップアãƒ??側のJSPファイル(view 部åˆ?
101 *
102 * @og.group 画面部å“?
103 * @og.rev 3.8.6.1 (2006/10/20) 新規作æ?
104 *
105 * @version 0.9.0 2000/10/17
106 * @author Kazuhiko Hasegawa
107 * @since JDK1.1,
108 */
109 public class PopupTag extends HTMLTagSupport {
110 //* こã?プログラãƒ??VERSIONæ–?—å?を設定しますã? {@value} */
111 private static final String VERSION = "5.2.2.0 (2010/11/01)" ;
112
113 private static final long serialVersionUID = 522020101101L ;
114
115 private static final String DEF_BODY = "▼" ;
116 private static final String DEF_STYLE = "width:20px;text-align:center;" ;
117
118 private String column = null;
119 private String gamenId = null;
120 private String href = "index.jsp";
121 private String target = "CONTENTS";
122 private String onMark = "true"; // true またã? 1
123 private String markList = "true|TRUE|1"; // true またã? 1
124 private String height = null;
125 private String width = null;
126 private String imgsrc = null;
127 private String[] keys = null;
128 private String[] vals = null;
129 private String[] rtnKeys = null;
130
131 /** command 引数に渡す事ã?出来ã‚?コマンãƒ? 新è¦?{@value} */
132 private static final String CMD_NEW = "NEW" ; // 5.1.7.0 (2010/06/01)
133 private String command = CMD_NEW; // 5.1.7.0 (2010/06/01)
134
135 private String append = "false"; // 5.8.5.0 (2015/03/06)
136
137 /**
138 * Taglibの終äº?‚¿グが見つかったときに処ç�?�™ã‚?doEndTag() ã‚?オーバã?ライドしますã?
139 *
140 * @og.rev 5.2.2.0 (2010/11/01) caseKey 、caseVal 属æ?対å¿?
141 *
142 * @return 後続å?ç�??æŒ?¤º
143 */
144 @Override
145 public int doEndTag() {
146 // 5.2.2.0 (2010/11/01) caseKey 、caseVal 属æ?対å¿?
147 if( useTag() ) {
148 makeGamenLink();
149
150 // GAMENID属æ?の?µ?²?¬への自動セãƒ?ƒˆは行わなã�??
151 ViewMarkerTag viewMark = (ViewMarkerTag)findAncestorWithClass( this,ViewMarkerTag.class );
152 if( viewMark != null ) {
153 set( "onMark" ,onMark );
154 set( "markList",markList );
155 set( "body" ,makePopup( true ) );
156
157 if( column != null && column.length() > 0 ) {
158 set( "column" ,column ); // 4.0.0 (2005/08/31) 同ä¸?‚«ラãƒ??è¤?•°登録を許可しますã?
159 viewMark.addAttribute( getAttributes() );
160 }
161 }
162 else {
163 if( markList.indexOf( onMark ) >= 0 ) {
164 jspPrint( makePopup( false ) );
165 }
166 }
167 }
168 return(EVAL_PAGE);
169 }
170
171 /**
172 * 使用しませんã€?
173 *
174 * @return (null 固å®?
175 */
176 @Override
177 protected String makeTag() { return null; }
178
179 /**
180 * タグリブオブジェクトをリリースしますã?
181 * キャãƒ?‚·ュされて再利用されるã?で、フィールドã?初期設定を行いますã?
182 *
183 */
184 @Override
185 protected void release2() {
186 super.release2();
187 column = null;
188 gamenId = null;
189 href = "index.jsp";
190 target = "CONTENTS";
191 onMark = "true"; // true またã? 1
192 markList = "true|TRUE|1"; // true またã? 1
193 keys = null;
194 vals = null;
195 rtnKeys = null;
196 height = null;
197 width = null;
198 imgsrc = null;
199 command = CMD_NEW; // 5.1.7.0 (2010/06/01)
200 append = "false"; // 5.8.5.0 (2015/03/66)
201 }
202
203 /**
204 * リンクを作æ?しますã?
205 *
206 * @og.rev 4.2.4.0 (2008/07/01) keys,vals,rtnKeysが設定されてã�?�ªã�??合ã?外å?のog:columnタグのname値を設定するよã�?�«変更
207 * @og.rev 5.1.7.0 (2010/06/01) 引数にcommandを追åŠ?
208 * @og.rev 5.2.1.0 (2010/10/01) height、width にはã€?px" などの単位を付ける前提での対å¿?
209 * @og.rev 5.2.2.0 (2010/11/01) height、width ã�?null の場合ã?、シングルクオートをつけなã�??
210 * @og.rev 5.8.5.0 (2015/03/06) append追åŠ?
211 *
212 * @param useKey [true:KEY付き/false:KEY無し]
213 *
214 * @return リンクタグæ–?—å?
215 */
216 private String makePopup( final boolean useKey ) {
217 StringBuilder rtn = new StringBuilder();
218 // rtn.append( "ogPopup( '" ).append( get( "href" ) ).append( "'," );
219 // rtn.append( height ).append( "," ).append( width ).append( "," );
220 // 5.2.1.0 (2010/10/01) px を付けると数字ではなくなるためã?シングルクオーãƒ??ションでくくるã?
221 rtn.append( "ogPopup( '" ).append( get( "href" ) ).append( "'," );
222 // 5.2.2.0 (2010/11/01) height、width ã�?null の場合ã?、シングルクオートをつけなã�??
223 if( height != null ) { rtn.append( "'" ).append( height ).append( "'" ); }
224 else { rtn.append( "null" ); }
225 rtn.append( "," );
226 if( width != null ) { rtn.append( "'" ).append( width ).append( "'" ); }
227 else { rtn.append( "null" ); }
228 rtn.append( "," );
229
230 String columnName = null; //4.2.4.0 2008/07/01
231 if( keys != null && keys.length > 0 ) {
232 rtn.append( "new Array(" );
233 addQuote( rtn, keys[0], false );
234 rtn.append( "," );
235 addQuote( rtn, vals[0], false );
236 for( int i = 1; i < keys.length; i++ ) {
237 rtn.append( "," );
238 addQuote( rtn, keys[i], false );
239 rtn.append( "," );
240 addQuote( rtn, vals[i], false );
241 }
242 rtn.append( ")," );
243 }
244 else {
245 ColumnTag outerColumn = (ColumnTag) findAncestorWithClass( this, ColumnTag.class );
246 columnName = ( outerColumn == null ) ? null : outerColumn.getName();
247 if( columnName != null ) {
248 rtn.append( "new Array('XNAME','" );
249 rtn.append( columnName );
250 rtn.append( "','XVALUE'," );
251 rtn.append( columnName );
252 rtn.append( ".value" );
253 rtn.append( ")," );
254 }
255 else {
256 rtn.append( "null," );
257 }
258 }
259 rtn.append( "" );
260
261 if( rtnKeys != null && rtnKeys.length > 0 ) {
262 rtn.append( "this,new Array(" );
263 addQuote( rtn, rtnKeys[0], useKey );
264 for( int i = 1; i < rtnKeys.length; i++ ) {
265 rtn.append( "," );
266 addQuote( rtn, rtnKeys[i], useKey );
267 }
268 rtn.append( ")" );
269 }
270 else if( columnName != null ) {
271 rtn.append( "this,new Array('" );
272 rtn.append( columnName );
273 rtn.append( "')" );
274 }
275 else {
276 rtn.append( "null,null" );
277 }
278
279 // 5.1.7.0 (2010/06/01) 引数にcommandを追åŠ?
280 // 5.8.5.0 (2015/03/06) append追åŠ?
281 // rtn.append( ");" );
282 // rtn.append( ",'" ).append( command ).append( "');" );
283 rtn.append( ",'" ).append( command ).append( "'");
284 rtn.append( ",'" ).append( append ).append( "');" );
285
286 if( imgsrc == null ) {
287 set( "type" , "button" );
288 set( "body" , nval( getMsglbl(),DEF_BODY) );
289 set( "onClick", rtn.toString() );
290 set( "style" , nval( get( "style" ),DEF_STYLE) );
291 return XHTMLTag.button( getAttributes() ) ;
292 }
293 else {
294 set( "src" , imgsrc );
295 set( "title" , getMsglbl() );
296 set( "onClick", rtn.toString() );
297 set( "style" , get( "style" ) );
298 return XHTMLTag.img( getAttributes() ) ;
299 }
300 }
301
302 /**
303 * 引数 val の設定å?を設定する簡易メソãƒ?ƒ‰
304 *
305 * @param buf 結果をæ?納するStringBuilderオブジェクãƒ?
306 * @param val 設定å?
307 * @param useKey [true:KEY付き/false:KEY無し]
308 *
309 * @return (引数のバッファと同じオブジェクãƒ?
310 */
311 private StringBuilder addQuote( final StringBuilder buf, final String val, final boolean useKey ) {
312 if( useKey ) {
313 if( val != null && val.endsWith( ".value" ) ) {
314 buf.append( val.substring( 0,val.length()-6 ) ).append( "__{I}.value" );
315 }
316 else {
317 buf.append( "'" ).append( val ).append( "__{I}'" );
318 }
319 }
320 else {
321 if( val != null && val.endsWith( ".value" ) ) {
322 if( val.charAt(0) == '[' ) {
323 buf.append( val.substring( 1,val.length()-7 ) ).append( "__{I}.value" );
324 }
325 else {
326 buf.append( val );
327 }
328 }
329 else {
330 buf.append( "'" ).append( val ).append( "'" );
331 }
332 }
333 return buf ;
334 }
335
336 /**
337 * 画面?©?¤とhref から、指定ã??µ?²?¬を作æ?しますã?
338 */
339 private void makeGamenLink() {
340 if( gamenId == null || gamenId.length() == 0 ) { return ; }
341
342 GUIInfo guiInfo = getGUIInfo( gamenId ); // 4.0.0 (2005/01/31)
343 if( guiInfo == null ) { return ; } // 見つからなã�??合ã?、アクセス不可
344
345 String address = guiInfo.getRealAddress( get( "href" ) );
346 String url = getRequestParameter( address );
347 set( "href",url );
348
349 if( get( "title" ) == null ) {
350 set( "title","To:" + guiInfo.getLabel() );
351 }
352 }
353
354 /**
355 * 【TAG】この要ç´?‚’リンクの対象とするための名前を指定しますã?
356 *
357 * @og.tag こã?要ç´?‚’リンクの対象とするための名前を指定しますã?
358 *
359 * @param name 名前
360 */
361 public void setName( final String name ) {
362 set( "name",getRequestParameter( name ) );
363 }
364
365 /**
366 * 【TAG】リンクをつけたã�?‚«ラãƒ?‚’æŒ?®šしますã?
367 *
368 * @og.tag
369 * こã?カラãƒ?��のTableModelに対してã€?ViewLink タグが存在する場合ã?,
370 * リンクを張りますã?
371 *
372 * @param clm カラãƒ?��
373 */
374 public void setColumn( final String clm ) {
375 column = nval( getRequestParameter( clm ),column );
376 }
377
378 /**
379 * 【TAG】画面ID属æ?を登録しますã?
380 *
381 * @og.tag
382 * gamenId 属æ?は、画面IDをキーに、実アドレスを求めるã?に使用しますã?
383 * 画面IDが指定された場合ã?、実アドレスに変換する。指定されなã�??合ã?ã€?
384 * href 属æ?をそのままリンクæƒ??を作æ?しますã?
385 * 画面IDを指定するå?合ã? href は、JSPファイルå�?例えば、index.jsp ç?ですã?
386 *
387 * @param id 画面ID
388 */
389 public void setGamenId( final String id ) {
390 gamenId = nval( getRequestParameter( id ),gamenId );
391 }
392
393 /**
394 * 【TAG】ã?ãƒ??アãƒ??先ã?URLを指定しまã�?初期値:index.jsp)ã€?
395 *
396 * @og.tag
397 * 通常、gamenId を指定してã�?‚‹場合ã?、それ以é™?index.jsp , result.jsp など)を指定しますã?
398 * 通常のリンクの場合ã?GAMENID/href とã�?�†アドレスに合æ?されますã?( GE0001/result.jsp など )
399 * (正確には、画面IDではなくã?対応する画面ADDRESSを使用しますã?)
400 * ポップアãƒ??専用のリンクなので、å?期å?は、index.jsp ですã?
401 *
402 * @param href ポップアãƒ??先ã?URL
403 */
404 public void setHref( final String href ) {
405 set( "href",nval( getRequestParameter( href ),this.href ) );
406 }
407
408 /**
409 * 【TAG】ã?ãƒ??アãƒ??先ã?æ–?—コードセãƒ?ƒˆを指定しますã?
410 *
411 * @og.tag ポップアãƒ??先ã?æ–?—コードセãƒ?ƒˆを指定しますã?
412 *
413 * @param charset æ–?—コードセãƒ?ƒˆ
414 */
415 public void setCharset( final String charset ) {
416 set( "charset",getRequestParameter( charset ) );
417 }
418
419 /**
420 * 【TAG】ã?ãƒ??アãƒ??先ã?表示ターゲãƒ?ƒˆを指定しまã�?初期値:CONTENTS)ã€?
421 *
422 * @og.tag ポップアãƒ??先ã?表示ターゲãƒ?ƒˆを指定しますã?
423 *
424 * @param target 表示ターゲãƒ?ƒˆ
425 */
426 public void setTarget( final String target ) {
427 set( "target",nval( getRequestParameter( target ),this.target ) );
428 }
429
430 /**
431 * 【TAG】ã?ãƒ??アãƒ??先に渡すå?力キー配å?をCSV形式でè¤?•°æŒ?®šしますã?
432 *
433 * @og.tag ポップアãƒ??先に渡すå?力キー配å?を指定しますã?
434 * åˆ?§£方法ã?、CSV変数をå?にåˆ?§£してから、getRequestParameter で値を取得しますã?
435 * こうしなã�?�¨ãƒ??タ自身にカンマを持ってã�?‚‹場合にåˆ?§£をミスる為ですã?
436 *
437 * @param key 渡すå?力キー配å?(CSV形å¼?
438 */
439 public void setKeys( final String key ) {
440 keys = getCSVParameter( key );
441 }
442
443 /**
444 * 【TAG】ã?ãƒ??アãƒ??先に渡すå?配å?をCSV形式でè¤?•°æŒ?®šしますã?
445 *
446 * @og.tag ポップアãƒ??先に渡すå?配å?を指定しますã?
447 * åˆ?§£方法ã?、CSV変数をå?にåˆ?§£してから、getRequestParameter で値を取得しますã?
448 * こうしなã�?�¨ãƒ??タ自身にカンマを持ってã�?‚‹場合にåˆ?§£をミスる為ですã?
449 *
450 * @param val 渡すå?配å?(CSV形å¼?
451 */
452 public void setVals( final String val ) {
453 vals = getCSVParameter( val );
454 }
455
456 /**
457 * 【TAG】ã?ãƒ??アãƒ??先より受け取るキー配å?をCSV形式でè¤?•°æŒ?®šしますã?
458 *
459 * @og.tag ポップアãƒ??先より受け取るキー配å?を指定しますã?
460 * åˆ?§£方法ã?、CSV変数をå?にåˆ?§£してから、getRequestParameter で値を取得しますã?
461 * こうしなã�?�¨ãƒ??タ自身にカンマを持ってã�?‚‹場合にåˆ?§£をミスる為ですã?
462 *
463 * @param key 受け取るキー配å?(CSV形å¼?
464 */
465 public void setRtnKeys( final String key ) {
466 rtnKeys = getCSVParameter( key );
467 }
468
469 /**
470 * 【TAG】リンクを張ã‚?true or 1)/張らなã�?false or 0)の設定をæŒ?®šしまã�?初期値:true)ã€?
471 *
472 * @og.tag
473 * リンクを張るå?合ã?ã€?true"(またã? "1") リンクを張らなã�?
474 * 場合ã?, "true以å¤?(またã? "0")をセãƒ?ƒˆしますã?
475 * 初期値はã€?"true"(リンクを張ã‚?ですã?
476 * さらに、[カラãƒ?��] で、動çš?�«カラãƒ??値で、リンクを張るã?張らなã�?‚’
477 * 選ぶ事が可能になりますã?値はã€?true"(またã? "1") で、ã?ークしますã?
478 * ただしã?単独 linkタグ時ã?使用できませんã€?
479 * 追è¨?3.5.2.0 (2003/10/20)?šmarkList属æ?に、å?ç�?¯¾象æ–?—å?郡を指定できますã?
480 * これにより、リンクをå?ç�?�™るかどã�?�‹の判断がã?true,1 以外にも使用できるようになりましたã€?
481 *
482 * @param flag リンクの設定[true:リンクを張ã‚?それ以å¤?リンクを張らない]
483 */
484 public void setOnMark( final String flag ) {
485 onMark = nval( getRequestParameter( flag ),onMark );
486 }
487
488 /**
489 * 【TAG】å?ç�?�™るã?ークをã?"|"区åˆ?‚Šのæ–?—å?でæŒ?®šしますã?
490 *
491 * @og.tag
492 * markListで与えられた文字å?に、onMarkæ–?—å?(大æ–??小文字ã?区別あり)ã�?
493 * 含まれてã�?‚Œば、å?ç�?�—ますã?
494 * 例えばã€?A","B","C" とã�?�†æ–?—å?がã?onMark でæŒ?®šされた
495 * 場合に処ç�?�™るよã�?�«したã�??合ã?ã€?A|B|C" をセãƒ?ƒˆしますã?
496 * markList には、[カラãƒ?��]æŒ?®šが可能ですã?(ただしã?単独 linkタグ時ã?除ã�?
497 * 初期値はã€?"true|TRUE|1"ですã?
498 *
499 * @param list 処ç�?�™るã?ーク(indexOf による含ã‚?含まなã�?ˆ¤å®?
500 */
501 public void setMarkList( final String list ) {
502 markList = nval( getRequestParameter( list ),markList );
503 }
504
505 /**
506 * 【TAG】ダイアログの縦å¹?‚’ピクセル数でæŒ?®šしますã?
507 *
508 * @og.tag
509 * 縦å¹?‚’æŒ?®šしますã?単位も含めて入力してくださいã€?
510 * 設定しなã�??合ã?、ogPopup JavaScript のå†?ƒ¨初期値が採用されますã?
511 *
512 * @og.rev 5.2.1.0 (2010/10/01) height、width にはã€?px" などの単位を付ける前提での対å¿?
513 *
514 * @param ht ãƒ?‚¤アログの縦å¹?ピクセル数)
515 */
516 public void setHeight( final String ht ) {
517 height = nval( getRequestParameter( ht ),height );
518 if( height != null && ! height.endsWith( "px" ) ) { height += "px"; } // 5.2.1.0 (2010/10/01)
519 }
520
521 /**
522 * 【TAG】ダイアログの横å¹?‚’ピクセル数でæŒ?®šしますã?
523 *
524 * @og.tag
525 * 横å¹?‚’æŒ?®šしますã?単位も含めて入力してくださいã€?
526 * 設定しなã�??合ã?、ogPopup JavaScript のå†?ƒ¨初期値が採用されますã?
527 *
528 * @og.rev 5.2.1.0 (2010/10/01) height、width にはã€?px" などの単位を付ける前提での対å¿?
529 *
530 * @param wh ãƒ?‚¤アログの横å¹?ピクセル数)
531 */
532 public void setWidth( final String wh ) {
533 width = nval( getRequestParameter( wh ),width );
534 if( width != null && ! width.endsWith( "px" ) ) { width += "px"; } // 5.2.1.0 (2010/10/01)
535 }
536
537 /**
538 * 【TAG】表示させる画像ã?URLを指定しますã?
539 *
540 * @og.tag
541 * こã?属æ?を設定すると、è?動的に イメージリンクでの onClick属æ?で
542 * ポップアãƒ??の起動画面を作æ?しますã?
543 * こã?属æ?が設定されてã�?�ªã�??合ã?、button での起動になりますã?
544 *
545 * @param src 画像ã?URL
546 */
547 public void setSrc( final String src ) {
548 imgsrc = nval( getRequestParameter( src ),imgsrc );
549 }
550
551 /**
552 * 【TAGã€?通常使ã�?�¾せん)処ç�??実行をæŒ?®šすã‚?command を設定できまã�?初期値:NEW)ã€?
553 *
554 * @og.tag
555 * ここでæŒ?®šされたcommandは、ã?ãƒ??アãƒ??画面の引数として渡されますã?
556 * 初期値は、NEW ですã?
557 *
558 * @og.rev 5.1.7.0 (2010/06/01) 新規作æ?
559 *
560 * @param cmd コマンãƒ?
561 */
562 public void setCommand( final String cmd ) {
563 command = nval( getRequestParameter( cmd ),command );
564 }
565
566 /**
567 * 【TAG】返り値をキャレãƒ?ƒˆ位置に追記すã‚?true)/しなã�?false)の設定をæŒ?®šしまã�?初期値:false)ã€?
568 *
569 * @og.tag
570 * ポップアãƒ??からの返り値をã?å…??値と置換するã?ではなくã?キャレãƒ?ƒˆ位置に挿入するかどã�?�‹を指定しますã?
571 *
572 * @og.rev 5.8.5.0 (2015/02/06)
573 *
574 * @param flg 返り値のキャレãƒ?ƒˆ位置に追記設[true:追è¨?それ以å¤?置換]
575 */
576 public void setAppend( final String flg ) {
577 append = nval( getRequestParameter( flg ),append );
578 }
579
580 /**
581 * こã?オブジェクトã?æ–?—å?表現を返しますã?
582 * 基本çš?�«ãƒ?ƒ�ãƒ?‚°目çš?�«使用しますã?
583 *
584 * @return こã?クラスのæ–?—å?表現
585 */
586 @Override
587 public String toString() {
588 return org.opengion.fukurou.util.ToString.title( this.getClass().getName() )
589 .println( "VERSION" ,VERSION )
590 .println( "column" ,column )
591 .println( "gamenId" ,gamenId )
592 .println( "href" ,href )
593 .println( "target" ,target )
594 .println( "onMark" ,onMark )
595 .println( "markList" ,markList )
596 .println( "height" ,height )
597 .println( "width" ,width )
598 .println( "keys" ,keys )
599 .println( "vals" ,vals )
600 .println( "rtnKeys" ,rtnKeys )
601 .println( "Other..." ,getAttributes().getAttribute() )
602 .fixForm().toString()
603 + HybsSystem.CR
604 + super.toString() ;
605 }
606 }