slk_init, slk_set, slk_refresh, slk_noutrefresh, slk_label, slk_clear, slk_restore, slk_touch, slk_attron, slk_attrset, slk_attroff - ncurses soft label routines |
#include <ncurses.h> int slk_init(int fmt); |
slk* 関数は、多数の端末に存在するソフトファンクションキーラベルのセット を操作します。ソフトラベルのない端末の場合、 ncurses が stdscr の下端行 を 占め、 stdscr および変数 LINES のサイズを減少させます。 ncurses は、 それぞれ最高 8 キャラクタの 8 つのラベルを標準化します。 slk_init ルーチンを呼び出してから、 initscr または newterm を呼び出す必 要があります。 initscr がソフトラベルをエミュレートするために stdscr か ら次第に行を使用していくと、 fmt が、ラベルが画面上でどのように配置され る か を決定します。 fmt を 0 に設定すると、ラベルは 3-2-3 配置になりま す。 1 に設定すると、 4-4 配置になります。 slk_set ルーチンの場合、 labnum は 1 から 8 のラベル番号 で す。 label は、ラベルに設定する長さが最高 8 キャラクタのストリングです。 NULL スト リングまたは NULL ポインタは、ブランクのラベルをセットアップ し ま す。 fmt は 0 、 1 、または 2 のいずれかで、それぞれラベル内部でラベルが左揃 え、中心揃え、または右揃えであることを示します。 slk_refresh ルーチンと slk_noutrefresh ルーチンは、 wrefresh ルーチンと wnoutrefresh ルーチンに対応します。 slk_label ルーチンは、ラベル番号 labnum の現在のラベルを返します。この 場合、先頭と末尾のブランクは除去されます。 slk_clear ルーチンは、画面からソフトラベルをクリアします。 slk_restore ルーチンは、 slk_clear が実行された後で、ソフトラベルを画面 に復元します。 slk_touch ルーチンは、 slk_noutrefresh が次に実行されるときに、すべての ソフトラベルが出力されるようにします。 slk_attron 、 slk_attrset 、および slk_attroff の各ルーチンは、 attron 、 attrset 、および attroff に対応しています。これらが効力を持つのは、 ソフトラベルが画面の下端行でシミュレートされる場合だけです。 |
ルーチンは処理失敗すると整数 ERR を返し、処理が正常に完了すると ERR 以 外の整数値を返します。 slk_label はエラーがあると NULL を返します。 |
ほとんどのアプリケーションが slk_noutrefresh を使用します。 wrefresh が すぐ続くと考えられるからです。 |
ncurses(3), curs_attr(3), curs_initscr(3), curs_refresh(3) |