[ttssh2-dev 149] Re: pasteのcancel

Back to archive index
zmats****@users***** zmats****@users*****
2021年 12月 8日 (水) 23:56:06 JST


松尾です。

sendmem.h のインターフェイスには中断は準備していません。

On 2021/12/08 20:47, Yutaka Hirata wrote:
 > ひらたです。
 >
 > 5で大量のテキストをペースト中に、CTRL+Cでペーストを中断できるようにした
 > いのですが(PuTTYではできる)、

こんな感じはどうでしょうか。

1. SendMemAbort(SendMem *sm) を追加,なかでsm->abort = TRUEする
3. SnedMemSetCallBack(sm, callback) みたいなのを追加、
    送信完了を知ることができるようにする
2. SendMem内で送信するときに sm->abort をチェック、
    TRUEだと中断するようにする
    中断時コールバックがセットされているとコールすのが良いか?
4. 送信を開始した人は sm を保持しておいて、
    送信完了コールバックで sm を破棄する
5. 中断したいとき SendMemAbort() をコールする

ダイアログを分離する(↑の作り)か、
組み込んでしまうか悩ましいです。

送信速度はディレイの方法でかなり変わります。
ペーストは clipboar.c の CBSendStart() で送信していて、
ts.PasteDelayPerLine の値でかなり送信速度が変わるはずです。

[ファイル]/[ファイル送信...] で出てくる
[ファイル送信]での送信(Tera Term 4 と同じ方法で送信じゃないとき)
と同じ方法で送信しています。

試しにファイル送信で
delay type や send size を変更して送信してみてください
爆速(場合によっては文字抜け)になると思います。

そのあたりの動作は ファイル送信のヘルプを見てみてください。



ttssh2-dev メーリングリストの案内
Back to archive index