コールバックは、ユーザーインタフェース内のイベントに応答して呼び出されるアプリケーションの提供する関数です。
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 プログラマーズ・リファレンスに記述されています。
検索機能を使用することにより、デザイン内にあるすべてのウィジェットを対象としてコールバック名を検索することができます。
ヒント
コード生成ダイアログ内のスタブ生成オプションを使用すると、インタフェース内の各コールバック関数のテンプレートを生成することができます。コールバック関数の内容については、アプリケーション開発者が作成してください。
関連項目: