#topicpath
----
//ここにコンテンツを記述します。

JavaWorldの2004年3月号に特集されていたので、Eclipseのプラグイン開発ツールを触ってみました。

Eclipseはこのプラグインの固まりで、すべての機能はプラグインで作成されているみたいです。ようするにEclipseを機能拡張したい場合はこのプラグインという作法に則って作成するわけですね。



まだ全然やり方がわかりません。とりあえずView(パースペクティブ内の一つのタイルのこと)を拡張して、選択しているファイルのファイル名を表示するプラグインを作成しています。
#contents

***とりあえずやってみる
一番簡単なやり方は
- プラグイン開発 >> プラグイン・プロジェクト >> プロジェクト名~
(プロジェクト名はたとえばnu.mine.kino.sampleとか)
-プラグイン・コード生成プログラム >> デフォルト・プラグイン構造~
(何も追加しない単純なテンプレート)

後はすべてデフォルトでOKでよいです。ウィザードが完了すると、単純なプラグイン・プロジェクトの作成完了です。

基本的な構成はできたので、次はプラグインファイル(plugin.xml)の記述です。手順は
-プラグインエディタの拡張タブ >> 追加 >> 汎用ウィザード >> スキーマベースの拡張
-拡張ポイントを org.eclipse.ui.views を選択
-プラグインエディタの拡張タブより、org.eclipse.ui.viewsを右クリック >> 新規 >> Category を追加(Viewを属させるグループの作成)
-さらに拡張タブより、org.eclipse.ui.viewsを右クリック >> 新規 >> View を追加(実際のViewの作成)
とするとViewを追加できます。後はプロパティViewより必要事項を入力します。
ただのビューを表示するだけなら
 <extension point="org.eclipse.ui.views">
   <category
     name="サンプルMyView"   <- viewが属するカテゴリ名
     id="com.samples.myview"> <- カテゴリのID
   </category>
   <view
     name="シンプルView"   <- viewのバーのタイトル
     category="com.samples.myview"   <- viewが属するカテゴリID
     class="com.samples.myview.SimpleView"    <- viewを実装するクラス名
     id="com.samples.myview.simpleview">      <- viewのID
   </view>
 </extension>
で十分です。プロパティViewよりclassを選択すると対応するクラス(ここではcom.samples.myview.SimpleView)のスケルトンもウィザードが作ってくれます。

***メニューやツールバーに機能を追加したい
メニューバーや、ツールバーにプラグインを表示させたいときは
 org.eclipse.ui.actionSets
という拡張ポイントを使用します。
ウィザードでHello,Worldプラグインを選択すると、以下のようなplugin.xmlが出力されます。
 <extension point="org.eclipse.ui.actionSets">
   <actionSet label="サンプル・アクション・セット"
     visible="true"
     id="nu.mine.kino.example.actionSet">
     <menu label="サンプル・メニュー(&amp;M)"
            id="sampleMenu">
       <separator name="sampleGroup"></separator>
     </menu>
     <action label="サンプル・アクション(&amp;S)"
       icon="icons/sample.gif"
       class="nu.mine.kino.example.actions.SampleAction"
       tooltip="Hello, Eclipse world"
       menubarPath="sampleMenu/sampleGroup"
       toolbarPath="sampleGroup"
       id="nu.mine.kino.example.actions.SampleAction">
     </action>
   </actionSet>
 </extension>

#ref(01.png)
 <menu label="サンプル・メニュー(&amp;M)"
#ref(02.png)
 <action label="サンプル・アクション(&amp;S)"
#ref(03.png)
 
#ref(04.png)
 <actionSet label="サンプル・アクション・セット"




***コンテンツ一覧
#ls2

***関連リンク
-[[プラグイン開発のJavaDoc:http://download2.eclipse.org/downloads/documentation/2.0/html/plugins/org.eclipse.platform.doc.isv/reference/api/index.html]]
-[[ObserveEclipse:http://www13.plala.or.jp/observe/index.html]]


----
この記事は
#vote(おもしろかった,そうでもない)

#comment
#topicpath


SIZE(10){現在のアクセス:&counter;}

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS