« TableViewerのイベント処理 | トップページ | エディタを開く »

2004.05.23

自作エディタの定義

最近本職が忙しくてまったく更新していなかったEclipseプラグイン開発Blog。久々の更新第1弾は,エディタの自作について紹介しようと思う。やはりEclipseの中心は「エディタ」である。パースペクティブも,ビューも,ツールバーに乗っかっているアイコンも,すべてはエディタを補佐するためのものであり,エディタの自作ができるようになれば「Eclipseを制覇した」と言うことができるだろう。

自作エディタを新規に作成するには,もちろんプラグイン・マニフェストに新規エディタの定義を記述することから始める。新規エディタの定義は,org.eclipse.ui.editors拡張ポイントを使って定義する

  <extension point="org.eclipse.ui.editors">
    <editor
      id="yoichiro.myPlugin.MyEditor"
      name="My Editor"
      icon="icons/MyEditor.gif"
      extensions="props"
      default="true">
      class="yoichiro.myPlugin.MyEditor"
      contributorClass="yoichiro.myPlugin.MyEditorContributor"
    </editor>
  </extension>

org.eclipse.ui.editors拡張ポイントでは,editor要素の属性を使って新規エディタの各種設定を記述する。id属性はエディタの識別子を,name属性には人間が読むためのエディタの名前を記述する。icon属性は,エディタを開いたときに表示されるアイコンのパスを記述する。

Windowsでは,ファイルの拡張子毎にアプリケーションを関連付けることができるが,Eclipseにおいてもファイルの拡張子にエディタを関連付けることができる。extensions属性に拡張子を記述することにより,その拡張子のファイルが新規エディタに関連付けられる。extensions属性は複数の拡張子を空白区切りで記述することができる。default属性にtrueが指定されることにより,extensions属性で指定された関連付けがEclipse内でデフォルトに採用される

エディタの実装クラスは,IEditorPartインタフェースを実装して作成する。そして,プラグイン・マニフェストでは,class属性にIEditorPartインタフェースの実装クラスのクラス名を記述する。

Eclipseでは,コンテキストメニューやツールバーへのアクションの追加などを,エディタごとに行うことができる。エディタが持つコンテキストメニューやツールバーなどの追加処理は,IEditorActionBarContributorインタフェースを実装したクラスに記述する。そして,プラグイン・マニフェストにおいて,contributorClass属性にIEditorActionBarContributorインタフェースの実装クラスのクラス名を記述して指定する。

プラグイン・マニフェストへの新規エディタの定義については,さほど難しいものではない。しかし,自作エディタを作成するための各種クラスの作成については,ちょっと敷居の高いものとなる。IEditorPartインタフェースやIEditorActionBarContributorインタフェースの実装クラスの作成方法は後日紹介する予定としよう。

|

« TableViewerのイベント処理 | トップページ | エディタを開く »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/12631/641964

この記事へのトラックバック一覧です: 自作エディタの定義:

« TableViewerのイベント処理 | トップページ | エディタを開く »