goo blog サービス終了のお知らせ 

Hironytic Status

ひろんの開発日誌

[CoveredCalc] 1.2.0 リリース

2005-06-15 15:04:12 | 開発状況
Windows/BeOS/BeOS Dano の 3 つそれぞれ、1.2.0 を少し前にリリースしています。
今回の強化点は [+/-] ボタンの追加(バージョン 1.1 のカバー定義ファイルへの対応)です。
あんまり目立った変化がないのでなんか寂しいですね……。

[CoveredCalc] 1.2.0 リリースに向けて

2005-06-10 16:49:53 | 開発状況
前の更新から 10 日以上経ってしまいましたが、この間もちょこちょこと作業は進めていました。
  • [+/-] ボタンの実装で見落としていた問題があったので修正したり、
  • カバー定義ファイルのバージョン "1.1" をはじかないようにしたり、
  • BeOS でも上記の修正がビルドできることを確認したり、
  • カバーの作り方ドキュメントを更新したり(未リリース)、
  • Adams カバー(デフォルトカバー)に [+/-] ボタンを追加したり、
  • マニュアル(付属のテキストファイル)にボタンに対応するキーボード上のキーの表を追加したり、
といった作業を終えました。

あとは、
  • マニュアルに更新履歴を記載して日付・バージョンを修正して、
  • Windows 98/Me/NT/2000/XP、BeOS R5、BeOS Dano で軽く確認して、
  • Windows/BeOS/Dano の 3 バージョン+カバーの作り方ドキュメントをそれぞれ zip で固めて、
という作業ができたらリリースです。
カバーの作り方ドキュメントは先に公開してもいいし、むしろするべきかもしれませんけど。

前向きに検討しているソースコード公開については
  • アイコンについては著作権は SHIN-ICHI さんにあり、ぼくがこのアプリケーションを作成するという目的に限定してライセンスしていただいているので公開できない。代わりにてきとーなアイコン画像でも作って入れておこうとか、
  • ソースコード自身のライセンスは MIT ライセンスにしようかなとか、
  • Windows と BeOS で改行コードの違いがあるので、公開するサーバに容量があれば(改行コード以外の中身は同じだけど)両方公開しようかなとか、
そういうことを考えています。

以上、空き時間にだらだら作業しているぼく自身のメモとして……。

[CoveredCalc] 符号反転キー

2005-05-30 16:56:49 | 開発状況
符号反転キーを実装しました。
一般的な電卓で「+/-」と表記されているキー(ボタン)です。

まず、このキーの挙動を決定します。

通常、数字の入力後にこのキーを押すと、数字にマイナスが付きます。逆に、マイナスの数字が表示されている状態でこのキーを押すとマイナスが消えます。
これはまあそういうものだともともと思っていました。

次に、演算子の直後にこのキーを押した場合、例えば[1][2][+]という順番で入力したあとにこのキーを押すとどうなるのがいいんでしょう?つまり、[1][2][+][+/-][=]と入力したときの振る舞いです。
Windows の電卓や家にあった電卓で試してみましたら、挙動がいろいろ違うので参考にするのをやめました。
CoveredCalc では、[+/-]を押すと、現在表示されているものの符号が反転し、それが入力になることにします。
この場合は、[1][2][+](この時点で「12.」と表示)[+/-] で表示は「-12.」。続く [=] で「12 + (-12)」が計算されて表示が「0.」

それから、[1][+][2][=][+/-]と入力した場合。[1][+][2][=](この時点で表示は「3.」)[+/-](これにより表示は「-3.」)
例えばこのあとさらに [+][5][=] などと入力すると「-3 + 5」が計算されて「2.」になります。

今度はこのキーの後に数字を入力した場合は?
[1][2][+/-][3]など。この場合は「-123」になります。つまり [+/-] は [+] や [-] などの演算子とは動作が異なるということですね。([1][2][+][3]なら画面表示は「3」ですからね)

とまあ、こんなことを調べながら電卓コアエンジンに対する実装を終えました。
続いて、UI モジュールでも [+/-] ボタンを追加しました。キーボードでは「N」を押すことで入力できます。あと、Windows 版に限り「Shift+(テンキーの)-」と「F9」もこのキーに対応づけました。「F9」は Windows 標準電卓に合わせました。
それから、カバー定義ファイルにも [+/-] ボタンの記述を追加しました。このおかげでカバー定義ファイルのバージョンが "1.0" から "1.1" になるのですが、まだカバー読み込み部分を修正してません。これ修正しないと、"1.1" がはじかれてしまいますね。
さらに残っている作業として、カバーの作り方ドキュメントの更新、Adamsカバーに[+/-]ボタンを追加、があります。
ここまでできれば、とりあえず、Version 1.2.0 として公開しちゃおうかと思ってます。
あ、ちなみに、まだ BeOS では全く動作を(というかコンパイルすら)確認してません(汗

[CoveredCalc] 引き続き電卓エンジンを見直し中

2005-05-23 15:12:59 | 開発状況
イコールで計算結果が出たあとに(イコールでなくてもいいんですが)BackSpace を入力すると、表示されている計算結果を 1 文字削る動きにしました。
つまり、「3 × 5 =」と入力してディスプレイ部に「15.」と表示されたところで、BackSpace ボタンを押すと「1.」になります。さらにそのまま次の数字を入力できます。

それから、演算結果に小数部分が出てくる計算で、小数部分の最後に 0 が表示される不具合を見つけて修正しました。
上記 BugTrack の例では、浮動小数点数の誤差の影響もあるのですが、その部分は修正してません。
というわけで、小数を含む計算にはもしかすると誤差が出るかもしれません。(電卓としては最低ですね…)
基本的には計算するたびに有効桁数で丸めているはずですが。

ソース公開については前向きに検討中ですが、使用しているアイコンについては公開できない見通しです。

[CoveredCalc for BeOS] Enter キーと PPC 版

2005-05-12 09:55:25 | 開発状況
BeOS 版で [Enter] キーを押しても「=」が入力されないバグは修正しました。
単に条件判定を加えただけですが。
この修正は次のリリースに含まれます。

PPC 版のクロスコンパイル環境については初めて知りました。
興味深いんで一度試してみたいところではありますが、すんなりコンパイルが通りそうな気もしないのとバイナリができても自分では確認できないこと、さらに今後のバージョンアップ作業の手間を考えるとあまり乗り気はしません。
それよりはソースを公開して、できる人に好きに料理してもらう方がぼくとしては楽かなと考えてます。
…すでに無意味に複雑になっていて、恥ずかしいソースではありますが。

[CoveredCalc] Version 1.1.1 リリース

2005-05-11 09:38:44 | 開発状況
予告通り Windows、BeOS、BeOS(Dano) の 3 つについて Version 1.1.1 をリリースしました。
今回のリリースでライセンスを一部変更しています。条件を 1 つ削除しました。

○ ホームページ上での転載の場合は、サポートホームページ(次の項に
  書いてあります)のいずれかへリンクを貼って紹介する形にしてください。
  こうすることでバージョンアップに自動的に対応できます。


最近のぼくの傾向から、サポートホームページのアドレスが変わらないとも言えないので、してくれるなら勝手にミラーしてくださいということにしました。
まあ、この条件自体、かなり昔に書いたものということもあるし。

[CoveredCalc] バージョンアップの予定

2005-05-10 13:21:38 | 開発状況
warmgray mini で露見した前のカバーのくり抜きが残ってしまう不具合は修正しました。
一気に Version 1.1.1 のリリースまで行おうとしたのですが、そこまでは時間が取れませんでした。
Windows、BeOS、BeOS(Dano) の 3 種類もビルドする必要があり、それぞれのドキュメントも更新しなければならないので、修正・確認を合わせて 1 時間ちょいの作業時間ではムリがありました。

ということで、次に時間がとれたら 1.1.1 のリリースまで行う予定です。
なお、BeOS 版(NOT Dano版)ではカバーのくり抜きに対応していないのでこの不具合は発生しませんが、電卓エンジンの修正がいくつか反映されます。

[CoveredCalc] 電卓エンジン向上月間

2005-05-09 17:55:16 | 開発状況
現在リリースしている CoveredCalc は電卓エンジンの作り込みが甘いです。
さすがに簡単な演算で計算ミスがあったりはしない(と思っている)のですが、1年ほど前にも書いたようにちょっとイレギュラーっぽい入力をすると途端に納得のいかない結果になります。
演算子の直後にイコールを入力したときの挙動は、表示されているものが入力されたとみなすように修正しました。
演算子を続けて入力(例:「3 × +」)したときの挙動については、演算子を入力し直したことになるようにしました。(この例なら、「3 +」と入力したのと同じ)
他にも、イコールで計算結果が出たあとに BackSpace を入力すると表示された計算結果を 1 文字削るような動きにしたいというのがありますが、これはまだ修正できていません。

しばらく、電卓エンジンに手を入れて、このあたりの挙動を直そうと思っています。

…と考えていたところ、桝田道也さんのところで warmgray mini というカバーが新しく公開されました。
使ってみたら、CoveredCalc 本体のバグ発見!(;´Д`)
うわ。こっちのバグを急いで修正しなきゃ、ですね。

[CoveredCalc for BeOS] Dano 専用バージョンを公開

2005-04-18 09:46:57 | 開発状況
BeOS 版を Dano 環境でビルドしたものを公開しました。
通常の BeOS 版(R5向け) との違いは、非矩形ウィンドウのサポートです。
Windows 版と同じようにカバーの周りがくりぬかれるため、見た目もずいぶんきれいに見えるようになると思います。

Dano の機能を使っているので、R5 では動作しません。
現在、手元に Dano しか環境がないので確認できていませんが、Zeta や PhOS でも動くのではないかなと思っています。

[CoveredCalc] 1.1.0 リリース

2005-03-28 21:12:14 | 開発状況
27 日にWindows 版、BeOS 版それぞれの CoveredCalc version 1.1.0 をリリースしました。
マイナーバージョンが上がる割にはあまり(ユーザから見た)魅力的な機能追加がないので、デフォルトカバーを一新しました。
もともと、1.0系でデフォルトカバーになっていた「おさかな電卓」はデフォルトカバーとしてデザインしていたものでもないので、まだ実装できていない A ~ F のキーや +/- ボタンがあって情けなかったのも理由としてあります。
今回付けたデフォルトカバー「Adams」はデフォルトということもあって特徴らしい特徴もない無難なデザインにしてみました。
おかげで名前が思いつかず、コード名のような感じで仮に決めてあった「Adams」をそのまま採用してしまいました。
今後はこの Adams カバーもよろしくお願いします。

1.1.0 での変更点は この辺に書いてあります。