|
|||||||||||||||||||||||||||||||||||||||
| 前のページ 1 2 3 4 | |||||||||||||||||||||||||||||||||||||||
| "separator"のプロパティ設定 | |||||||||||||||||||||||||||||||||||||||
|
"サンプル・メニュー3(M)"を右クリックします。表示されたポップアップ・メニューから「新規」 - 「separator」を選択し、"separator"のプロパティを以下のように設定し、保管します。 |
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
| "action"のプロパティ設定 | |||||||||||||||||||||||||||||||||||||||
|
"examples.hello2.objectContribution"を右クリックします。表示されたポップアップ・メニューから「新規」 - 「action」を選択し、"action"のプロパティを以下のように設定し、保管します。 |
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
| examples.hello2.actions.SamplePopupMenuActionクラスの作成 | |||||||||||||||||||||||||||||||||||||||
|
「概要」ページの「すべての拡張」から「org.eclipse.ui.popupMenus」 - 「examples.hello2.objectContribution」 - 「サンプル・メニュー3(M)」を選択し、「拡張エレメント詳細」の「class」リンクをクリックして、examples.hello2.actions.SamplePopupMenuActionクラスを作成します。 |
|||||||||||||||||||||||||||||||||||||||
| 「Hello, Eclipse world」メッセージ・ダイアログ | |||||||||||||||||||||||||||||||||||||||
|
SamplePopupMenuActionクラスにJFaceのメッセージ・ダイアログを使用して「Hello, Eclipse world」メッセージ・ダイアログを表示するコードを以下のように記述します。 |
|||||||||||||||||||||||||||||||||||||||
private Shell shell;
|
|||||||||||||||||||||||||||||||||||||||
|
以上でポップアップ・メニューが追加できました。ワークベンチ・ランタイムを起動し、「Javaプロジェクト」など適当なプロジェクトを作成し、その中にhello.txtファイルを作成します。 そして、hello.txtを右クリックするとポップアップ・メニューに「サンプル・メニュー3」 - 「サンプル・アクション3」が追加されています(図5)。「サンプル・アクション3」を選択すると「Hello, Eclipse world」メッセージ・ダイアログが表示されます。 これまでに、ポップアップ・メニューを追加する手順について説明しました。次に、拡張ポイントとアクション・クラスについて説明したいと思います。 |
|||||||||||||||||||||||||||||||||||||||
| 拡張ポイント | |||||||||||||||||||||||||||||||||||||||
|
拡張する拡張ポイントは、"org.eclipse.ui.popupMenus"です。拡張ポイントの説明やextension要素の記述方法の確認方法は、「メニューの追加」の「拡張ポイント」と同様です。 拡張ポイント"org.eclipse.ui.popupMenus"のextension要素の構造を図6にまとめました。 ![]() 図6:"org.eclipse.ui.popupMenus"のextension要素の構造 |
|||||||||||||||||||||||||||||||||||||||
| アクション・クラス | |||||||||||||||||||||||||||||||||||||||
|
アクション・クラスでインプリメントできるインターフェースとそれらの関係は、以下のようになります。 右クリックしたときの選択しているオブジェクトの種類によって表示されるポップアップ・メニューを拡張する(objectContribution要素を定義した)場合は、IObjectActionDelegateインターフェースをインプリメントします。 指定したビューで表示されるポップアップ・メニューを拡張する(viewerContribution要素を定義し、拡張対象がビューである)場合は、IViewActionDelegateインターフェースをインプリメントします。 指定したエディタで表示されるポップアップ・メニューを拡張する(viewerContribution要素を定義し、拡張対象がエディタである)場合は、IEditorActionDelegateインターフェースをインプリメントします。 IObjectActionDelegateインターフェースをインプリメントしたアクション・クラスでは、表2のメソッドを実装する必要があります。 |
|||||||||||||||||||||||||||||||||||||||
表2:実装するメソッド |
|||||||||||||||||||||||||||||||||||||||
| まとめ | |||||||||||||||||||||||||||||||||||||||
|
今回は、メニューとポップアップ・メニューの拡張について説明しました。ポイントは、以下のとおりです。
次回は、ビューの拡張について説明します。 |
|||||||||||||||||||||||||||||||||||||||
|
前のページ 1 2 3 4 |
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||



