Xwidgetsは自身の状態によってLispプログラムを更新するためにイベントを送信することができます。(埋め込みネイティブウィジェットを参照)。これらのイベントはxwidget-events
という、変更の性質を説明するさまざまなデータを含んだイベントに置き換えられます。
(xwidget-event kind xwidget arg)
¶これはxwidgetである種の更新が発生した際は常に送信されるイベント。更新には複数の種類があり、それらはkindによって識別される。
これはxwidgetにたいするxwidgetイベントを受信した際は常に呼び出されるようなコールバック(callback)をxwidgetに追加することによって処理する必要があるスペシャルイベントである(スペシャルイベントを参照)。
コールバックは引数としてxwidgetとkindを受け取る関数であること。コールバックはwidgetのプロパティリストのcallback
をセットすることによって追加できる。
load-changed
¶これはxwidgetがページローディングプロセスの特定のポイントに達したことを示すxwidgetイベント。argにはこれらのイベントが送信される際には、widgetの状態が更に記述された文字列が含められる。
これはそのwidgetがページローディング操作を開始したことを意味する。
これはxwidgetが前に処理していたページローディング操作が何であれ処理が終了したことを意味する。
これはxwidgetがページローディング操作中にリダイレクトに遭遇して、それをフォローしたことを意味する。
これはxwidgetがページローディング操作中に与えられたURLにコミット(つまりそのURLがカレントのページローディング操作中にレンダリングする最終URL)したことを意味する。
download-callback
¶このイベントはある種のダウンロードが完了したことを示す。
上記イベントではargの後に引数があるかもしれない。その引数自体はダウンロードしたファイルを取得したURLを示す。argの後の1つ目の引数はそのダウンロードのMIMEタイプ(文字列)を示し、2つ目の引数はダウンロードしたファイルの完全なファイル名が含まれる。
(xwidget-display-event xwidget source)
¶このイベントはxwidgetが他のxwidgetの表示をリクエストした際は常に送信される。xwidgetは表示されることになるxwidget、sourceはxwidgetの表示を要求したxwidget。
これはコールバックを通じて処理を要するスペシャルイベントでもある。そのようなコールバックは引数としてxwidgetとsourceを受け取る関数であり、sourceのプロパティリストのdisplay-callback
にセットして追加できる。
xwidgetのバッファーは一時バッファーにセットされる。widget表示の際には、set-xwidget-buffer
(埋め込みネイティブウィジェットを参照)を使用してバッファーをxwidgetが表示されるバッファーに置き換えるよう注意すること。