コールバック

コールバックは、ユーザーインタフェース内のイベントに応答して呼び出されるアプリケーションの提供する関数です。

X-Designer は、ウィジェットに対しては自動的にコールバック関数の生成を行いません。 コールバック関数生成の機能は、アプリケーションのプログラマが提供しなければいけません。

リンクの場合、この規則の唯一の例外として、ウィジェット作成関数の前に各リンクに対しコールバックが生成されます。

しかし、X-Designer は、ウィジェットに対してユーザーが定義したコールバックをコールバックリストに登録することができます。これらのコールバックの呼び出しを可能にするため、X-Designer はユーザーが定義したコールバック関数の外部宣言を生成します。

コールバック関数を作成する場合、各関数の定義は、それぞれ特定のコールバックに対して OSF/Motif プログラマーズ・ガイドで指定されている記述に一致させる必要があります。たとえば、プッシュボタンに対しての活性化コールバックを button_pressed() として定義した場合、コールバックは次の形式で定義されている必要があります。


void button_pressed(w, client_data, call_data) Widget w; XtPointer client_data; XmPushButtonCallbackStruct *call_data; { /* APPLICATION CODE HERE */ }

また、call_data は XmAnyCallbackStruct * と宣言することができます。しかし、コールバック固有のデータを呼び出す場合には、これを適切な型に配置する必要があります。

コールバックについての詳細は、OSF/Motif プログラマーズ・リファレンスに記述されています。

検索機能を使用することにより、デザイン内にあるすべてのウィジェットを対象としてコールバック名を検索することができます。

ヒント

コード生成ダイアログ内のスタブ生成オプションを使用すると、インタフェース内の各コールバック関数のテンプレートを生成することができます。コールバック関数の内容については、アプリケーション開発者が作成してください。

関連項目: