人気ブログランキング |

[CoveredCalc for Windows] 韓国語版 Windows をインストールしてみた

Windows 版 CoveredCalc、内部がネイティブ Unicode なアプリではないので、ほんとに英語圏以外の文字コード(エンコーディング)でも正しく動くのかちょっと不安。
そこで、韓国語(文字コードは EUC-KR か?)版 Windows で動作を確認してみようと思って Windows XP Home(韓国語版)をインストールしてみました。

当然ですが、インストール中の選択肢がほとんどハングル表記だったので、韓国語わからないぼくは翻訳サイトで翻訳しながらの作業になりました。
えらく時間がかかりました。おかげで、ハングルの各構成部分(母音と子音…これなんていう用語なんだろ)を入力するのが多少はやくなりました(あくまで多少…ね)。

肝心の CoveredCalc は韓国語言語リソースを作ってないので、てきとーにそれを作ってみてから試します。
誰か韓国語に翻訳してくれる人がいるといいのですが…。
# by hironytic | 2005-12-21 13:32 | 開発状況

[CoveredCalc for Windows] Windows 版多言語対応

とりあえず、1.4.0 では多言語対応として、ZETA 版だけ Locale Kit に対応させるつもりだったのですが、せっかくなので Windows 版にも多言語対応の仕組みを入れてみることにしました。
こんなことをやっていると、BeOS 版にも仕組みを入れなきゃいけなくなりそうで、自分の首を絞めている感じがしないでもないですが…。まあ、その辺は初期の段階から考慮してプログラム組んであったのでそんなに大変ではないとは思うんですが。
でも、少なくとも、1.4.0 は今年中にはリリースできませんね。(^^;

それで、Windows 版の多言語対応は専用の「言語ファイル」を各言語ごとに用意します。
言語ファイルの形式はただの DLL です。ただし、ダイアログ、メニュー、メッセージの 3 つをリソースに持ちます。あと、CoveredCalc 用にいくつか公開関数を作成します。
言語ファイルを作成するのにコンパイラが必要になる点で、ZETA に比べて手軽さに欠けますが、ダイアログなんかは単なる文字列の置き換えだけじゃなく配置まで調整しなきゃダメだと思っているので...。
まだ公開関数なんかの仕様はきちんと決まっていないんですけど。

まずは、テスト用に英語(アメリカ)の言語ファイルを作ってみて、それを使うようにしてみました。
ちなみに、ZETA みたいに、言語を動的に切り替えるのはサポートしないつもりです。というかできません。
CoveredCalc の再起動が必要になります。まあ…、そんなに頻繁に言語を変える必要のあるアプリでもありませんしね…。
今のところ、--language-file 引数を付けて強制的に言語ファイルを指定できるようにだけしてありますが、言語を選択する UI を用意する必要がありますね。
# by hironytic | 2005-12-06 09:58 | 開発状況

[CoveredCalc for ZETA] ロケールキット対応

昼すぎから嫁さんと子供たちが実家へ行ったのをいいことに開発続行。
週に 1 回より少ないペースで開発している気がする。

Koki さんから CoveredCalc のメッセージ等をを英語に翻訳してもらいました。まだドラフトですが。
それを使って、オリジナル言語を英語にした CoveredCalc for ZETA を作成しました。

ZETA 版開発用に makefile を修正していなかったので修正しました。
ZETA で makefile-engine のバージョンが変わっていて、リリース版を作る make でやたらと警告が出まくりますがなんとかビルドはできました。もうこれでいいや。
次のバージョン (1.4.0) では、CoveredCalc for BeOS (ZETA向け) ではなく、CoveredCalc for ZETA になりますよん。ちなみに、そうなると、dano では動かなくなります。

まだリリースには遠いですが、とりあえずできあがったものを Koki さんに見てもらう予定。
嫁さんたちが返ってきたのでそこで作業中断。

夜に Koki さんにメールしようと思っていたのに、子供たちと一緒に寝てしまった(汗)
すみません。今晩こそ送ります。また寝てしまわない限り…。> Koki さん
# by hironytic | 2005-11-28 11:34 | 開発状況

[CoveredCalc] バグ修正版 1.3.1 リリース

バージョン 1.3.0 で見つかった不具合を修正したバージョン 1.3.1 をリリースしました。
おそらく、1.0.0 から存在したのではないかと思うバグです…。
演算結果が負になる場合で、小数点以下の桁数が多くて表示領域に収まりきらないときに先頭のマイナス符号が表示されないというものです。
結果の正負が異なるわけなので、これは一大事です。
実際に被害にあった人がいるのか(っていうか、そもそも計算に使われているのか?)どうかわかりませんが、とりあえず申し訳ありません。

小数点以下の桁を何桁残してカットするかを計算する際に、マイナス符号分が考慮されていませんでした。
いや、そうじゃなくて、わざわざマイナス符号を判定して考慮から外していました。なぜだ!?
これは電卓のエンジン部分になるんですが、このあたりはおそらく 2003 年の春頃に最初に作り始めた部分です。その後でカバー(スキン)部分などを作り始めてバージョン 1.0として初回リリースを行ったのが 2004年の夏。
その初回リリースのちょっと手前で、カバーのフォント画像に「-」記号が入っていないことに気づいてあわてたりとかした記憶がぼやっとあります。そのときも、なんでだ!?とか思ったわけですが、もしかしたら初期の頃の構想では、マイナス符号は別の部分に表示する予定だったのかも。表示領域の最左端(ここには数字は入らない)に表示される電卓とかあるじゃないですか。そういう感じで。だからわざわざマイナス符号は表示桁数から除いていたのかもしれません。
とはいえ、そんな構想はドキュメントとして残っているわけでもないので、今となってはわからないのですが。

なお、既にメインの開発は 1.4.0 に向けて機能をいろいろ追加しています。
今回の修正は、1.3.0 のソースに対して行った修正で、メインの開発ラインとは別のところでやりました。
その関係もあって、ソースの公開作業(というか zip に固めるやつ)が面倒なので、1.3.1 相当のソース公開はしていません。公開パッケージング用のスクリプトがそのまま使えないんです。
欲しいという声があれば、パッケージングを手動で行うつもりです。欲しい人はメールしてください。
# by hironytic | 2005-11-24 16:16 | 開発状況

[CoveredCalc for BeOS, ZETA] 不具合の修正

BeOS 版、ZETA 版で、「常に手前に表示」をしたときに最小化(隠す)できなくなってしまう問題に対処するのを忘れていたので対処しました。
具体的には、最小化(隠す)するときに、Feel を B_NORMAL_WINDOW_FEEL に戻し、ダミーウィンドウを非表示にします。で、メインウィンドウの WindowActivated() で、アクティブになったときに B_FLOATING_ALL_WINDOW_FEEL の Feel にしたり、ダミーウィンドウを表示したりします。

それから、カバーブラウザのリスト部分で項目をダブルクリックしてカバーを切り替えられるようにしました。
これは BeOS (および ZETA) 版で実装し忘れていたものです。

実はこの 2 つの修正をしている間、ものすご~く眠くて、実際、ビルドを待っているときはウトウトしてたりしたので、直したと思ってるんですが抜けがあったりしないかとちょっと不安 (^^;
# by hironytic | 2005-11-21 13:48 | 開発状況