< 前へ | 次へ >

演習 4 プロファイル用メニューの分割

この演習では、プロファイル・ツール・メニューを分割します。
演習 1 で作成した UML モデルとプロファイルに基づいて、デフォルトのポップアップ・メニュー (名前は「Add My Profile」) には、<A> Actor<B> Actor という 2 つのステレオタイプが含まれます (このポップアップ・メニューには関連は表示されないことに注意してください)。 両方のステレオタイプを含むデフォルト・メニューを 1 つ使用する代わりに、<A> Actor および Actor 用の個別のポップアップ・メニューを 2 つ作成します。

プロファイル・ツール・メニューを 2 つのメニューに分割するには、以下のようにします。

  1. 演習 1 で作成した My Profile Tooling Project に戻ります。
  2. 「プロジェクト・エクスプローラー」ビューで、My Profile ツール・モデルを開き、<<Menus>> Menus パッケージを展開します。
  3. 「プロパティー」ビューの「Context Menu」ページで、「<<ContextMenu>> My Profile」のプロパティーに、「<<FlyoutMenu>> Add My Profile」という子 1 つのみが含まれていることを確認します。新しいポップアップ・メニューを作成するには、FlyoutMenu を新規に作成し、2 番目の子として追加します。
  4. 開始する前に、Add My Profile FlyoutMenu をクリーンアップします。「プロジェクト・エクスプローラー」ビューで、「<<FlyoutMenu>> Add My Profile」をクリックし、「プロパティー」ビューの「一般」ページを表示します。 このメニューの名前を、「Add A Stuff」など意味のあるものに変更します。
  5. 「プロパティー」ビューで、「FlyoutMenu」タブをクリックします。 子プロパティーには、「<<MenuGroup>> defaultGroup」の 1 項目しか含まれていないはずです。 つまり、ポップアップ・メニューは単に子へのリンクを持つ <<ContextMenu>> であるということです。この子は <<FlyoutMenu>> であり、タイプが <<MenuGroup>> である子にリンクしています。
    注: ポップアップ・メニューは 1 つ (例えば、Add My Profile) のみで、別個にフライアウト・メニューを作るには、2 番目の <<MenuGroup>> を <<Flyout>> メニューに追加します。
  6. 現在のメニューのクリーンアップを続けるには、defaultGroup メニュー・グループを「A」スタッフのメニュー・グループとして使用し、「B」スタッフに新しいメニュー・グループを作成します。 「プロジェクト・エクスプローラー」ビューで、「<<MenuGroup>> defaultGroup」を選択し、「プロパティー」ビューの「一般」ページで、グループの名前を「AGroup」など意味のあるものに変更します。
  7. 「MenuGroup」タブをクリックし、子プロパティーの下に 2 項目がリストされていることを確認します。
  8. <<MenuCreationAction>><B>」アクターの子項目を削除し、このウィンドウを閉じます。
  9. 「プロジェクト・エクスプローラー」ビューで、「<<ContextMenu>> MyProfile」を右クリックし、「ダイアグラムの追加」 > 「ContextMenu ダイアグラムの追加」とクリックします。 ダイアグラムに、子フライアウト・メニューの「Add A Stuff」を持つポップアップ・メニュー「My Profile」が表示されます。 次の図は、「Add A Stuff」メニューが、作成操作の子 (Actor) を持つメニュー・グループの子 (AGroup) を持つことを示します。

    フライアウト・メニューを持つコンテキスト・メニュー

    注: このダイアグラムでカスタマイズを行うことができますが、要素プロパティーからカスタマイズを行ったほうが、通常はより迅速かつ手軽に行えます。プロファイル・ツールでの関連は、クラス図などでの関連とは異なる振る舞いをすることに注意してください。同様に、関連はダイアグラム・エディター上でのみ削除できます。フライアウト・メニューとそのグループとの間に実際に存在する関連は削除されません。
  10. フライアウト・メニューと「B」スタッフのメニュー・グループを新規に作成するには、「メニュー」パレットから FlyoutMenu ツールを選択し、ダイアグラム・エディターにドラッグして、「Add B Stuff」という名前を付けます。
  11. 同じ手順で MenuGroup ツールを作成し、「BGroup」という名前を付けます。
  12. アクター・メニュー作成アクションをこの新しいメニュー・グループに接続するには、「<<MenuCreationAction>> <B> Actor」を「プロジェクト・エクスプローラー」ビューからダイアグラム・エディターにドラッグします。 これでダイアグラムに、新規フライアウト・メニュー、新規メニュー・グループ、および元のアクター・メニュー作成項目が含まれました。
    新規フライアウト・メニュー、新規メニュー・グループ、および元のアクター作成項目がすべてダイアグラムに追加されました。
  13. これらの要素を接続するには、パレットで、「メニュー」の下にある MenuContainer 子ツールを使用して「My Profile」ポップアップ・メニューを「Add B Stuff」フライアウト・メニューに接続します。
  14. 同じツールを使用して、「Add B Stuff」フライアウト・メニューを「BGroup」メニュー・グループに接続し、「BGroup」メニュー・グループを「<B> Actor」メニュー作成項目に接続します。完成したダイアグラムは、次の図のようになります。

    Enter alt text.

  15. プロジェクト・エクスプローラー」ビューに、新規 FlyoutMenu 要素および新規 MenuGroup 要素が表示されます。これらの要素は、ContextMenuDiagram1 が作成された、「ContextMenu My Profile」の下にリストされていることに注意してください。 ダイアグラム内のすべての要素は、ダイアグラムと同じ場所に作成されます。 ここで、ダイアグラムを閉じて、「プロジェクト・エクスプローラー」ビュー内の別の場所に新規要素を移動し、新しい ContextMenu 図を作成することもできます。
  16. ツール・モデルでのメニューのカスタマイズが完了しました。
  17. 「ファイル」 > 「保存」とクリックし、作業内容を保存します。
    要確認: プロファイル・ツール・コードを生成または再生成するには、「プロジェクト・エクスプローラー」ビューで、ツール・モデルを右クリックし、「ツール・コードの生成」をクリックします。
プロファイル・ツール・プラグインをデプロイし、このプロファイルに基づいて新しいモデルを作成すると、パレットは次の図のようになります。

新しく作成されたパレット

< 前へ | 次へ >

フィードバック