GUIプログラミングからやり直せ、イベントドリブンとかイベントハンドラとかイベントフリーズとかハンドラ内では普通フラグ立てだけでメインループで処理するんだよ。
あとTJSは動的言語だからラムダ関数とか高階関数とか基本的にJavaScriptで当たり前に使うテクがTJSで使える。