org.opengion.hayabusa.taglib

## クラス DragViewTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - javax.servlet.jsp.tagext.BodyTagSupport
    - - org.opengion.hayabusa.taglib.CommonTagSupport
      - - org.opengion.hayabusa.taglib.DragViewTag

- すべての実装されたインタフェース:
    java.io.Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

      public class DragViewTag
      extends CommonTagSupport

       jQueryのdraggableを使用したｵﾌﾞｼﾞｪｸﾄの移動を行う、View を設定します。

       viewFormType="CustomData" の BODY 部に記述された、class="dragDiv"（固定） を持った、
       DIV要素をﾄﾞﾗｯｸﾞするための、各種情報を提供します。
       dragViewタグは、view タグの上位に記述し、class="dragView"（固定）のﾚｲｱｳﾄのCSS とともに、
       必要な情報を出力して、JQeury の引数が受け取れる形の DIVタグを生成します。
       また、ｵﾌﾞｼﾞｪｸﾄの移動は、jQueryの ajax により、リアルタイムに JSP を呼び出すことで、
       データベースの書き込みをサポートします。

       og:dragView ： viewタグの上位に位置して、cssと、パラメータ用のdivタグを生成します。
       og:dragDiv  ： viewタグの tbody に書き込む、簡易的な文字列生成用のタグです。
       common/dragSelect.jsp  ： GE18 の select文（scope="session"）
       common/dragUpdate.jsp  ： jQueryからﾄﾞﾗｯｸﾞ終了時点でajxaで呼び出される、標準のjspファイル
                                 この中で、GE18(位置情報管理ﾃｰﾌﾞﾙ)に位置情報が書き込まれます。
       common/jquery/dragView.js ：jQueryのdraggable 本体。$(function(){$(".dragDiv").draggable({････})});

       dragBox.js と、dragUpdate.jsp を独自に修正すれば、自前のﾃｰﾌﾞﾙに位置情報を書き込むことも可能です。

  関連項目:
    直列化された形式
  形式サンプル:

         ●形式：<og:dragView><og:view ・・・  /></og:dragView>
         ●body：あり(EVAL_BODY_INCLUDE:BODYをインクルードし、{@XXXX} は解析しません)

         ●Tag定義：
           <og:dragView
               url                 【TAG】ﾄﾞﾗｯｸﾞ後に呼び出す jspファイルのアドレス(初期値：/jsp/common/dragUpdate.jsp)
               grid                【TAG】ﾄﾞﾗｯｸﾞ時にｵﾌﾞｼﾞｪｸﾄが動けるｸﾞﾘｯﾄﾞを指定します(初期値：10,10)
               width               【CSS】Viewを囲うdivのCSS(dragView)のwidth属性(初期値:100%)
               height              【CSS】Viewを囲うdivのCSS(dragView)のheight属性(初期値:100%)
               image               【CSS】bgImage(background-image属性)のurlの引数の値
               background          【CSS】Viewを囲うdivのCSS(dragView)のbackground属性
               bgColor             【CSS】Viewを囲うdivのCSS(dragView)のbackground-color属性
               bgSize              【CSS】Viewを囲うdivのCSS(dragView)のbackground-size属性(初期値:800px)
               bgImage             【CSS】Viewを囲うdivのCSS(dragView)のbackground-image属性
               bgRepeat            【CSS】Viewを囲うdivのCSS(dragView)のbackground-repeat属性(初期値:no-repeat)
               bgPosition          【CSS】Viewを囲うdivのCSS(dragView)のbackground-position属性
               zoom                【CSS】ﾄﾞﾗｯｸﾞ要素のCSS(dragDiv)に適用する拡大、縮小の倍率
               id                  【HTML】Viewを囲うdiv要素に対して固有の名前(id)をつける場合に設定します
               style               【HTML】Viewを囲うdiv要素に適用させるスタイルシート(style)を設定します
               optionAttributes    【TAG】Viewを囲うdiv要素にそのまま追記する属性
               caseKey             【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null)
               caseVal             【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null)
               caseNN              【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない)
               caseNull            【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない)
               caseIf              【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない)
               debug               【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
           >   ... Body ...
           </og:dragView>

         ●使用例
           ※ Select ･･･ from GE18 A {@JOIN_SQL} where ･･･ をincludeします。
           <og:value key="JOIN_SQL" >
               left outer join DBXX B on A.LOC_GRP=B.GRP and A.LOC_KEY=B.KEY
           </og:value>
           <jsp:directive.include file="/jsp/common/dragSelect.jsp" />

           ※ カラムに必要なﾏｰｶｰを追加します。ここでは、ICON にｲﾒｰｼﾞ画像を設定していますが、viewのBODY部でもかまいません。
           <og:viewMarker command="{@command}">
               <og:columnMarker column="ICON">
                   <img src="image/[LOC_GRP]/[ICON]" width="50px" title="[LABEL_NAME]" />
               </og:columnMarker>
           </og:viewMarker>

           ※ dragView のなかに、viewタグで、viewFormType="CustomData" のﾃﾞｰﾀを作成します。
            <og:dragView>
              <og:view
                  viewFormType	= "CustomData"
                  command         = "{@command}"
                  writable        = "false"
                  useScrollBar    = "false"
                  numberType      = "delete"
                  bgColorCycle    = "1"
                  useHilightRow   = "false"
              >
                  ※ tbody のなかの、dibタグが、ドラッグ可能になり、left:[LOC_COL]px; top:[LOC_ROW]px; が位置になります。
                  <og:tbody rowspan="1" >
                      <div class="dragDiv" id="[UNIQ]" style="left:[LOC_COL]px; top:[LOC_ROW]px;" >[ICON]</div>
                  </og:tbody>
              </og:view>
            </og:dragView>

         ●使用例
            ※ tbody の中を、og:dragDiv にした場合。
            <og:dragView>
              <og:view
                  viewFormType	= "CustomData"
                  ･･･
              >
                  <og:tbody rowspan="1" >
                      <og:dragDiv >[ICON]</og:dragDiv>
                  </og:tbody>
              </og:view>
            </og:dragView>

  機能分類
    画面部品
  変更履歴:
    7.0.1.0 (2018/10/15) 新規作成
  バージョン
    7.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK11.0,

- - ### フィールドのサマリー

    - ### クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport

      `BR, BUFFER_MIDDLE, CR`

    - ### クラスから継承されたフィールド 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`

  - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `DragViewTag()` デフォルトコンストラクター

  - ### メソッドのサマリー

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `int` | `doEndTag()` Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `int` | `doStartTag()` Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
    `protected void` | `release2()` タグリブオブジェクトをリリースします。
    `void` | `setBackground(java.lang.String background)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground属性。
    `void` | `setBgColor(java.lang.String bgColor)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground-color属性。
    `void` | `setBgImage(java.lang.String bgImage)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground-image属性。
    `void` | `setBgPosition(java.lang.String bgPosition)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground-position属性。
    `void` | `setBgRepeat(java.lang.String bgRepeat)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground-repeat属性(初期値:no-repeat)。
    `void` | `setBgSize(java.lang.String bgSize)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground-size属性(初期値:800px)。
    `void` | `setGrid(java.lang.String grid)` 【TAG】ﾄﾞﾗｯｸﾞ時にｵﾌﾞｼﾞｪｸﾄが動けるｸﾞﾘｯﾄﾞを指定します(初期値：10,10)。
    `void` | `setHeight(java.lang.String height)` 【CSS】Viewを囲うdivのCSS(dragView)のheight属性(初期値:100%)。
    `void` | `setImage(java.lang.String image)` 【CSS】Viewを囲うdivのCSS(dragView)のbackground-image属性のurlの引数の値。
    `void` | `setOptionAttributes(java.lang.String optionAttributes)` 【TAG】JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します。
    `void` | `setUrl(java.lang.String url)` 【TAG】ﾄﾞﾗｯｸﾞ後に呼び出す jspファイルのアドレス(初期値：/jsp/common/dragUpdate.jsp)。
    `void` | `setWidth(java.lang.String width)` 【CSS】Viewを囲うdivのCSS(dragView)のwidth属性(初期値:100%)。
    `void` | `setZoom(java.lang.String zoom)` 【CSS】ﾄﾞﾗｯｸﾞ要素のCSS(dragDiv)に適用する拡大、縮小の倍率。
    `java.lang.String` | `toString()` このオブジェクトの文字列表現を返します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport

      `add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsg, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getSumRequestValue, getTagName, getTransaction, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, makeUrl, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseIf, 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`

- - ### コンストラクタの詳細

    - #### DragViewTag

          public DragViewTag()

      デフォルトコンストラクター
      変更履歴:
        7.0.1.0 (2018/10/15) 新規作成

  - ### メソッドの詳細

    - #### doStartTag

          public int doStartTag()

      Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
      定義:
        `doStartTag` インタフェース内 `Tag`
      オーバーライド:
        `doStartTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示( EVAL_BODY_INCLUDE )
      変更履歴:
        7.0.1.0 (2018/10/15) 新規作成

    - #### doEndTag

          public int doEndTag()

      Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
      定義:
        `doEndTag` インタフェース内 `Tag`
      オーバーライド:
        `doEndTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示
      変更履歴:
        7.0.1.0 (2018/10/15) 新規作成

    - #### release2

          protected void release2()

      タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
      オーバーライド:
        `release2` クラス内 `CommonTagSupport`
      変更履歴:
        7.0.1.0 (2018/10/15) 新規作成

    - #### setUrl

          public void setUrl(java.lang.String url)

      【TAG】ﾄﾞﾗｯｸﾞ後に呼び出す jspファイルのアドレス(初期値：/jsp/common/dragUpdate.jsp)。
      パラメータ:
        `url` - ﾄﾞﾗｯｸﾞ後に呼び出す jspファイル
      説明:
        ﾄﾞﾗｯｸﾞ後に ajax で、jspファイルを呼び出します。 初期値は、/jsp/common/dragUpdate.jsp に設定されており、GE18 ﾃｰﾌﾞﾙに状態を書き込みます。

    - #### setGrid

          public void setGrid(java.lang.String grid)

      【TAG】ﾄﾞﾗｯｸﾞ時にｵﾌﾞｼﾞｪｸﾄが動けるｸﾞﾘｯﾄﾞを指定します(初期値：10,10)。
      パラメータ:
        `grid` - ﾄﾞﾗｯｸﾞ時にｵﾌﾞｼﾞｪｸﾄが動けるｸﾞﾘｯﾄﾞ
      説明:
        ﾄﾞﾗｯｸﾞ時に、ｵﾌﾞｼﾞｪｸﾄが、このｸﾞﾘｯﾄﾞ単位で移動します。 ある程度、ｸﾞﾘｯﾄﾞで制約をかけると、縦や横に、きれいに配置させることができます。 1,1 にすると、1ピクセル毎に滑らかに動きます。 また、10,0 を設定すると、x軸(横方向)には、10px単位で動きますが、y軸(縦方向)には動きません。 初期値は、10,10 で、10px単位に、動きます。

    - #### setWidth

          public void setWidth(java.lang.String width)

      【CSS】Viewを囲うdivのCSS(dragView)のwidth属性(初期値:100%)。
      パラメータ:
        `width` - width属性(初期値:100%)
      説明:
        div要素のwidth属性を指定します。 これは、.dragView セレクタの style に書き込まれます。 初期値は、100% です。

    - #### setHeight

          public void setHeight(java.lang.String height)

      【CSS】Viewを囲うdivのCSS(dragView)のheight属性(初期値:100%)。
      パラメータ:
        `height` - height属性(初期値:100%)
      説明:
        div要素のheight属性を指定します。 これは、.dragView セレクタの style に書き込まれます。 初期値は、100% です。

    - #### setImage

          public void setImage(java.lang.String image)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground-image属性のurlの引数の値。
      パラメータ:
        `image` - background-image属性のurlの引数の値
      関連項目:
        `setBgImage(String)`
      説明:
        div要素のbackground-image属性を簡易的に指定するのに使用します。 background-image属性は、url( 'image/SAMPLE.png' ) のような書き方になりますが ここで指定するのは、'image/SAMPLE.png' の部分です。 ｼﾝｸﾞﾙｸｵｰﾄは、タグ内で付けますので、引数につける必要はありません。 background-image と同時に指定された場合は、background-image が優先されます。 初期値は、ありません。

    - #### setBackground

          public void setBackground(java.lang.String background)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground属性。
      パラメータ:
        `background` - background属性
      説明:
        div要素のbackground属性を指定します。 例：background = "top left/800px url( 'image/{@LOC_GRP}.png' ) no-repeat;" これは、.dragView セレクタの style に書き込まれます。 初期値は、ありません。

    - #### setBgColor

          public void setBgColor(java.lang.String bgColor)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground-color属性。
      パラメータ:
        `bgColor` - background-color属性
      説明:
        div要素のbackground-color属性を指定します。 これは、.dragView セレクタの style に書き込まれます。 初期値は、ありません。

    - #### setBgSize

          public void setBgSize(java.lang.String bgSize)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground-size属性(初期値:800px)。
      パラメータ:
        `bgSize` - background-size属性
      説明:
        div要素のbackground-size属性を指定します。 これは、.dragView セレクタの style に書き込まれます。 初期値:800px。

    - #### setBgImage

          public void setBgImage(java.lang.String bgImage)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground-image属性。
      パラメータ:
        `bgImage` - background-image属性
      関連項目:
        `setImage(String)`
      説明:
        div要素のbackground-image属性を指定します。 background-image属性は、url( 'image/SAMPLE.png' ) のような書き方になります。 これは、.dragView セレクタの style に書き込まれます。 初期値は、ありません。

    - #### setBgRepeat

          public void setBgRepeat(java.lang.String bgRepeat)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground-repeat属性(初期値:no-repeat)。
      パラメータ:
        `bgRepeat` - background-repeat属性
      説明:
        div要素のbackground-repeat属性を指定します。 これは、.dragView セレクタの style に書き込まれます。 初期値:no-repeat。

    - #### setBgPosition

          public void setBgPosition(java.lang.String bgPosition)

      【CSS】Viewを囲うdivのCSS(dragView)のbackground-position属性。
      パラメータ:
        `bgPosition` - background-position属性
      説明:
        div要素のbackground-position属性を指定します。 これは、.dragView セレクタの style に書き込まれます。 初期値は、ありません。

    - #### setZoom

          public void setZoom(java.lang.String zoom)

      【CSS】ﾄﾞﾗｯｸﾞ要素のCSS(dragDiv)に適用する拡大、縮小の倍率。
      パラメータ:
        `zoom` - ﾄﾞﾗｯｸﾞ要素の拡大、縮小の倍率
      説明:
        要素を拡大、縮小するCSSを、dragDiv に書き込みます。 1.0 が標準で、1以下が縮小、1以上が拡大になります。 zoom : {@ZOOM}; transform : scale({@ZOOM}); transform-origin : top left; -moz-transform : scale({@ZOOM}); -moz-transform-origin : top left; 初期値は、ありません。

    - #### setOptionAttributes

          public void setOptionAttributes(java.lang.String optionAttributes)

      【TAG】JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します。
      パラメータ:
        `optionAttributes` - オプション属性
      説明:
        JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します。

    - #### toString

          public java.lang.String toString()

      このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
      オーバーライド:
        `toString` クラス内 `CommonTagSupport`
      戻り値:
        このクラスの文字列表現
      このメソッドは、nullを返しません

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