TOP設計・移行・活用> クラスを作成し、パースペクティブを作成
Eclipse実践プラグイン開発
Eclipse実践プラグイン開発

第8回:パースペクティブの拡張
著者:ビーブレイクシステムズ  大森 洋行   2005/8/19
前のページ  1  2   3  4  次のページ
クラスを作成し、パースペクティブを作成

   「概要」ページの「すべての拡張」から「org.eclipse.ui.perspectives」 - 「サンプル・パースペクティブ」を選択し、「拡張エレメント詳細」の「class」リンクをクリックして、examples.hello2.perspectives.SamplePerspectiveFactoryクラスを作成します。

   次にSamplePerspectiveFactoryクラスに以下のようにコードを記述します。
public class SamplePerspectiveFactory implements IPerspectiveFactory {

  public void createInitialLayout(IPageLayout layout) {
     // エディタエリアの取得
     String editorArea = layout.getEditorArea();
     // エディタエリアを非表示に設定
     layout.setEditorAreaVisible(false);

     // エディタの左側にブックマーク・ビューを生成
     IFolderLayout left = layout.createFolder("left_folder",
           IPageLayout.LEFT, (float) 0.2f, editorArea);
     left.addView(IPageLayout.ID_BOOKMARKS);

     // エディタの上側にプロパティ・ビューを生成
     IFolderLayout top = layout.createFolder("top_folder",
     IPageLayout.TOP, (float) 0.3f, editorArea);
     top.addView(IPageLayout.ID_PROP_SHEET);

     // エディタの中央にアウトライン・ビューを生成
     IFolderLayout middle = layout.createFolder("middle_folder",
           IPageLayout.TOP, (float) 0.4f, editorArea);
     middle.addView(IPageLayout.ID_OUTLINE);

     // エディタの下側に問題・ビューを生成
     IFolderLayout bottom = layout.createFolder("bottom_folder",
           IPageLayout.BOTTOM, (float) 0.3f, editorArea);
     bottom.addView(IPageLayout.ID_PROBLEM_VIEW);
  }

}
   以上で独自のパースペクティブを作成することができました。ワークベンチ・ランタイムを起動し、「ウィンドウ」メニューから「パースペクティブを開く」 - 「その他」をクリックします。表示された「パースペクティブの選択」から「サンプル・パースペクティブ」を選択し、作成した「サンプル・パースペクティブ」を開いてみてください(図1)。

   これまでに、独自のパースペクティブを作成する手順について説明しました。次に拡張ポイントとパースペクティブ・ファクトリ・クラスについて説明したいと思います。


拡張ポイント

   拡張する拡張ポイントは"org.eclipse.ui.perspectives"で、extension要素の構造を図2にまとめました。

"org.eclipse.ui.perspectives"のextension要素の構造
図2:"org.eclipse.ui.perspectives"のextension要素の構造

   perspective要素のclass属性は、org.eclipse.ui.IPerspectiveFactoryインターフェースをインプリメントしたクラスであるパースペクティブ・ファクトリ・クラスを指定する必要があります。


パースペクティブ・ファクトリ・クラス

   パースペクティブ・ファクトリ・クラスでは、パースペクティブの画面レイアウトを実装します。インプリメントできるインターフェースは、org.eclipse.ui.IPerspectiveFactoryインターフェースです(図3)。

IPerspectiveFactoryインターフェース
図3:IPerspectiveFactoryインターフェース

   パースペクティブの画面をレイアウトする方法は、「独自のパースペクティブの作成」で作成したSamplePerspectiveFactoryクラスで記述したように、createInitialLayoutメソッドのパラメータorg.eclipse.ui.IPageLayoutインターフェースのcreateFolderメソッドを呼び出し、レイアウトの枠を表すorg.eclipse.ui.IFolderLayoutインターフェースを生成します。そしてIFolderLayoutインターフェースのaddViewメソッドでパースペクティブにビューを追加します。

前のページ  1  2   3  4  次のページ


ビーブレイクシステムズ社 大森 洋行
著者プロフィール
ビーブレイクシステムズ社  大森 洋行
中堅システム開発会社にて、データベース検索ソフトの開発・導入コンサルティング・セミナー講師に従事。その現場の中で、Java及びオープンソースを用いたシステム開発は今後のシステム開発の主流になると考え、それらを独学で学ぶ。本格的にそれらを用いた開発に携わるため、ビーブレイクシステムズに入社。現在、データ項目やその流れの分析に重点をおきながら、Javaやオープンソースを用いたシステム開発に携わる。


INDEX
第8回:パースペクティブの拡張
  はじめに
クラスを作成し、パースペクティブを作成
  既存のパースペクティブの拡張
  拡張ポイント