[xyzzy:08896] Re: DLL 作成windowサイズを変更するための winapi messageについて
- Subject: [xyzzy:08896] Re: DLL 作成windowサイズを変更するための winapi messageについて
- From: OHKUBO Hiroshi <konata_o@xxxxxxxxxxx>
- X-mailer: EdMax Ver2.85.5F
kazu.yさん、こんにちは。
OHKUBO Hiroshi です。
Date: Mon, 15 Sep 2003 18:20:58 +0900 の
Subject: Re: DLL 作成windowサイズを変更するための winapimessageについて
Message-Id: <001801c37b6a$ac84f3d0$0500a8c0@falcon>
への返事です。
ご対応大変ありがとうございます。
>> SetPos は変更後 xyzzy のエディタ部の再描画が行われず
>
> こちらで再現できません(T-T)
> 具体的にどのような症状なのか教えてもらえないでしょうか。
言葉足らず、申し訳ありません。
問題の現象は SetPos というより xpiSetPanePos 自体で考慮されて
いない部分であり、(現状) そういうものかなと考えて書いていました。
ListView.dll 側で対応実装していただく部分とは考えておらず、
lisp から 適当に winapi を呼んで対応しようと思っていました。
DLL 側で対応していただけるなら、とてもありがたいです (^^;;
ちなみに、私が確認した不具合は、描画のタイミングによって
起こっているように感じます。
再現確認した手順は以下の通りです。
----------------------------------------------------------------------
1. YMTZ さん watch.l を実行できるように (手抜き (^^;;)
2. watch を開始
3. scratch バッファで以下を評価
(progn
(in-package "winapi")
(c::define-dll-entry winapi::BOOL
SetPos (c::int winapi::DWORD) "ListView" "SetPos")
(c::define-dll-entry winapi::BOOL
SetSize (c::int c::int c::int c::int c::int) "ListView" "SetSize")
(in-package "user"))
4. 以下を順に評価して画面を確認
(SetPos ed::*watch-listview-id* 0); XPIS_LEFT
(SetPos ed::*watch-listview-id* 2); XPIS_RIGHT
;; エディタ部内の右側にも ListView が表示されている。
(SetPos ed::*watch-listview-id* 1); XPIS_TOP
(SetPos ed::*watch-listview-id* 3); XPIS_BOTTOM
;; エディタ部内の下側にも ListView が表示されている。
----------------------------------------------------------------------
私自身は、現状の ListView.dll の実装で十分有用だと考えておりますが
さらによいものになるなら、やっぱり嬉しいです。
以上、宜しくお願いいたします。
---
OHKUBO Hiroshi
konata_o@xxxxxxxxxxx
http://members.tripod.co.jp/ohkubo/index.html