VisualFrame Version.1.0.4 変更点

ツール
ClientJavaエンジン
ビジネスルール
基本クラス
GUIBuilder

不具合:不具合 機能Up:機能Up 仕様変更:仕様変更 その他:その他

ツール

1
機能Up
GuiDesignerが「メニュー」と「ツールバー」にも対応しました。
GuiDesignerが「メニュー」と「ツールバー」を表示できる機能が追加されました。
イメージの URL は common.wdg の<macro name="HtmlUrl" value="..." /> 要素の value 属性の値が使用されます。これと違った URL からイメージを読み込みたい場合は ToolClient.wdg の <rule-settings> 要素の配下に
<rule-setting name="engine-image-url" url="${HtmlUrl}" />
要素を追加し、この要素の url 属性を指定して「イメージ用のパス」の設定を行ってください。

2
不具合
GuiDesignerをCAMCを複数起動した状態(同時でなくても)で起動すると、表示したいフレームと違う情報が表示される。
CAMCを複数起動した状態で、いくつかのフレームでGuiDesignerを起動していると、いつの間にかGuiDesignerからCAMCに戻れなくなることがあります。また、その時GuiDesignerでは一番最初に起動したCAMCで最後に表示したフレーム情報しか表示されなくなります。この現象が出る不具合を修正しました。

3
不具合
別のコンポーネントで修正中の値が違うコンポーネントに反映されてしまう。
GuiDesignerの「レイアウト」や「プロパティ」情報を修正し、セルを編集状態のまま違うコンポーネントを選択すると、新たに選択したコンポーネントに修正中だった値が設定されてしまう不具合を修正しました。

4
不具合
CAMC 「レイアウト」タブに削除できないゴミが残ってしまう
「コンポーネント」タブで「挿入」ボタンをクリックし、基本クラス選択ダイアログで「キャンセル」を行うと「レイアウト」タブに削除できない空のレコードが追加されてしまう 不具合を修正しました。
(tc103pth1.jar の反映)

5
不具合
GuiDesigner起動時にException が発生し、起動できない。
CAMC からコンポーネントを追加して、保存-再読み込みの手順無しで GuiDesigner を起動しようすると Exception が発生し、GuiDesigner を起動できない不具合を修正しました。

6
不具合
CAMC フレームの画面間遷移アイテムセットで参照しているアイテムの名称を変更しても画面間遷移アイテムセットでの名称に反映されない。
CAMC フレームの画面間遷移アイテムセットで参照しているアイテムの名称を変更しても画面間遷移アイテムセット(一度保存後、データベースから読み込んできたアイテムのみ)での名称に反映されない不具合が発見されました。この不具合によるデータへの影響はありません(アイテムの名称変更後に保存、再読み込みで正常に表示されます)。

ClientJavaエンジン

1
不具合
HIDE_ON_CLOSE画面で2度目起動以降のAfter処理不正
HIDE_ON_CLOSE画面で2度目起動以降のAfter処理が実行されなくなる不具合が修正されました。
現象としては、"Afterが実行されない"、"フォーマット機能が正常に動作しない"、"標準チェックが動作しない"などが発生します

2
不具合
表示の値と内部データ値に差が発生
IME入力確定を行わない状態でマウスクリックにより他コンポーネントにフォーカスが移動させると表示の値と内部データ値に差が 発生する不具合が修正されました。

3
不具合
KeyMapされたボタンにて複数のイベント発生
KeyMapされたボタン(ニーモニック含む)に対して、Action登録されたキーを押しつづけると複数回イベントが 発生してしまう不具合が修正されました。

4
不具合
ボタンのステータスメッセージ不正
ボタンにフォーカスが当たっている時ステータスバーに表示されるメッセージが、常に"ボタンを押してください"と 表示される不具合が修正されました。

5
不具合
ComboBoxにItem割り当てが無い時Exception発生
ComboBoxにItem割り当てが無い時、画面起動時にNullPointerExceptionが発生する不具合 が修正されました。

6
不具合
ボタンpressedのタイミングで処理発生する場合がある
ボタンにてpressedのタイミングでBefore,Afterの処理が発生してしまう場合がある不具合が修正されました。
(正常動作では、ボタンのreleasedのタイミングで発生する)

7
不具合
ボタンにてSpaceキーを押しながら他をクリックすると表示が不正になる
ボタンにてSpaceキーを押しながら他のコンポーネントをクリックした場合、それ以降ボタン上にマウスがくるとボタンがへこんだ表示(pressedのままの状態)になる 不具合が修正されました。
また、この不具合はSwing自体の不具合になり、Swing不具合回避を行う対応になります。

8
機能Up
java.awt.Component#getName()によりコンポーネントの物理名が返るようになった
java.awt.Component の Name に、「コンポーネントの物理名」がデフォルトで設定されるように変更されました。

9
機能Up
画面クラスに public Manager getManager() メソッド追加
画面クラス(WedgeFrame,WedgeDialog)に public Manager getManager() のメソッド追加が追加されました。

10
機能Up
画面のインターフェース(FrameInterface)に public void isResizeForApplet(boolean isTrue) メソッド追加
画面のインターフェース(FrameInterface)に public void isResizeForApplet(boolean isTrue) のメソッド追加が追加されました。
このメソッドは 画面中央位置に表示、アプレットのステータスバーが表示された場合にはステータスバー分画面を大きくする 指定を行う ものになります。デフォルトは true = 機能を使用する になります。
画面位置(x,y)を明示的に指定したい場合には、画面起動時のビジネスルールにて isResizeForApplet(false); を実行してください。

11
不具合
IME入力中の処理不具合修正、統一化
IME入力中に他コンポーネントをクリックしても反応しない処理を全てのコンポーネントに対して統一されました。
また、IME入力途中の状態で 画面を最小化→通常に戻す 動作を行った場合、ENTERを押すなど確定処理を行っても文字の下線 (IME入力途中の状態で表示されるもの)が消えない不具合も同時に修正されました。

12
不具合
After処理中にTabキーを押すとrequestFocusがループする
重い処理を実行中にTabボタンを押すと処理終了後に、 画面起動時にフォーカスが当たるコンポーネント と 次のフォーカスコンポーネント の間にてフォーカスがループしてしまう不具合が修正されました。

13
機能Up
ClearButton コンポーネント追加
ClearButton コンポーネントが追加されました。このボタンは、画面内データをクリアし初期化するなどの処理を行う場合に使用が可能です。
動作としては、ExitButton同様 フォーカス取得を行わない(直前のAfterイベントが実行されない)ボタンになります。差としては、ExitButtonでは仕様上動作しない SetFocus処理 を入れることが可能です。
その代わり、画面内のAfter処理(値の確定、チェック、Afterイベント)は実行されませんので、必ずルールにて画面内整合性が取れる状態になるよう実装を行ってください。
アプリ内にてデータを設定(クリア)する条件が前提で、SetFocusの処理がの実装が初めて実現できるためです。 ルールにて整合性を保つ処理を入れないと、コンポーネントと内部データの差が発生する場合があります。これについてはボタンの仕様上 製品の不具合ではなく、アプリの実装ミスになります。(製品として保証はできません)

Tabによるフォーカス移動では、(ExitButton同様)フォーカス対象にはならないのに注意してください。
また、クリック後に任意にフォーカス移動しない場合には、直前のフォーカス取得コンポーネントにフォーカスが当たった状態のまま処理終了します。(フォーカス移動が発生しないため)

また、ExitButtonではマウスPressedのタイミングで処理が実行されていましたが、NoFocusButtonでは通常のDefaultButton と同様にマウスReleasedのタイミングにて処理が実行されます。
(マウスをPressしたまま、該当ボタン外にマウスを移動しReleasedすると処理は実行されない)

このコンポーネントはAfterMode="1"では動作しません。AfterMode="2"にて実装しているアプリのみ動作可能です。

14
不具合
入力制限付きコンポーネント不正
入力制限付きコンポーネントにて戻り値に STOP_SELECT_ALL が指定された場合、入力制限のチェックが効かなくなる不具合が修正されました。

15
機能Up
処理前ダイアログにて"いいえ"が指定されたときの戻り値不正
実行リストの 処理前ダイアログ を指定しダイアログでの選択肢にて"いいえ"が指定されたとき、対象行の処理のみスキップし次行からの処理が動いてしまう不具合が発見されました。
正しい仕様は 実行リスト中の処理を全てCANCELする になりますので、CANCELに修正されました。
但し、互換性のために 現状の動き(対象行の処理のみスキップ) に変える事ができるようにConfigに指定が追加されました。
新しく追加されたConfigには、処理前ダイアログにて"いいえ"が返されたときに戻り値として、
1.CANCEL (デフォルト) ・・・ 対象行以降の処理を行わずに CANCEL の戻り値が返される
2.USER_ERROR ・・・ 対象行の処理を行わず、USER_ERRORを返す。その後の処理は対象行のUSER_ERRORの指定に依存する
3.SKIP_ALL ・・・ 対象行以降の処理を行わずに SKIP_ALL の戻り値が返される
4.OK ・・・ 対象行の処理を行わず、OKを返す。(現状の動き)

を指定できるようになりました。

onfigにて指定する場所は、config/module/setting/event の下のノードに
<beforeDialog>
<no value="CANCEL" />
</beforeDialog>
と指定します。

16
不具合
Dialogの画面のUnLoad処理をCANCEL時の不正
Dialog、Dialog(Modal)の画面のUnLoad処理にてCANCELを返し、画面終了を中止した場合Exceptionが発生する不具合が発見されました。
このエラーが発生すると絶えずExceptionが発生し、処理が正常に動作しなくなります。

17
不具合
コンボボックスのAfterの実行タイミングに差異がある
コンボボックスのAfterにて モーダルダイアログを表示 かつ フォーカス移動無し を指定した場合、コンボボックスのリストを閉じたときに Afterが実行されず、フォーカス移動時に実行される場合がある不具合が発見されました。

18
機能Up
データ表示なしラベル コンポーネント追加
実行モード=run の場合、一度開いた画面についてはリポジトリをメモリに保持し、再度画面表示した際にメモリ内情報から画面インスタンスを生成するような仕様になっていますが、大量の画面を表示する際にメモリ占有率が多くなってしまい、結果レスポンス劣化に繋がる場合がありました。 この問題を改善するため、runモードでもリポジトリをメモリ内に保持しない(再度画面を表示時には、リソースまたは、サーバーより画面情報を取得する)モードの切り替えが行えるように機能追加されました。 Configファイル(RunClient.wdg)にて以下の記述に変更することにより機能が反映されます。
RunClient.wdg 29行目(付近)
<repository mode="local" memorysave="false">
#memorysave="false" の属性を追加。
false を指定された場合には、リポジトリのメモリ保持は行わなくなります。
true を指定 もしくは 設定なし の場合は、現状どおりの動作、つまりリポジトリのメモリ保持を行います。

19
機能Up
リポジトリ保持なしモード追加
データ表示なしラベル(NoPrintDataLabel) コンポーネント追加されました。 現状使用されている DefaultLabel は、「アイテムの登録がある場合、そのデータの値を表示する」ように作成されていますが、今回追加したコンポーネントは「常に CAMC/コンポーネント/表示文字列 を表示する」ようになります。 ルールの入出力引数に設定したいが、表示文字列を表示しておきたい 場合などには、このコンポーネントを使用することにより実装が可能になります。

20
不具合
実行リスト制御ルール使用時の不具合
クライアント(制御)⇒制御(行番号)、制御(パラメータ) のビジネスルールを使用しても処理対象が全て実行されてしまうという不具合が発見されました。 この現象が発生するパターンは、これら制御のビジネスルールを実行する"前"に クライアント(イベント・プロセス)⇒ItemのAfterEventを実行、 ItemのBeforeEventを実行 のビジネスルールを設定・実行した場合になります。

ビジネスルール

1
不具合
フレーム位置設定の動作不良
クライアント(フレーム) → フレーム位置設定(SetFramePosition) がVer1.0.3では動作しない不具合が 修正されました。

2
不具合
パラメータと大小比較の不要な標準出力への出力
共通(チェック) → パラメータと大小比較(CheckBigSmallParameter) において、不要な文字列が 標準出力へと出力される不具合が修正されました。

3
不具合
カレンダー設定の日付フォーマット対応
クライアント(コンポーネント) → カレンダー設定(SetCalendarToPanel) が日付フォーマットの テキストフィールドと関連付けられている状態にて、フォーカスをテキストに設定したまま カレンダーをクリックすると、編集中にもかかわらずフォーマット状態のテキストが設定される 不具合を修正しました。

4
不具合
マージソートの動作不良
共通(値・ソート) → マージソート(昇順・降順)(MergeSortUp・Down) が動作しない不具合が 修正されました。

基本クラス

1
不具合
バイト桁数不正取得
標準チェッククラスにてバイト桁を取得する際、SJIS指定で行っていたため文字コードが異なる場合に正しく桁数が 取得されず、桁数チェックがうまく動作しない不具合が発見されました。
MS932などの文字の場合、正常にバイト桁数を取得できない場合があります。
デフォルトは"文字指定なし"に修正されました。
(CheckLibraryCommon_Nothing.jar の反映)

GUIBuilder

1
不具合
ExportファイルをGuiBuilderに再度Importするとエラー発生
GUIBuilderにてExportファイルを再度GuiBuilderに再Importするとエラーが発生し、GUIBuilderの異常終了、コンポーネントが消える、 などの不具合が修正されました。