|
XCII. Newt Functions
This is a PHP language extension for RedHat Newt library, a terminal-based
window and widget library for writing applications with user friendly interface.
Once this extension is enabled in PHP it will provide the use of Newt
widgets, such as windows, buttons, checkboxes, radiobuttons, labels,
editboxes, scrolls, textareas, scales, etc. Use of this extension if very
similar to the original Newt API of C programming language.
This module uses the functions of the RedHat Newt library.
You need libnewt version >= 0.51.0.
Это расширение PECL
не поставляется вместе с PHP.
Дополнительная информация, такая как новый версии,
скачивание, исходные файлы, информация о разработчике и CHANGELOG, могут
быть найдены здесь:
http://pecl.php.net/package/newt.
В PHP 4 исходные файлы этого расширения PECL
могут быть найдены в директории ext/ внутри исходных файлов
PHP или по ссылке PECL выше.
In order to use these functions you must compile CGI or CLI PHP with
newt support by using the --with-newt[=DIR]
configure option.
Замечание:
This extension is not available for Windows platform.
You may need also curses and slang
libraries, in order to compile this extension. To specify locations
of these libraries, use the followin configuration options:
--with-curses-dir=/path/to/libcurses
--with-slang-dir=/path/to/libslang
This extension uses two resource types: "newt component" and "newt grid".
Resource type "newt component" is returned by functions, which create
common newt widgets (for example: newt_button())
Resource type "newt grid" is a special link identifier for components,
returned by newt grid factory functions (for example: newt_create_grid())
Перечисленные ниже константы определены данным расширением и могут быть
доступны только в том случае, если PHP был собран с
поддержкой этого расширения или же в том случае, если
данное расширение подгружается во время выполнения.
Таблица 1. Newt form exit reasons constant | meaning |
---|
NEWT_EXIT_HOTKEY | hotkey defined by newt_form_add_hot_key() was pressed | NEWT_EXIT_COMPONENT | some component has caused form to exit | NEWT_EXIT_FDREADY | file descriptor specified in
newt_form_watch_fd() is ready to be read or written
to | NEWT_EXIT_TIMER | time specified in newt_form_set_timer() has
elapsed |
Таблица 2. Newt colorsets constant | meaning |
---|
NEWT_COLORSET_ROOT | | NEWT_COLORSET_BORDER | | NEWT_COLORSET_WINDOW | | NEWT_COLORSET_SHADOW | | NEWT_COLORSET_TITLE | | NEWT_COLORSET_BUTTON | | NEWT_COLORSET_ACTBUTTON | | NEWT_COLORSET_CHECKBOX | | NEWT_COLORSET_ACTCHECKBOX | | NEWT_COLORSET_ENTRY | | NEWT_COLORSET_LABEL | | NEWT_COLORSET_LISTBOX | | NEWT_COLORSET_ACTLISTBOX | | NEWT_COLORSET_TEXTBOX | | NEWT_COLORSET_ACTTEXTBOX | | NEWT_COLORSET_HELPLINE | | NEWT_COLORSET_ROOTTEXT | | NEWT_COLORSET_ROOTTEXT | | NEWT_COLORSET_EMPTYSCALE | | NEWT_COLORSET_FULLSCALE | | NEWT_COLORSET_DISENTRY | | NEWT_COLORSET_COMPACTBUTTON | | NEWT_COLORSET_ACTSELLISTBOX | | NEWT_COLORSET_SELLISTBOX | |
Таблица 3. Newt argument flags constant | meaning |
---|
NEWT_ARG_LAST | | NEWT_ARG_APPEND | |
Таблица 4. Newt Flags Sense constant | meaning |
---|
NEWT_FLAGS_SET | | NEWT_FLAGS_RESET | | NEWT_FLAGS_TOGGLE | |
Таблица 5. Newt Components Flags constant | meaning |
---|
NEWT_FLAG_RETURNEXIT | Exit form, when component is activated | NEWT_FLAG_HIDDEN | Component is hidden | NEWT_FLAG_SCROLL | Component is scrollable | NEWT_FLAG_DISABLED | Component is disabled | NEWT_FLAG_BORDER | | NEWT_FLAG_WRAP | Wrap text | NEWT_FLAG_NOF12 | Don't exit form on pressing F12 | NEWT_FLAG_MULTIPLE | | NEWT_FLAG_SELECTED | Component is selected | NEWT_FLAG_CHECKBOX | Component is checkbox | NEWT_FLAG_PASSWORD | Entry component is password entry | NEWT_FLAG_SHOWCURSOR | Show cursor |
Таблица 6. File Descriptor Flags constant | meaning |
---|
NEWT_FD_READ | | NEWT_FD_WRITE | | NEWT_FD_EXCEPT | |
Таблица 7. Checkbox Tree Flags constant | meaning |
---|
NEWT_CHECKBOXTREE_UNSELECTABLE | | NEWT_CHECKBOXTREE_HIDE_BOX | | NEWT_CHECKBOXTREE_COLLAPSED | | NEWT_CHECKBOXTREE_EXPANDED | | NEWT_CHECKBOXTREE_UNSELECTED | | NEWT_CHECKBOXTREE_SELECTED | |
Таблица 8. Entry Flags constant | meaning |
---|
NEWT_ENTRY_SCROLL | | NEWT_ENTRY_HIDDEN | | NEWT_ENTRY_RETURNEXIT | | NEWT_ENTRY_DISABLED | |
Таблица 9. Listbox Flags constant | meaning |
---|
NEWT_LISTBOX_RETURNEXIT | |
Таблица 10. Textbox Flags constant | meaning |
---|
NEWT_TEXTBOX_WRAP | Wrap text in the textbox | NEWT_TEXTBOX_SCROLL | Scroll text in the textbox |
Таблица 11. Form Flags constant | meaning |
---|
NEWT_FORM_NOF12 | Don't exit form on F12 press |
Таблица 12. Newt Keys constant | meaning |
---|
NEWT_KEY_TAB | | NEWT_KEY_ENTER | | NEWT_KEY_SUSPEND | | NEWT_KEY_ESCAPE | | NEWT_KEY_RETURN | | NEWT_KEY_EXTRA_BASE | | NEWT_KEY_UP | | NEWT_KEY_DOWN | | NEWT_KEY_LEFT | | NEWT_KEY_RIGHT | | NEWT_KEY_BKSPC | | NEWT_KEY_DELETE | | NEWT_KEY_HOME | | NEWT_KEY_END | | NEWT_KEY_UNTAB | | NEWT_KEY_PGUP | | NEWT_KEY_PGDN | | NEWT_KEY_INSERT | | NEWT_KEY_F1 | | NEWT_KEY_F2 | | NEWT_KEY_F3 | | NEWT_KEY_F4 | | NEWT_KEY_F5 | | NEWT_KEY_F6 | | NEWT_KEY_F7 | | NEWT_KEY_F8 | | NEWT_KEY_F9 | | NEWT_KEY_F10 | | NEWT_KEY_F11 | | NEWT_KEY_F12 | | NEWT_KEY_RESIZE | |
Таблица 13. Newt Anchors constant | meaning |
---|
NEWT_ANCHOR_LEFT | | NEWT_ANCHOR_RIGHT | | NEWT_ANCHOR_TOP | | NEWT_ANCHOR_BOTTOM | |
Таблица 14. Grid Flags constant | meaning |
---|
NEWT_GRID_FLAG_GROWX | | NEWT_GRID_FLAG_GROWY | | NEWT_GRID_EMPTY | | NEWT_GRID_COMPONENT | | NEWT_GRID_SUBGRID | |
This example is a PHP port of RedHat 'setup' utility dialog, executed in text
mode.
Пример 1. Newt Usage Example
<?php newt_init (); newt_cls (); newt_draw_root_text (0, 0, "Test Mode Setup Utility 1.12"); newt_push_help_line (null); newt_draw_root_text (-30, 0, "(c) 1999-2002 RedHat, Inc");
newt_get_screen_size (&$rows, &$cols); newt_open_window ($rows/2-17, $cols/2-10, 34, 17, "Choose a Tool");
$form = newt_form ();
$list = newt_listbox (3, 2, 10); foreach (array ( "Authentication configuration", "Firewall configuration", "Mouse configuration", "Network configuration", "Printer configuration", "System services") as $l_item) { newt_listbox_add_entry ($list, $l_item, $l_item); }
$b1 = newt_button (5, 12, "Run Tool"); $b2 = newt_button (21, 12, "Quit"); newt_form_add_component ($form, $list); newt_form_add_components ($form, array($b1, $b2));
newt_refresh (); newt_run_form ($form);
newt_pop_window (); newt_pop_help_line (); newt_finished (); newt_form_destroy ($form); ?>
|
|
| |