[uruma-dev:131] Re: アプリケーションの初期化メソッド

KOMORI Yusuke [E-MAIL ADDRESS DELETED]
2008年 3月 24日 (月) 23:26:38 JST


杉上さん

 小森です。

> ・ URUMA-141: Workbench に対応する初期化を行えるようにする
> ・ URUMA-140: IWorkbench をアクションへ DI できるようにする
> ・ URUMA-151: 一度クローズしたビューを再度オープンできるようにする
> 
> この3点を使用したサンプルをtunkのRSSにコミットしています。
> サンプルの内容は、初期化時にメニューに「ビュー一覧」を追加しています。
> ビューをクローズしても、メニューから再度ビューを表示することができます。

 いいですねぇ!
 これで、自由に Workbench をカスタマイズできますね。

 よく使いそうな設定は、Uruma の <workbench> タグの属性とし
て追加して、設定のみで実現できるといいかもしれません。

 あと、ビューの表示やパースペクティブの表示など、Workbench 
が元々用意しているメニューは、workbench.xml の中で

      <menu text="ビューの表示(&amp;V)" ref="VIEWS_SHORTLIST">

なんて書くだけで使えるようになるとよいかもしれませんね。

 Browser が使えるようになったおかげで S2Container のデバッ
グ機能が使えるようになりましたが、GUI らしくツリーを使ってS2
コンポーネントのツリーを表示できるようなビューを用意しておい
て、上と同じような感じでデバッグ用ビューを呼び出せるようにす
ると、開発が楽になるかもしれません。

 ではでは。

On Fri, 21 Mar 2008 15:22:31 +0900, "杉上洋平" <[E-MAIL ADDRESS DELETED]> wrote:

> 杉上です。
> 
> trunkに以下の対応を行いました。
> ・ URUMA-141: Workbench に対応する初期化を行えるようにする
> ・ URUMA-140: IWorkbench をアクションへ DI できるようにする
> ・ URUMA-151: 一度クローズしたビューを再度オープンできるようにする
> 
> この3点を使用したサンプルをtunkのRSSにコミットしています。
> サンプルの内容は、初期化時にメニューに「ビュー一覧」を追加しています。
> ビューをクローズしても、メニューから再度ビューを表示することができます。
> 
> WorkbenchWindowAction のソースコード。
> configメソッドの設定は、「タブスタイルをEclipse 3.0のようにかっこよくする」のみ
> 反映されるみたいです。
> 
> public class WorkbenchWindowAction {
> 
>     /* INJECT */
>     public IWorkbenchConfigurer workbenchConfigurer;
> 
>     public IActionBarConfigurer actionBarConfigurer;
> 
>     public IWorkbenchWindowConfigurer workbenchWindowConfigurer;
> 
>     @InitializeMethod
>     public void initialize() {
>         config();
>         createViewMenu();
>         createPerspectiveMenu();
>     }
> 
>     private void config() {
>         // ウィンドウの位置・サイズを保存する
>         workbenchConfigurer.setSaveAndRestore(true);
> 
>         // perspective を切り替える perspective bar を表示
>         workbenchWindowConfigurer.setShowPerspectiveBar(true);
> 
>         // Eclipse標準の「保存」を使う
> //        ActionFactory.SAVE.create( window );
> 
>         // Coolbarとperspectivebarを同じ行に配置する
>         PlatformUI.getPreferenceStore().setValue(
> IWorkbenchPreferenceConstants.DOCK_PERSPECTIVE_BAR , "top" );
> 
>         // タブスタイルをEclipse 3.0のようにかっこよくする
>         PlatformUI.getPreferenceStore().setValue(
> IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS , false );
>     }
> 
>     /**
>      *  ビュー メニューを追加する。
>      *
>      */
>     private void createViewMenu() {
>         IWorkbenchWindow workbenchWindow =
> workbenchWindowConfigurer.getWindow();
>         MenuManager showViewMenu = new MenuManager("ビューの表示(&V)");
>         showViewMenu.add(ContributionItemFactory.VIEWS_SHORTLIST.create
> (workbenchWindow));
>         actionBarConfigurer.getMenuManager().add(showViewMenu);
>         // 複数のウィンドウが開かれている場合にのみ表示され、
>         // ウィンドウの切り替えを行うアクション
>         actionBarConfigurer.getMenuManager().add(
> ContributionItemFactory.OPEN_WINDOWS.create(workbenchWindow));
>     }
> 
>     /**
>      * パースペクティブ メニューを追加する.
>      *
>      */
>     private void createPerspectiveMenu() {
>         IWorkbenchWindow workbenchWindow =
> workbenchWindowConfigurer.getWindow();
>         IContributionItem perspectivesMenu =
> ContributionItemFactory.PERSPECTIVES_SHORTLIST.create(workbenchWindow);
>         MenuManager layoutMenu = new MenuManager("パースペクティブの表示(&P)",
> "layoutId");
>         actionBarConfigurer.getMenuManager().add(layoutMenu);
>         layoutMenu.add(perspectivesMenu);
>     }
> }

----------------------------------------------
 小森 裕介 / Yusuke Komori

  E-Mail : [E-MAIL ADDRESS DELETED]
    Blog : http://d.hatena.ne.jp/y-komori/
     URL : http://www.littleforest.jp/




uruma-dev メーリングリストの案内