悩みの種のsetwindow
 システム層・textライブラリでsetwindowのラッパーを作ろうと思っているのですが、問題が一つあります。ウィンドウの色を指定した場合です。まずラッパーでウィンドウの設定を変数で受け取って、RGB値ごとにサブルーチンつくってgosubでsetwindowさせようかと思ったんですが、試しにラベルを書いてみただけでファイルサイズが100kb越え……これより大きくなるとさすがにライブラリの範疇を越えちゃってる気がします。うーんどうしよう。大体RGB各々16通りで4096色も用意したのが間違いだろうか。256色か512色くらいでも構わないかな。
 あと、setwindow2は別に問題ないとして、setwindow3。最初、これどうしようかなーって思ってたんですよ。色指定のサブルーチンをsetwindow用とsetwindow3用で2倍用意しなくちゃいけないとかなったらどんだけファイルサイズでかくなるのかと。でもこれ、よく考えたら「回想バッファがクリアされるか否か」だけしか違いがないんですよね。っていうことは、色指定サブルーチンの方はsetwindow3で作って、setwindowとして呼び出された場合にのみlookbackflushしちゃえばいいと。なんだ簡単じゃないか。



 ちなみに色指定用のサブルーチンってのは
1.まずラッパーでウィンドウの設定をgetparamで取得
2.取得した設定から色指定サブルーチンへのラベルを作成(例:setwindow_FF00FFとかsetwindow_999999とか)
3.色指定サブルーチンへジャンプ
4.色指定サブルーチン内でsetwindow。
 こんな感じです。とりあえずラッパー部分だけでも作ったら公開してみようかな。てかもうtextwindowライブラリっていう形で独立させた方がいいのだろうか。悩む。
[PR]
by lyricist_m | 2007-06-05 22:27 | NScripter
<< setwindowラッパーテスト アクセス数増加の不思議 >>