拡張ポイント
拡張ポイント
拡張する拡張ポイントは、"org.eclipse.ui.views"で、extension要素の構造を図3にまとめました。

図3:"org.eclipse.ui.views"のextension要素の構造
category要素はビューのカテゴリーを定義します。stickyView要素は、すべてのパースペクティブにデフォルトで表示されるビュー(スティッキー・ビュー)を定義します。
ビュー・クラス
ビュー・クラスではビューの機能を実装します。インプリメントできるインターフェースは、org.eclipse.ui.IViewPartインターフェースとそのサブインターフェースです(図4)。
実際には、図4のインターフェースをインプリメントするケースは少なく、IViewPartインターフェースをインプリメントし、用途に合わせた機能を実装しているorg.eclipse.ui.ViewPartクラスとそのサブクラス(図5)を利用します。
「ビューの追加」で作成したSampleViewクラスのようにViewPartクラスを継承したビュー・クラスは、createPartControlメソッドとsetFocusメソッドを実装する必要があります(表1)。
| メソッド | 内容 |
| createPartControl | GUIコンポーネント作成などを実装 |
| setFocus | このビューにフォーカスが移ったときにワークベンチから呼ばれ、そのときに必要な機能を実装 |
表1:実装するメソッド
ビュー・アクションの追加
ビュー・アクションは図6の赤で囲まれた部分に対応します。

図6:ビュー・アクション
それでは「ビューの追加」で作成したビューにビュー・アクションを追加します(図7)。

図7:実行例
はじめにマニフェスト・エディターの「拡張」ページを選択し、「org.eclipse.ui.viewActions」を追加します。
"viewContribution"のプロパティ設定
「org.eclipse.ui.viewActions」を右クリックし、「新規」-「viewContribution」を選択し、"viewContribution"のプロパティを以下のように設定し、保管します。
| プロパティ | 値 |
| 内容 | |
| id | 値:examples.hello2.viewContribution |
| ビュー・アクションを識別するためのID | |
| targetID | 値:examples.hello2.views.SampleView |
| ビュー・アクションが追加されるビューのID |
"action"のプロパティ
次に「viewContribution」を右クリックし、「新規」-「action」を選択し、"action"のプロパティを以下のように設定し、保管します。
| プロパティ | 値 |
| 内容 | |
| id | 値:examples.hello2.actions.SampleViewAction |
| ビュー・アクションを識別するためのID | |
| label | 値:サンプル・ビュー・アクション |
| ビュー・アクションの名前 | |
| class | 値:examples.hello2.actions.SampleViewAction |
| ビュー・アクションの実装クラス(ビュー・アクション・クラス)の完全修飾クラス名。 org.eclipse.ui.IViewActionDelegateをインプリメントしていなければいけません |
|
| menubarPath | 値:additions |
| メニューのどこにビュー・アクションを定義するかを指定しま す。menu要素のidやseparator要素のname、およびgroupMarker要素のnameを"/"で区切って指定します。指定した位置に メニュー・アイテムとして表示されます。省略すると、メニューにビュー・アクションを追加しません | |
| toolbarPath | 値:additions |
| ツールバーのどこにビュー・アクションを定義するかを指定し ます。separator要素のname、およびgroupMarker要素のnameを"/"で区切って指定します。指定した位置にボタンとして表示さ れます。省略すると、ツールバーにビュー・アクションを追加しません | |
| icon | 値:なし |
| ビュー・アクションに表示されるアイコンのパス(メニュー・アイテムやツールバー・ボタンのアイコンとして表示されます) | |
| disabledIcon | 値:なし |
| ビュー・アクションが使用できないときに表示されるアイコンのパス | |
| hoverIcon | 値:なし |
| マウスがビュー・アクション上にあるときに表示されるアイコンのパス | |
| tooltip | 値:Hello, Eclipse world |
| ツールチップ | |
| helpContextId | 値:なし |
| ヘルプ・コンテキストのID(F1キーをクリックすると表示される) | |
| style | 値:push |
|
|
| state | 値:なし |
| アクションの初期状態(styleがradioかtoggleのとき指定する) | |
| enablesFor | 値:なし |
| ビュー・アクションを使用可能にするために、一致しなければならない選択カウント |

