あまつぶOL

65. 「2.14のあまつぶ(2001.2.14 19:5:24)
IMをよくよく読んでみたら、ColorSearchProcでの処理に誤解が
あったことがわかった。

これまでは、呼び出されたときに設定されているRGBColorをチェック
して、白以外だったらそのRGBColorを黒に設定してfalseを返していた。
するとまあ、ほかにはなにも登録されていなければデフォルトの
ルーチンが呼ばれて、「はい、黒ね」と処理してくれていたというわけだ。

本来の使い方は、その色のパレット内での番号(という表現で正しい
のかな)を求めてもうひとつの引数のほうに返して、trueを返すという
ことらしい。ってことは、ここを正しい実装に変更してやればそのまま
いけそうな気もする。
問題はパレット内での番号はいくつになるのか、かな・・・。
マスクを作るだけだから0と1だけになると思うのだけどその理解で
正しいのだろうか。ま、やってみればわかることだし、とりあえず
試してみることにしよう。

64. 「2.13のあまつぶ(2001.2.13 8:27:19)
QT-Q続編。
メモリ割り当てを2倍、4倍と変更してみたけど効果なし。
ま、そりゃそうだよな・・。
あとは、GetResource()で失敗したときにResError()でエラーコードを
チェックしてやるとか、WIND以外のリソースを読めるかどうかチェックしてやる
くらいかなぁ。エラーダイアログを出すルーチンは走っているから、ALRT(あってるかな)は
読めているはずだし。

IconParty続報。
マスクの作成はカラーテーブルを書き換えてCopyBits()する方法に変更して
回避する予定。最初からそうしておけばよかったのかな。

使用中の色で落ちる件は変わらず。塗りつぶしでは落ちて明るく・暗くでは
落ちないので、このあたりの違いを細かくチェックしてみようかな。
あとは、使用中の色の表示ルーチンの気になる部分を無効にしながら調べて
みることにしよう。

それはそうと、Appleのサンプルソースを見ていたら、QDFlushPortBuffer()
(つづりが違うかも)という命令を発見。バッファにたまっているものを
強制的に出力させるためのものらしいけど、ひょっとしたらこれを使えば
Opt+Oの問題も解決するかもしれない。あとで試してみよう。

February index