[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="ビューの表示(&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 メーリングリストの案内