これまで、README ツールによって提供されるさまざまな拡張を見てきました。 ここでは、README ツール・プラグインの一般的な定義について説明します。
README ツール・プラグインは、plugin.xml ファイルの上部で定義されます。
<?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> <plugin id="org.eclipse.ui.examples.readmetool" name="%Plugin.name" version="2.1.0" provider-name="%Plugin.providerName" class="org.eclipse.ui.examples.readmetool.ReadmePlugin"> <runtime> <library name="readmetool.jar"/> </runtime> <requires> <import plugin="org.eclipse.ui"/> <import plugin="org.eclipse.core.resources"/> <import plugin="org.eclipse.core.runtime.compatibility"/> <import plugin="org.eclipse.ui.views"/> <import plugin="org.eclipse.ui.ide"/> <import plugin="org.eclipse.jface.text"/> <import plugin="org.eclipse.text"/> <import plugin="org.eclipse.ui.workbench.texteditor"/> <import plugin="org.eclipse.ui.editors"/> </requires> ...
プラグイン定義には、プラグインの name、id、version、および provider name が含まれます。 これらのパラメーターのほとんどは、以前の章の hello world プラグインで見たとおりです。 README ツールは、特殊プラグイン・クラス ReadmePlugin も定義します。
JAR ファイルの名前も提供されます。 plugin.xml ファイルで指定されたファイル名は、プラグイン・ディレクトリーに対して相対的なものです。このため、readme ツールの JAR ファイルは、プラグイン・ディレクトリーに直接配置する必要があります。
requires エレメントは、プラットフォームに readme ツールの依存関係を通知します。 ワークベンチ UI プラグインは、各種コア、JFace、およびテキスト・プラグインとともに必須プラグインとしてリストされます。
ReadmePlugin クラスは、README ツール・プラグインを表示し、 プラグインのライフ・サイクルを管理します。 Hello World の例で見たように、 プラグイン・クラスを指定しなくても構いません。 プラットフォームが、そのクラスを 1 つ用意します。 この場合、プラグインは、開始時に UI 関連データを初期化する必要があります。 プラットフォーム・クラス AbstractUIPlugin は、 UI リソースを管理する構造を提供し、ReadmePlugin によって拡張されます。
AbstractUIPlugin は、 プラグインの存続時間中に、イメージ、ダイアログ設定、および設定ストアを管理するために、 一般的な始動および終了のメソッドを使用します。 ダイアログおよび設定を扱うときに、 ReadmePlugin クラスの詳細について説明します。