torutkのブログ

ソフトウェア・エンジニアのブログ

JSR-296 Swing Application Framework 0.40の変更点と追従

今回のVer.0.40は、大幅な非互換変更が含まれています。
Hans Muller氏のuser@appframework...への投稿メールより変更点を抜粋します。
https://appframework.dev.java.net/servlets/ReadMsg?list=users&msgNo=539

変更点メモ

  • Taskの入力操作防止の仕組みを修正。前はTaskを戻り値とする@Actionだけが防止対象となり、また振る舞いをオーバーライドすることができなかった。Taskに新しいプロパティ"InputBlocker"を持たせ、TaskServiceがTaskを実行する際に参照する。Task.BlockingScope.NONE以外を指定するとブロックする。
  • ResourceMapの連鎖をスタートクラス/ストップクラスで指定する。サブクラスでスーパークラスのリソースをオーバーライドできるようにする。
  • パッケージ・リソースマップが削除された。
  • リソースマップから文字列を取得するメソッドで、書式指定方法がMessageFormatからString.format(printf様式)に変更された。
  • Taskのコンストラクタ(Class型を引数にとるもの)が削除された。変わって、リソースマップ/プレフィックスを引数にとるコンストラクタが追加された。
  • @Actionのblockパラメータの型がTask.BlockingScopeに変更された。
  • AbstractButtonやJLabelに注入されるテキストリソースにニーモニックキー/インデックスが自動的に設定される。