- - PR -
EclipseのLayoutを改造したい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-08-23 09:05
お世話になっております。
RCPアプリケーションを作成しているのですが、EditorやViewを最大化すると、MenuBar,CoolBar,StatusLine以外はすべて隠れてしまいます。 実現したいのは、EditorやViewを最大化しても、特定のControlは隠れない。つまりCoolBarやStatusLineのようなControlを作りたいのです。 また副次的に、Eclipse元来のCoolBarやStatusLineを取得して自由に操作したいと思っております。 おそらく、EditorやViewのエリアはSashFormをベースにしているのではないかと思います。従って、Viewに特殊な挙動を求めるのは難しいのではないかと思います。 そこで、EclipseのLayoutを改造して、Editor等のエリア外にControlを設置したいと考えました。 EclipseのLayoutはorg.eclipse.ui.internal.layout.TrimLayoutでした。 子コントロールは4つで、順に CoolBar、StatusLine、不明(MenuBarと思われる)、Editor/Viewエリアです。 CoolBarとStatusLineはorg.eclipse.ui.internal.WindowTrimProxyというLayoutDataを持っていました。その他はnullです。 ここまで分かった時点で実験をしました。 @CoolBarやStatusLine等をWorkbenchWindow.getChildrenで取得し、削除しました。すると、不明(MenuBarと思われる)以外は通常通り削除できました。どうしても3つ目のControlだけは何が削除されたか分りません。 A新しく作ったControl(今回はComposite)にCoolBarのLayoutDataをセットし、CoolBarを削除(Dispose)してみました。なぜだかよく分りませんが、DisposeしたはずのCoolBarが復活してしまい、よくわからない状態になってしまいます。 フレームワークを使用する以上、一定の制限は存在すると思いますが、EclipseのLayoutについて参考になる情報やサイト等があれば、是非教えて頂きたいと思います。 また、認識が不足していたり、誤っている場合もご指摘頂ければありがたいです。 よろしくお願い致します。 |
|
投稿日時: 2007-08-24 06:32
> 実現したいのは、EditorやViewを最大化しても、特定のControlは隠れない。つまりCoolBarやStatusLineのようなControlを作りたいのです。
Eclipse 3.3 をつかってみてとかいってみる。 |
|
投稿日時: 2007-08-24 08:37
お世話になっております。
杏さん、ご返信ありがとうございました。 ちなみに、現状Eclipse3.3を使用しておるのですが、何かそういったControlが追加されておるのでしょうか。 知識不足で申し訳ございませんが、ご教授頂きたいと思います。 よろしくお願い致します。 |
1