プロトタイプ版をコミットしました
Sandbox申請も完了し、リポジトリも使えるようになったので seasar.org にプロトタイプ版をコミットしました。
リポジトリのURLは以下の通りです。
https://www.seasar.org/svn/sandbox/s2jface
誰でも取得できるので、興味ある人は Subclipse(じゃなくてもいいけど)で落として覗いてみてください。
あくまでもプロトタイプ版なので、まだまだ中途半端です。XML定義の仕様なども変更の可能性が大きくありますので、ご了承ください。
サンプル(DIでジャンケン)の実行方法
SeasarCon 2006 Spring で発表した「DIでジャンケン」のデモも一緒に入っています。
Eclipseの「構成および実行」から「SWTアプリケーション」の起動構成を作成し、「org.seasar.jface.example.janken.DIdeJanken」をメインクラスとして指定すると実行できます。
src/example 配下にある
あたりを見ていただくと、なんとなく使い方がわかると思います。
現在できること
画面定義XMLをパースしてJFaceを使って画面を描画する
画面からS2Containerに登録したコンポーネントの呼び出し
- 画面のid(Window要素のid属性)+"Action" という名前のコンポーネント(アクションコンポーネントと呼ぶ)が結びつけられる。(例:Windowのidが"janken"なら、"JankenAction")
- アクションコンポーネント上でアノテートされたメソッドを呼び出す。(以下のようなアノテーションなら、画面定義XML上で guButton という id を持つコントロールでSelectionイベントが発生したときに、goo() メソッドが呼ばれる)
@EventListener(eventListenerType=EventListenerType.SELECTION, id = "guButton") public void goo() { call(Janken.STONE); }