curs_slk(3X) | curs_slk(3X) |
名称
slk_init, slk_set, slk_refresh, slk_noutrefresh, slk_label, slk_clear, slk_restore, slk_touch, slk_attron, slk_attrset, slk_attroff, slk_attr_on, slk_attr_set, slk_attr_off, slk_attr, slk_color - curses ソフトラベルルーチン書式
#include <curses.h>解説
slk* 関数は、多数の端末に存在するソフトファンクションキーラベルのセットを操作します。ソフトラベルのない端末のために、 curses は、 stdscr と変数 LINES のサイズを減少させ、 stdscr の下端行を占有します。 curses は、それぞれ 8 文字以下の 8 つのラベルを標準化します。これに加えて、ncurses 実装は、それぞれ 5 文字以下の 12 のラベルをシミュレートするモードをサポートしています。これは、エンドユーザデバイスのような今日の PC には最も一般的です。 ncurses は、画面の下端の 2 行以上のまで行をとることにより、このモードをシミュレートし、このモードに対してあらゆるハードウェアのサポートを使用しようとしないことに注意してください。slk_init ルーチンは、 initscr または newterm が呼び出される前に、呼び出されなければなりません。結局、 initscr がソフトラベルをエミュレートするために stdscr からの行を使用するなら、 fmt は、ラベルが画面上でどのように配置されるかを決定します。 fmt を 0 に設定すると、ラベルの 3-2-3 配置を示し、 1 は、 4-4 配置を示し、そして 2 は、PC に似た 4-4-4のモードを示します。 fmt が 3 に設定されるなら、再び PC に似た 4-4-4 のモードですが、加えて、インデックス行は、ユーザがキー番号を容易に識別するのを助けて生成されます。
slk_set ルーチンは、 labnum が 1 から 8 まで (それぞれ、 12) のラベル番号であることを必要とします。 label は、長さが 8 (それぞれ、5) 文字以下のラベルで表現される文字列でなければなりません。空の文字列または 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 と slk_attr ルーチンは、 attron、 attrset、 attroff と attr_get に対応しています。ソフトラベルが画面の下端行でシミュレートされる場合のみ、それらは、効果があります。ソフトキーのためのデフォルトのハイライト (強調) は、 (この事実を文書化していない System V curses でのように) A_STANDOUT です。
slk_color ルーチンは、 color_set に対応しています。ソフトラベルが画面の下端行でシミュレートされる場合のみ、効果があります。
戻り値
これらのルーチンは、失敗すると ERR を返し、成功して終了すれば、OK (SVr4 は、" ERR 以外の整数値"とだけ明記されています) を返します。X/Open は、エラー条件を何も定義していません。この実装では、
- slk_attr
- は、ソフトキーのために使用された属性を返します。
- slk_attroff, slk_attron, slk_clear, slk_noutrefresh, slk_refresh, slk_touch
- は、端末またはソフトキーが初期化されていなかったなら、エラーを返します。
- slk_attrset
- は、端末またはソフトキーが初期化されていなかったなら、エラーを返します。
- slk_attr_set
- は、端末またはソフトキーが初期化されていなかった、またはカラーペアが範囲 0..COLOR_PAIRS-1 の外側である、または opts が NULL でないなら、エラーを返します。
- slk_color
- は、端末またはソフトキーが初期化されていなかった、またはカラーペアが範囲 0..COLOR_PAIRS-1 の外側であるなら、エラーを返します。
- slk_init
- は、書式化パラメータが範囲 0..3 の外側であるなら、エラーを返します。
- slk_label
- は、エラーの場合、 NULL を返します。
- slk_set
- は、端末またはソフトキーが初期化されていなかった、または labnum パラメータがラベルカウントの範囲の外側であるなら、または書式化パラメータが範囲 0..2 の外側であるなら、またはラベルのためのメモリを割り付けることができないなら、エラーを返します。