「拡張」ページ

「拡張」ページは、プラグインの拡張機能をブラウズし、編集するために使用されます。 拡張は、プラットフォームに動作を提供するための中心的なメカニズムです。 プラグインが、他のプラグインから使用することができる単純な Java API ライブラリーでない限り、 新規の動作が拡張として提供されます。

プラグインは、それが必要としているプラグインにより定義されている拡張ポイントに機能を提供します。  拡張構文を正しく処理するには、拡張構文が拡張ポイントの定義に一致している必要があります。 適格な拡張ポイントの完全なリストは、PDE によって計算されます。 その計算のために、PDE は、可視になっている (ワークスペースおよび外部の) すべてのプラグインを調べます。

PDE が提供する汎用の拡張ウィザードは、拡張ポイントを走査するのみです。 拡張スキーマが提供されている場合は (「拡張ポイント・スキーマ」を参照)、 このウィザードはそのスキーマから文法と拡張ポイントのメタ・データを抽出します。 

汎用ウィザードに加えて、いくつかの拡張テンプレートが使用可能です。 それらは、プラグイン・プロジェクトの初期内容を生成するために使用できるのと同じテンプレートです。 ここでそれらを使用することにより、拡張を作成することが可能です。 簡単なビューでプラグインを作成してから、エディターあるいはウィザードを追加することができます。

例:  「アクション・セット追加」拡張

「拡張」ページの操作を示すために、プラグインに「Hello, PDE world」アクションを追加します。 「org.eclipse.ui.actionSets」拡張ポイントにアクションを追加します。  (この例では、すでに拡張ポイントを理解しているものとします。)  

追加 ...」ボタンを押して開始し、次の「拡張」ウィザードを選択します。

「拡張」ウィザードの選択

スキーマ・ベースの拡張」ウィザードは、 最も一般的な方法で拡張を処理するので、このウィザードがデフォルトになっています。 このウィザードはプラグインを走査して、スキーマの有無に関係なく、検出したすべての拡張ポイントを提示します。 スキーマを持つ拡張ポイントを使用すると、PDE による支援はさらに優れたものになります。 拡張ポイントのスキーマが欠落している場合は、PDE はその拡張へのエレメントと属性の追加を認めますが、 それらのエレメントと属性が、選択されている拡張ポイントに対して有効であるかどうかを検証することはできません。

次へ」を押すと、拡張ポイントのリストが提示されます。org.eclipse.ui.actionSets を選択し、「終了」を押します。

「スキーマ・ベース」ウィザード - 拡張ポイントの選択

このウィザードは、新規の拡張を拡張のリストに追加します。 この拡張にはスキーマが関連付けられているため、拡張定義をさらに編集することができます。 新規に追加された拡張を選択し、ポップアップ・メニューから「新規作成 -> actionSet」を選択します。 この XML エレメントは、拡張定義で指定することのできる唯一の有効なエレメントとして定義されています。 

すべての必須属性に対して、PDE はデフォルト値を作成します。 「プロパティー 」ビューでエレメントを選択し、そのラベル・プロパティーを変更することにより、 アクション・セットのデフォルト名を「Sample Action Set」に変更することができます。  新規の名前が拡張リストに表示されます。 

「拡張」エディター・ページ

次に、アクション・セットに対してメニューとアクションを定義する必要があります。 アクション・セットを選択し、「拡張エレメントの子」セクションでメニューを開くと、 「新規作成」メニューに「メニュー」と「アクション」の 2 つの選択項目が提示されます。 これらの選択項目は、アクション・セット拡張のスキーマ情報に基づいています。最初に、メニューを作成します。   

  1. 新規 -> メニュー」を選択して、メニューを作成します。  
  2. メニューを選択し、そのプロパティーを変更します。 ID を「sampleMenu」に、 そのラベルを「Sample Menu」に変更します。 
  3. メニュー・オブジェクトがまだ選択されている間に、メニューをポップアップして、 「新規 -> 区切り文字」を選択します。 新規の子が表示されます。
  4. 「区切り文字」を選択し、その名前を「sampleGroup」に変更します。 これにより、メニューに名前付きグループが作成されるため、それを使用してアクションを追加することができます。

同様の方法で、以下のようにしてアクションを作成することができます。

  1. 新規 -> アクション」を選択して、アクションを作成します。  
  2. それを選択してそのプロパティーを変更します。そのラベルを「&Sample Action」に、 その「menubarPath」を「sampleMenu/sampleGroup」に変更します。 これにより今定義したアクションをメニューに追加します。

最後に、アクションの Java クラスを設定する必要があります。拡張ポイント定義により、 アクションは、IWorkbenchWindowActionDelegate をインプリメントしなければならないと指定されています。 PDE は、スキーマからこの情報を認識しているため、次のようにして支援を提供することができます。   

  1. クラス」プロパティーを、編集モードにするためにクリックします。 ボタンを選択してセル・エディター・ダイアログを開きます。
  2. ラジオ・ボタンを選択して新規クラスを作成します。
  3. ブラウズ」ボタンをクリックし、ソース・コンテナーを選択してから 「XYZ プラグイン」を選択します。
  4. クラスの名前を「SampleAction」に変更します。

終了」を押す前のダイアログは、次のようになっています。

Java 属性エディター

終了した後、(抽象メソッドごとにスタブ・インプリメンテーションを持つ) 必須のインターフェースに基づいて新規クラスが生成されます。 さらに、新規クラスの名前が、「クラス」プロパティーの値に対して設定されます。 また、このウィザードは、編集ができるよう、デフォルトで新規の Java クラスを開きます。 「実行」メソッドを探し出して、以下のステートメントを追加します。

      System.out.println("Hello, PDE world!");

新規のソース・コードを保管し、Java エディターを閉じます。 次に、マニフェスト・エディターの「拡張」ページに戻り、保管します。 

この例の続きは、プラグインの実行にあります。

 
Copyright IBM Corporation and others 2000, 2003