- 695 名前:名前は開発中のものです。 mailto:sage [2010/04/15(木) 18:28:42 ID:UJrfVVKn]
- closeByScriptは確か、キャンセル動作(つまり「いいえを押した」)時は「クリックしたものとみなす」という体で動作するんじゃなかったっけ。
内部で実際そんな考え方で動いてるかどうかは知らんが、実際ワンクリックされたものと同じ挙動を示した気がした。 だからリンクタグ等でこのメソッドを呼ぶ時は[s]タグを直後に用意するか、もしくは [link exp="kag.closeByScript(%[ask:true, ignore:true])"]Exit[endlink] みたいな感じで独自に引数を追加し、MainWindow.tjsのcloseByScriptを直接 function closeByScript(elm){ /* 中略 */ // closeByScript は、このハンドラが終わった直後に // 「終了しますか?」のダイアログを表示する。 // 終了する場合はそのまま終了する。 // 終了しない場合は 'not_closed' トリガが発行され、 // 実行は継続する。 // ! ConfigLayer等からcloseByScriptと呼んだ場合、「いいえ」が押されるとメッセージが勝手に進んでしまうので // elm.ignoreオプションが有る場合は以下を発動しない if(elm.ignore) return; conductor.wait(%[ not_closed : askOnClose_save ? (function{ // 実際にこれが呼ばれることはないが、一応 askOnClose = true; } incontextof this) : (function{ } incontextof this) ]); } } みたいな具合に改造してやんのがいいんじゃないか。まあ改造するのはめんどくさいから 素直にリンクの直後に[s]置いとけっていう話だけど
|

|