openGionopenGion
5.7.8.0

org.opengion.hayabusa.taglib
クラス TbodyMovableTag

java.lang.Object
  上位を拡張 javax.servlet.jsp.tagext.TagSupport
      上位を拡張 javax.servlet.jsp.tagext.BodyTagSupport
          上位を拡張 org.opengion.hayabusa.taglib.CommonTagSupport
              上位を拡張 org.opengion.hayabusa.taglib.TbodyMovableTag
すべての実装されたインタフェース:
java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally

public class TbodyMovableTag
extends CommonTagSupport

option/ogTbodyMovable.js JavaScript を利用したマウスによる上下移動にシンクロ等させます。 headタグで、useTbodyMovable="true" をセットすると、マウスまたはカーソルで、 tbody 部を上下に移動させることが可能です。 このタグは、その動作に関連付けて、同期して移動させたり、内容を入れ替えるカラムや 内容に、+1、-1するカラム、移動の制限(入替対象にしない、ドラッグできないなど) を指定します。 記述は、view の後で構いません。 このタグを有効にするには、headタグで、useTbodyMovable="true" をセットする必要があります。 なお、この JavaScript は、1行単位に tbody を記述している view であれば、有効です。 内部で、tr ではなく、tbody を処理しているためです。 (つまり、ガント専用ではありませんが、HTMLTableには使えません。) このタグは、span タグを出力し、ogTbodyMovable.js で処理しています。その際のキーとして、 span タグ には、class="tbodyMovable" を付けています。

関連項目:
直列化された形式
形式サンプル:
 ●形式:<og:tbodyMovable  ... />
 ●body:なし
 ●前提:headタグで、useTbodyMovable="true" を指定してください。

 ●Tag定義:
   <og:tbodyMovable
       seqclm             【TAG】移動時に値を入れ替えするカラム名(カンマ区切りで複数指定可能,先頭名称で判断)(初期値:SEQ)
       noMove             【TAG】入替制限する tbodyのクラス名(カンマ区切りで複数指定可能)
       noDrag             【TAG】マウスでドラッグできない tbodyのクラス名(カンマ区切りで複数指定可能)
       adjustSeq          【TAG】上移動(-1)、下移動(+1)で、値をセットするカラム名(1つのみ、seqclmで指定されている必要あり)
       sync               【TAG】他のTABLEを同期して移動させる場合に、クラス/IDを指定
       debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
   />

 ●使用例
   <og:tbodyMovable
      seqclm      = "DYORDER,SEQ"
      noMove      = "disMovable"
      noDrag      = "disDragable"
      adjustSeq   = "DYORDER"
      sync        = "fixBodyDiv"
   />
変更履歴:
5.6.3.3 (2013/04/19) 新規作成
機能分類
画面部品
バージョン
5.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK6.0,

フィールドの概要
 
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド
bodyContent
 
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド
id, pageContext
 
インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド
EVAL_BODY_AGAIN
 
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
コンストラクタの概要
TbodyMovableTag()
           
 
メソッドの概要
 int doEndTag()
          Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
protected  java.lang.String getTagName()
          タグの名称を、返します。
protected  void release2()
          タグリブオブジェクトをリリースします。
 void setAdjustSeq(java.lang.String adjustSeq)
          【TAG】上移動(-1)、下移動(+1)で、値をセットするカラム名(1つのみ、seqclmで指定されている必要あり)。
 void setNoDrag(java.lang.String noDrag)
          【TAG】マウスでドラッグできない tbodyのクラス名を指定します(カンマ区切りで複数指定可能)。
 void setNoMove(java.lang.String noMove)
          【TAG】入替制限(移動できない)する tbodyのクラス名を指定します(カンマ区切りで複数指定可能)。
 void setSeqclm(java.lang.String seqclm)
          【TAG】移動時に値を入れ替えするカラム名を指定します(カンマ区切りで複数指定可能,先頭名称で判断)(初期値:SEQ)。
 void setSync(java.lang.String sync)
          【TAG】他のTABLEを同期して移動させる場合に、クラス/IDを指定します。
 java.lang.String toString()
          このオブジェクトの文字列表現を返します。
 
クラス org.opengion.hayabusa.taglib.CommonTagSupport から継承されたメソッド
add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, doStartTag, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getUser, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheck
 
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたメソッド
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
 
クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド
getParent, setPageContext, setParent
 

コンストラクタの詳細

TbodyMovableTag

public TbodyMovableTag()
メソッドの詳細

doEndTag

public int doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の doEndTag
オーバーライド:
クラス CommonTagSupport 内の doEndTag
戻り値:
後続処理の指示

release2

protected void release2()
タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。

オーバーライド:
クラス CommonTagSupport 内の release2

setSeqclm

public void setSeqclm(java.lang.String seqclm)
【TAG】移動時に値を入れ替えするカラム名を指定します(カンマ区切りで複数指定可能,先頭名称で判断)(初期値:SEQ)。

パラメータ:
seqclm - 移動時に値を入れ替えたいカラム名(カンマ区切りで複数指定可能)
説明:
 該当タグのseqclm属性値が存在する場合はシーケンスカラム名とします。
 上下移動で、同期して動きますが、このカラムの値も入れ替わります。判りにくいですが、
 つまり位置は入れ替わらないという事です。
 例えば、レコードに連番を振っておき、このカラムだけ移動しないので、当初の連番のままとなり、
 その値を元に、計算しなおすことで、納期調整を行ったりします。
 シーケンスは指定カラムの先頭名称で判断するので注意して下さい。
  例:SEQの指定でSEQUENCEカラムが判定されてしまう。 
 seqclm属性はカンマ区切りで複数指定可能です。 
 初期値 は、"SEQ" です。

setNoMove

public void setNoMove(java.lang.String noMove)
【TAG】入替制限(移動できない)する tbodyのクラス名を指定します(カンマ区切りで複数指定可能)。

パラメータ:
noMove - 入替対象でない tbodyのクラス名(カンマ区切りで複数指定可能)
説明:
 tbodyが 入替制限する場合に、tbodyにここで指定した class 属性を付与しておくことで、
 入れ替え対象から除外されます。(簡単にいうと、これを飛び越えて移動できません)
 例えば、グループ化しているレコードの範囲でしか入れ替えたくない・・・などの時に使用します。
 
 ここでは、カンマ区切りで複数のクラス名を指定可能です。

setNoDrag

public void setNoDrag(java.lang.String noDrag)
【TAG】マウスでドラッグできない tbodyのクラス名を指定します(カンマ区切りで複数指定可能)。

パラメータ:
noDrag - マウスでドラッグできない tbodyのクラス名(カンマ区切りで複数指定可能)
説明:
 tbodyを ドラッグしたくない場合に、tbodyにここで指定した class 属性を付与しておくことで、
 ドラッグ対象から除外されます。(簡単にいうと、掴めません)
 これは、対象の tbody がつかめないだけで、その前後の tbody と入れ替えはされます。
 位置はどこに行くか判りませんが、ここで指定した tbody の順番は保証されます。

 例えば、納期確定しているレコードは入れ替えたくない・・・などの時に使用します。
 
 ここでは、カンマ区切りで複数のクラス名を指定可能です。

setAdjustSeq

public void setAdjustSeq(java.lang.String adjustSeq)
【TAG】上移動(-1)、下移動(+1)で、値をセットするカラム名(1つのみ、seqclmで指定されている必要あり)。

パラメータ:
adjustSeq - 上移動(-1)、下移動(+1)で、値をセットするカラム名
説明:
 adjustSeq属性で指定したカラム(seqclmで指定されている必要あり)は、
 上に動かした時は上の値から-1された値を、下に動かした時は下の値に+1した値を
 セットするような動作になります。これは1つのみ指定可能です。
 
 移動時に値を入れ替えするカラム名の特殊版といえます。
 ここでは、カラム名は1つのみ指定可能で、かつ、seqclmで指定されている必要があります。

setSync

public void setSync(java.lang.String sync)
【TAG】他のTABLEを同期して移動させる場合に、クラス/IDを指定します。

パラメータ:
sync - 他のTABLEを同期して移動させる場合に指定するクラス/ID
説明:
 左右分割やガント系のテーブル部とガント部に分かれているようなテーブルで、上下移動を
 行う場合に、ドラッグしているレコードに同期させて移動させることが可能です。
 ここで指定するクラスは、tableか、table直上の要素のクラスのみ指定可能です。
 また、tbodyMovableが複数ある場合は先頭の属性値がセットされます。

getTagName

protected java.lang.String getTagName()
タグの名称を、返します。 自分自身のクラス名より、自動的に取り出せないため、このメソッドをオーバーライドします。

オーバーライド:
クラス CommonTagSupport 内の getTagName
戻り値:
タグの名称
関連項目:
CommonTagSupport.getDocumentLink()

toString

public java.lang.String toString()
このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。

オーバーライド:
クラス CommonTagSupport 内の toString
戻り値:
このクラスの文字列表現

openGion 5.7.8.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.