Eclipse実践プラグイン開発 6

拡張ポイント

拡張ポイント

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


図3:"org.eclipse.ui.views"のextension要素の構造
 

category要素はビューのカテゴリーを定義します。stickyView要素は、すべてのパースペクティブにデフォルトで表示されるビュー(スティッキー・ビュー)を定義します。

ビュー・クラス

ビュー・クラスではビューの機能を実装します。インプリメントできるインターフェースは、org.eclipse.ui.IViewPartインターフェースとそのサブインターフェースです(図4)。

IViewPart
図4:IViewPart
(画像をクリックすると別ウィンドウに拡大図を表示します)

 

実際には、図4のインターフェースをインプリメントするケースは少なく、IViewPartインターフェースをインプリメントし、用途に合わせた機能を実装しているorg.eclipse.ui.ViewPartクラスとそのサブクラス(図5)を利用します。

ViewPartクラスとそのサブクラス
図5:ViewPartクラスとそのサブクラス
(画像をクリックすると別ウィンドウに拡大図を表示します)


 

「ビューの追加」で作成した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
アクションのスタイルを指定します(以下の値を指定することができます)
  • push:通常のメニュー・アイテムとツールバー・ボタン(デフォルト)
  • radio:ラジオボタン
  • toggle:トグルボタン
state 値:なし
アクションの初期状態(styleがradioかtoggleのとき指定する)
enablesFor 値:なし
ビュー・アクションを使用可能にするために、一致しなければならない選択カウント

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る