プラグインの依存関係の設定
プロジェクトの作成が終わったら、次のようなマニフェストエディタが表示されます。これは、「META-INF/MANIFEST.MF」の入力を簡単に行えるエディタですが、「plugin.xml」の設定もこの画面から行うことができるので、ここで必要な値を入力をしていきます。
まず、マニフェストエディタ上でプラグインの依存関係を入力します。タブの[依存関係]を選択し、作成するプラグインで必要とするプラグインの依存関係を設定します。
今回作成するプラグインは以下の依存関係を持つようにしました。
- org.eclipse.ui
- org.eclipse.core.runtime
- org.eclipse.jface.text
- org.eclipse.ui.editors
- org.eclipse.ui.workbench.texteditor
- org.eclipse.core.resources
- net.sourceforge.phpeclipse
プラグインの拡張ポイントの設定
次に[拡張]タブを選択し、拡張ポイントの入力を行います。
1.viewerContributionの設定
[追加]をクリックし、「org.eclipse.ui.popupMenus」を選択します。「org.eclipse.ui.popupMenus」の追加が完了したら「org.eclipse.ui.popupMenus」を右クリックし、[新規]→[viewerContribution]を選択します。
作成した「viewerContribution」の[targetID]には「#PHPEditorContext」と入力します。こうすることで、PHPEditorを開いている状態にのみ動作するポップアップメニューを作成できます。
| 項目 | 設定値 | 説明 |
| id | jp.codezine.viewer.viewerContribution1 | viewerContributionに設定する一意のID |
| targetID | #PHPEditorContext | 表示を行うビューのIDを指定します。 |
2.メニューの作成
次に、作成した「viewerContribution」を右クリックし、[新規]→[menu]からメニューの作成を行います。
メニューの情報は次のように設定しました。
| 項目 | 設定値 | 説明 |
| id | jp.codezine.popup.menu | ポップアップにつけるID(これは後ほど作成するActionで参照されます) |
| label | CodeZineメニュー | ポップアップ時に表示されるラベル名 |
| path | additions | 設置するmenuのpath |
3.アクションの設定
今度は、先ほど作成した「viewerContribution」を右クリックし、[新規]→[action]から選択時に動作するアクションを作成します。
アクションの情報は次のように設定しました。
| 項目 | 設定値 | 説明 |
| id | CodeZineSetterGetterAction | アクションに設定するID |
| label | setter/getterの生成 | 表示されるメニューバーのラベル名 |
| class | jp.codezine.popup.actions.SetterGetterAction | 選択された際に起動するActionクラス |
| menubarPath | jp.codezine.popup.menu/settergetter | 表示するメニューのパス |
4.アクションクラスの定義
「menubarPath」には、先ほど作成した「メニューのID/settergetter」としています。こうすることで、表示したメニューのサブメニューとして、アクションのラベルが表示されます。アクションクラスの作成は[class*:]となっている部分をクリックすることで、簡単に行えます。
アクションクラスのフォルダーやパッケージは任意の値で設定します。ここでは次のように設定し、アクションクラスの作成を行いました。なお、インターフェイスには必ず「org.eclipse.ui.IEditorActionDelegate」を追加してください。
| 設定箇所 | 設定値 |
| ソースフォルダー | CodeZine PHPEclipseProject/src |
| パッケージ | jp.codezine.popup.actions |
| 名前 | SetterGetterAction |
| インターフェイス | org.eclipse.ui.IEditorActionDelegate |
プラグインの起動(起動の確認)
アクションクラスの作成が終わったら、プラグインを起動してみます。[概要]タブに戻り、[Eclipse アプリケーションの起動]から作成したばかりのプラグインを起動することができます。
PHPファイルを作成し、右クリックをすることで、[CodeZineメニュー]→[setter/getterの生成]が表示されることが確認できると思います。また、PHPEclipseのメニューも表示されています。これでPHPEclipseのメニューの一部に組み込めたことが確認できました。
しかし、このままではクリックしても動作しません。次はアクションの作成を行います。









