ポップアップ・メニューの追加

ポップアップ・メニュー・コンポーネントを使用すると、アプリケーション・ユーザーがビュー内を右クリックしたときに、静的メニューまたはコンテキスト・メニューを表示することができます。
Facelets 環境でのメニューの使用については、『Facelets および Trinidad のサポート』も参照してください。

ビュー・タグ内のポップアップ・メニュー・タグ

ポップアップ・メニューはビューに接続されるため、その JSP™ タグをビューの JSP タグで囲む必要があります。
ポップアップ・メニューは、コンテキストまたは静的にすることができます。以下の例は、ビュー・タグ内で使用されるコンテキスト・ポップアップ・メニューを示しています。
以下のコードは、JViews Diagrammer を使用する場合です。
<jvdf:diagrammerView [...] >
   <jvf:contextualMenu [...]/>
</jvdf:diagrammerView>
以下のコードは、JViews Framework を使用する場合です。
<jvf:view [...] >
  <jvf:contextualMenu [...]>
</jvf:view>

静的ポップアップ・メニュー

このポップアップ・メニューは、静的で、完全にクライアント・サイドにあります。
JViews Diagrammer 内でメニューおよびメニュー項目を定義するには、menumenuItem、および menuSeparator の各タグを使用します。以下に例を示します。
      <jvf:contextualMenu
        <jv:menu label="root">
          <jv:menuItem label="Zoom ..."
                       onclick="zoomButton.doClick()"
                       image="images/zoomrect.gif" />
          <jv:menuItem label="Pan ..."
                       onclick="panButton.doClick()"
                       image="images/pan.gif"/>
          <jv:menuSeparator/>
          <jv:menuItem label="Zoom In"
                       onclick="viewID.zoomIn()"
                       image="images/zoom.gif" />
          <jv:menuItem label="Zoom Out"
                       onclick="viewID.zoomOut()"
                       image="images/unzoom.gif"/>
          <jv:menuItem label="Zoom to Fit"
                       onclick="viewID.showAll()"
                       image="images/zoomfit.gif"/>
          <jv:menuSeparator/>
          <jv:menuItem label="Select"
                       actionListener="#{diagrammerBean.action}"
                       actionListener="#{ganttBean.action}"
                       image="images/arrow.gif"
                       invocationContext="IMAGE_SERVLET_CONTEXT" />
        </jv:menu>
      </jvf:contextualMenu>
JViews Framework レベルでメニューおよびメニュー項目を定義するには、menumenuItem、および menuSeparator の各タグを使用します。以下に例を示します。
<jvf:contextualMenu
        <jv:menu label="root">
          <jv:menuItem label="Zoom ..."
                       onclick="zoomButton.doClick()"
                       image="images/zoomrect.gif" />
          <jv:menuItem label="Pan ..."
                       onclick="panButton.doClick()"
                       image="images/pan.gif"/>
          <jv:menuSeparator/>
          <jv:menuItem label="Zoom In"
                       onclick="viewID.zoomIn()"
                       image="images/zoom.gif" />
          <jv:menuItem label="Zoom Out"
                       onclick="viewID.zoomOut()"
                       image="images/unzoom.gif"/>
          <jv:menuItem label="Zoom to Fit"
                       onclick="viewID.showAll()"
                       image="images/zoomfit.gif"/>
          <jv:menuSeparator/>
          <jv:menuItem label="Select"
                       actionListener="#{frameworkBean.action}"
                       actionListener="#{ganttBean.action}"
                       image="images/arrow.gif"
                       invocationContext="IMAGE_SERVLET_CONTEXT" />
        </jv:menu>
      </jvf:contextualMenu>

コンテキスト・ポップアップ・メニュー

このポップアップ・メニューは、サーバー・サイドで、メニュー・ファクトリーが次に基づいて動的に生成します。
  • ビューに設定されている現在のインタラクターの menuModelId プロパティー。
  • アプリケーション・ユーザーがポップアップ・メニューをトリガーしたときに選択されているオブジェクト。
JViews Diagrammer
ファクトリーを指定するには、コンテキスト・ポップアップ・メニュー・タグの factory または factoryClass 属性を使用します。
<jvf:contextualMenu factory="#{bean.factory}"/>
<jvf:contextualMenu factoryClass="com.xyz.demo.DemoFactory"/>

JViews Framework レベル
ファクトリーを指定するには、コンテキスト・ポップアップ・メニュー・タグの factory または factoryClass 属性を使用します。
<jvf:contextualMenu factory="#{bean.factory}"/>
<jvf:contextualMenu factoryClass="com.xyz.demo.DemoFactory"/>

ファクトリーは、IlvMenuFactory インターフェースを実装する必要があります。