[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[b-free: 1868] Re: B-Free にXを 載せる (Re: B-FreeO Sの解説ほん
Hidetosi Ochiai wrote:
> うしろのウインドウをクリックしてアクティブウインドウが
> 切り換わる場合のイベントの流れを追ってみました。
>
> マウスドライバ
> ↓
> イベントマネージャ
> ↓
> アクティブプロセスのイベントキュー
> ↓
> アクティブプロセスがwget_evt()でイベントを取り出す
> wget_evt()
> {
> get_evt()
> if(マウスのクリック && ポインタの位置が他のウインドウ)
> {
> クリックされたウインドウに EV_SWITCH イベントを送る
> EV_INACT を返す
> }
> :
> : (その他の処理)
> :
> }
>
> ようするに、wget_evt() の中でウインドウの切り換えが必要かどうかを
> 判断して切り換え処理を行なっている、ということです。
そうですね。了解しました。
> |そういうことで、window の流れの詳しいことは、前に落合さんに送った
> |(様な気のする) BTRON1 の Window Class をみてください。
>
> これはアプリケーション側のイベント処理ですね。
その通りです。
> |# っていうか、まだ持っています? この前、HD が飛んだときに最新版を
> |# 失ってしまったので、もし、お手数でなければ、そして捨てていなければ
> |# こちらに送っていただけないでしょうか? 勝手なことを言ってすみません。
> |# よろしく。m(_._)m
>
> 持ってますので、送ります。
受け取りました。感謝!
> # 実はあんまり読んでなかったりします。
あはは。(^_^;
> |> とすると、アプリケーションが wget_evt()を使わずに
> |> get_evt()でイベントを取ってしまうと、ウインドウの切り替えが
> |> 一切できなくなってしまいますね。(実際に確かめた訳ではないです)
> |
> |ということで、こいつは、rule 違反っていう奴ですね。
>
> アプリのせいでウインドウが切り換わらない、というのは
> システムとして問題のような気がします。
うーん、BTRON1の作られた時代を考えて見れば、あんまり、System の中身を言えなかった来
もしますが、、、。
だってですよ!
80286の時代ですよ。初期の頃の1Bなんか、それ用の tuning で
window が横には 4 pixels おきにしか、動かなかったっていうし、、、。
とりあえず、なるだけ、軽量に動くことが一番で、まあ、OS核が App からみて
すけすけでも、いたしかたなかったかなぁなんて。同情してしまいますが。
ちなみに、プロハン IX の「BTRON1仕様の構成と仕様書の関係図」を
見る限り、「システム利用者」や「システム・アプリケーション」はOS核には
触らなくて良いようにしたかったみたいですね。
要は、BTRON3を見習うであろう B-free は、そんなBTRON1な
ところまでは見習わなくても良いだろうという事でした。
>
>
> ===
> 落合秀俊 名古屋大学工学部情報工学科
> h953046b@ice.nuie.nagoya-u.ac.jp
-Aki.