EN JA
menu_pattern(3X)
menu_pattern(3X) menu_pattern(3X)

名称

menu_pattern - メニューのパターンバッファを取得するか設定する

書式

#include <menu.h>
 
int set_menu_pattern(MENU *menu, const char *pattern);
 
char *menu_pattern(const MENU *menu);
 

解説

すべてのメニューは、関連するパターンマッチバッファを持っています。印刷可能な文字が入ってきた入力イベントの時に、それらは、このマッチバッファに追加され、 menu_driver(3X) で記述されるように、一致するかテストされます。

関数 set_menu_pattern は、与えられたメニューのパターンバッファを設定し、最初に一致する項目を見つけようとします。成功する場合、その項目は、カレント(現在)になります。そうでなければ、現在の項目は、変わりません。

関数 menu_pattern は、与えられた menu のパターンバッファを返します。

戻り値

関数 menu_pattern は、 menu パラメータが NULL であるなら、 NULL である、ポインタを返します。そうでなければ、パターンが設定されていないなら、空の文字列へのポインタです。それは、errno を設定しません。

関数 set_menu_pattern は、次のエラーコードを返します:

E_OK
ルーチンが成功した。
E_BAD_ARGUMENT
ルーチンは、正しくないか範囲外の引数を検知しました。
E_BAD_STATE
ルーチンは、初期化または終了の関数から呼ばれました。
E_NOT_CONNECTED
項目は、メニューに接続されていません。
E_NO_MATCH
文字は、一致しませんでした。
E_SYSTEM_ERROR
システムエラーが生じた ( errno 参照)。

関連項目

curses(3X), menu(3X)

ヘッダファイル <menu.h> は、自動的にヘッダファイル <curses.h> を含んでいます。

移植性

これらのルーチンは、System V メニューライブラリをエミュレートします。それらは、Version 7 または BSD バージョンではサポートされませんでした。

作者

Juergen Pfeifer。マニュアルページと新しい curses の適応は、Eric S. Raymond。