こんばんは、川合です。
I.Tak. さんは 2002/10/16 16:57:16 の「[OSASK 5163] Re: Canvas v
0.3」で書きました:
>> この「新規作成はいらない」という解釈は、間違ってはいないと思い
>> ます。なんというか、僕が薦めるスタイルとしては、シェルで新規ファ
>> イルを作って、それを右クリックして、editを選んでエディタを起動す
>> るというのが、理想なのです。
> それを「原紙入れから原紙を取り出す」という操作に読み替えれば
>そのままBTRONができあがるようです。おおっ
というか、このスタイルはファイルをオブジェクトに見たてた、典型
的なオブジェクト指向です。オブジェクトを生成して、そのオブジェク
トに対してアクションを起こしていくという方法で、目的を達成してい
くわけです。BTRONがその先駆けだったのかもしれませんが。
雰囲気からすると、BTRONでいうところの「原紙入れ」っていうのは
オブジェクト生成のためのオブジェクトみたいなものなのかな???
([OSASK 5076]の趣旨に関して)
> それは分かっていました。ええと、でも、画像を扱うときにそれを
>やるのは現状では無駄が多いような気がしたので、していません。
全くもってそのとおりです。I.Tak.さんの見解を僕も支持します。
> 画像を内部形式で保存するとなると、グラフィックボックスをそのまま
>保存することになると思います。でも、今の仕様では「ファイルの情報を
>元にウィンドウを書き直すのはナンセンス」ということになっています。
ああ、そうか、それがまずいわけですね・・・。いや〜、自分で言っ
たこと忘れていました。I.Tak.さんが全面的に正しいです。
>すると、保存したグラフィックボックス・使用中のグラフィックボックス・
>VRAM上のウィンドウ という三つを常に同じ状態に保つというかなり面倒
>くさいことをするわけです。
> ファイルは積極的にキャッシュして手元に置いておくというのがOSASKの
>最速理論のはずなので、リモートにあるかもしれないからダメ、というの
>は腑に落ちないのですが……
> つまり、内部形式で保存してもそのまま表示用にできないのでは便利
>どころか無駄であろうということです。
そのとおりです。リモートにあるから駄目なんていった過去の僕の発
言は撤回します。第一、メモリだってオンメモリにある保証は無いわけ
で(HDDに追い出されているかもしれないわけで)、リモートかどうか
で区別しろなんていった僕は本当にバカです。OSASKの何たるかが分か
っていなかったのかもしれません。
ということで、リモートにあってもいいです。ただ、確実にキャッシ
ュヒットするようにロックをかけてください。今はロックをかけるAPI
がありませんので、ロックをかけなくていいです。
ロックをサポートするまでは、全てに自動的にロックがかかることを
僕が仕様として保証します。だから将来的にも、今書いたアプリに関し
ては特にロックを記述しなくても全部ロックされます。そのつもりでい
てください。ということで、もし機会がありましたら、beditcタイプの
エディタにチャレンジしてみてください。このスタイルの向き不向きが
あると思うので、グラフィックエディタに関しては今のままでいいです
よ。
> いや、誤解はしてないつもりです。ファイルの内容と表示内容が完全に
>同期しているのが理想ですよね。
はい。
> 上のような理由から、まだbmpエディタである方が意義があると思い
>ますが (bmpエディタでも表示とファイルの完全同期は可能です。アンドゥ
>用のデータを取っておくのと同じ手間しかかかりません) 、どうでしょう。
そうそう、bmpエディタでも非圧縮なら表示とファイルの完全同期は
可能だろうと思っていました。そういうスタンスもありです。グラフィ
ックボックスがエディットバッファを兼ねなければいけないというわけ
ではありませんから。たとえばbeditcでは表示用のテキストボックスが
そのままファイル内容になっているというわけではありませんから。
まとめると、I.Tak.さんは誤解していたんじゃなくて、僕が矛盾する
ことを並べていて混乱したわけですね。本当にすみませんでした。・・
・というか、矛盾に気が付いた時点で、僕以上に僕の言いたいことが分
かっているといえそうです。さすがです。
それでは。
--
川合 秀実(KAWAI Hidemi)
OSASK計画代表 / システム設計開発担当
E-mail:kawai !Atmark! imasy.org
Homepage http://www.imasy.org/~kawai/