From 763207a64ef0960cc8f74913b4d86753193e38d2 Mon Sep 17 00:00:00 2001 From: boercher Date: Sun, 17 Jul 2005 16:13:08 +0000 Subject: [PATCH] - description of new options -next and -prev - divided the command reference into 4 subsections - added a complete menu example for wizzards --- docs/lcdproc-dev/language.docbook | 1705 ++++++++++++++++------------- 1 file changed, 923 insertions(+), 782 deletions(-) diff --git a/docs/lcdproc-dev/language.docbook b/docs/lcdproc-dev/language.docbook index 21d7a62..d421f1e 100644 --- a/docs/lcdproc-dev/language.docbook +++ b/docs/lcdproc-dev/language.docbook @@ -43,810 +43,951 @@ - The various command + Command reference - The commands and their parameters are listed below, along with the - responses you can expect. If you need a space or a special char in a - string, you should quote the string with double quotes. If you need - to use a double quote, escape it with a backslash. + In this section all commands and their parameters are listed, + along with the responses you can expect. If you need a space or + a special char in a string, you should quote the string with + double quotes. If you need to use a double quote, escape it with + a backslash. The listing is divided into subsections for + + + Basic stuff + + + Screens and widgets + + + Menu stuff + + + Miscellaneous + + - The LCDproc commands - - hello - - - Opens the session with the LCDd server program. This command is - required before other commands can be issued. The response will be - a string in the format: - - connect <name> <value> <name> <value> ... - - Every name will be followed by a value. The client should read all - parameters it needs and store their values. The following - parameters are in use: - hello response parameters - - LCDproc - - Indicates the version number of LCDd. - - - - protocol - - Indicates the widget language version number. This number is - only changed when the language of a newer version has become - incompatible with the previous version. - - - - wid - - Tells the client the width of the attached display device. - - - - hgt - - Tells the client the height of the attached display device. - - - - cellwid - - How many pixels is a character wide (space between character - cells not included) - - - - cellhgt - - How many pixels is a character high (space between character - cells not included) - - - - lcd - - This word is NOT followed by a value ! - Hey do we really need this word in the response string ? - - - - - - + + Basic stuff + + + hello + + + Opens the session with the LCDd server program. This command is + required before other commands can be issued. The response will be + a string in the format: + + connect <name> <value> <name> <value> ... + + Every name will be followed by a value. The client should read all + parameters it needs and store their values. The following + parameters are in use: + hello response parameters + + LCDproc + + Indicates the version number of LCDd. + + + + protocol + + Indicates the widget language version number. This number is + only changed when the language of a newer version has become + incompatible with the previous version. + + + + wid + + Tells the client the width of the attached display device. + + + + hgt + + Tells the client the height of the attached display device. + + + + cellwid + + How many pixels is a character wide (space between character + cells not included) + + + + cellhgt + + How many pixels is a character high (space between character + cells not included) + + + + lcd + + This word is NOT followed by a value ! + Hey do we really need this word in the response string ? + + + + + + - - client_set <attributes> - - - - Sets attributes for the current client. - The current client is the one from the connection that you send - this command on, in other words: yourself. - client_set attributes - - -name <name> - - Sets the client's name as visible to a user. - - - - -heartbeat on|off|open - - Sets the client's heartbeat setting. This setting overrides the screen's setting, so you can enable the heartbeat for all your screens at once. If "open", which is the default, the screen's setting will be used. - - - - -backlight on|off|toggle|open|blink|flash - - Sets the client's backlight setting. This setting overrides the screen's setting, so you can enable the backlight for all your screens at once. If "open", which is the default, the screen's setting will be used. See screen_set attribute for details on the backlight modes. - - - - - - + + client_set <attributes> + + + + Sets attributes for the current client. + The current client is the one from the connection that you send + this command on, in other words: yourself. + client_set attributes + + -name <name> + + Sets the client's name as visible to a user. + + + + -heartbeat on|off|open + + Sets the client's heartbeat setting. This setting overrides the screen's setting, so you can enable the heartbeat for all your screens at once. If "open", which is the default, the screen's setting will be used. + + + + -backlight on|off|toggle|open|blink|flash + + Sets the client's backlight setting. This setting overrides the screen's setting, so you can enable the backlight for all your screens at once. If "open", which is the default, the screen's setting will be used. See screen_set attribute for details on the backlight modes. + + + + + + + + - - screen_add <new_screen_id> - - - Adds a screen to be displayed. The screen will be identified - by <new_screen_id>. Later you will need this id to add widgets to - this screen. - - - + + Screens and widgets - - screen_del <screen_id> - - - Removes the given screen. - - - + + + screen_add <new_screen_id> + + + Adds a screen to be displayed. The screen will be identified + by <new_screen_id>. Later you will need this id to add widgets to + this screen. + + + - - screen_set <screen_id> <attributes> - - - Sets attributes for the given screen. The following attributes - exist: - screen_set attributes - - -name <name> - - Sets the screen's name as visible to a user. - - - - -wid <int> - -hgt <int> - - Sets the size of the screen in characters. If unset, the full display size is assumed. - - - - -priority <pri-class> - - priority: The following priority classes exist: hidden (screen will never be visible), background (only visible when no normal info screens exist), info (normal info screen, default priority), foreground (an active client), alert (screen has an important message for you), input (the client is doing interactive input). LCDd will only show screens with the highest priority at that moment. So when there are 3 info screens and 1 foreground screen, only the foreground screen will be visible. Only background, info and foreground screens will rotate. Higher classes do not rotate because their function is not suitable for rotation. - - - - -heartbeat on|off|open - -backlight on|off|toggle|open|blink|flash - - If "open" (which is default), the state will be determined by the client's setting. "blink" is a moderately striking backlight variation, "flash" is VERY strinking. - - - - -duration <seconds*8> - - A screen will be visible for this amount of time every rotation. The value is in eights of a second. - - - - - -timeout <seconds*8> - - - After the screen has been visible for a total of this amount of time, it will be deleted. The value is in eights of a second. Currently the client will not be informed of the deletion (TODO?). - - - - - -cursor on|off|under|block - - - If on, a cursor will be visible. Depending on your hardware, this will be a hardware or software cursor. The specified cursor shape (block or under) might not be available in which case an other cursor shape will be used instead. - - - - -cursor_x <int> - -cursor_y <int> - - Coordinates are always 1-based. So top-left is (1,1). - - - - - - + + screen_del <screen_id> + + + Removes the given screen. + + + - - widget_add <screen_id> <new_widget_id> <widgettype> - [-in <frame_id>] - - - Adds a widget to the given screen. The <widgetid> sets the - new identifier for this widget. The following widget types exist: - widget types - - string - - A simple text. - - - - title - - A title bar for above the screen. - - - - hbar - - A horizontal bar. - - - - vbar - - A vertical bar. - - - - icon - - A predefined or client-defined icon. - - - - scroller - - A variation of the string type that scrolls the text - horizontally or vertically. - - - - frame - - A frame with that can contain widgets itself. In fact a - frame displays an other screen in it. - - - - num - - A big number. They have a size of 3x4 characters. The special number 10 is a colon, that you can use for a clock. This character is 1x4. - - - - - - + + screen_set <screen_id> <attributes> + + + Sets attributes for the given screen. The following attributes + exist: + screen_set attributes + + -name <name> + + Sets the screen's name as visible to a user. + + + + -wid <int> + -hgt <int> + + Sets the size of the screen in characters. If unset, the full display size is assumed. + + + + -priority <pri-class> + + priority: The following priority classes exist: hidden (screen will never be visible), background (only visible when no normal info screens exist), info (normal info screen, default priority), foreground (an active client), alert (screen has an important message for you), input (the client is doing interactive input). LCDd will only show screens with the highest priority at that moment. So when there are 3 info screens and 1 foreground screen, only the foreground screen will be visible. Only background, info and foreground screens will rotate. Higher classes do not rotate because their function is not suitable for rotation. + + + + -heartbeat on|off|open + -backlight on|off|toggle|open|blink|flash + + If "open" (which is default), the state will be determined by the client's setting. "blink" is a moderately striking backlight variation, "flash" is VERY strinking. + + + + -duration <seconds*8> + + A screen will be visible for this amount of time every rotation. The value is in eights of a second. + + + + + -timeout <seconds*8> + + + After the screen has been visible for a total of this amount of time, it will be deleted. The value is in eights of a second. Currently the client will not be informed of the deletion (TODO?). + + + + + -cursor on|off|under|block + + + If on, a cursor will be visible. Depending on your hardware, this will be a hardware or software cursor. The specified cursor shape (block or under) might not be available in which case an other cursor shape will be used instead. + + + + -cursor_x <int> + -cursor_y <int> + + Coordinates are always 1-based. So top-left is (1,1). + + + + + + - - widget_del <screen_id> <widget_id> - - - Deletes the given widget from the screen. - - - + + widget_add <screen_id> <new_widget_id> <widgettype> + [-in <frame_id>] + + + Adds a widget to the given screen. The <widgetid> sets the + new identifier for this widget. The following widget types exist: + widget types + + string + + A simple text. + + + + title + + A title bar for above the screen. + + + + hbar + + A horizontal bar. + + + + vbar + + A vertical bar. + + + + icon + + A predefined or client-defined icon. + + + + scroller + + A variation of the string type that scrolls the text + horizontally or vertically. + + + + frame + + A frame with that can contain widgets itself. In fact a + frame displays an other screen in it. + + + + num + + A big number. They have a size of 3x4 characters. The special number 10 is a colon, that you can use for a clock. This character is 1x4. + + + + + + - - widget_set <screen_id> <widget_id> <widget specific - parameters> - - - Sets parameters for a widget. Because not all widgets are created equal, - the various widget types require different attributes. - widget_set required parameters per widget type - - string - - <x> <y> <text> - - - - title - - <text> - - - - hbar - vbar - - <x> <y> <length> - - - - icon - - <x> <y> <iconname> - - - - scroller - - <left> <top> <right> <bottom> <direction> <speed> <text> - - - direction can be "h", "m" or "v". - - - speed is the number of movements per rendering stroke (8 times/second). - - - - frame - - <left> <top> <right> <bottom> <width> <height> <direction> <speed> - - - direction can be "h" or "v". - - - speed is the number of movements per rendering stroke (8 times/second). - - - - num - - <x> <int> - - - x is the normal character x coordinate on the display. - - - int is the number to display, 0 to 9. Number 10 is a special number that will place a colon. - - - - - - + + widget_del <screen_id> <widget_id> + + + Deletes the given widget from the screen. + + + - - client_add_key [-excl|-shared] {<key>}+ - - - Tells the server that the current client wants to make use of the - given key(s). If you reserve the key(s) in shared mode, other - clients can still reserve these keys too. If you reserve the key(s) - in exclusive mode no other client can reserve them again. - Key(s) reserved in shared mode will only be returned when a screen - of the current client is active. These keys can be used for - interaction with a visible screen (default). - Key(s) reserved in exclusive mode will be returned regardless of - which screen is active. They can be used to trigger a special - feature or to make a screen come to foreground. - Note that you cannot reserve a key in exclusive mode when an - other client has reserved it in shared mode. - - - + + widget_set <screen_id> <widget_id> <widget specific + parameters> + + + Sets parameters for a widget. Because not all widgets are created equal, + the various widget types require different attributes. + widget_set required parameters per widget type + + string + + <x> <y> <text> + + + + title + + <text> + + + + hbar + vbar + + <x> <y> <length> + + + + icon + + <x> <y> <iconname> + + + + scroller + + <left> <top> <right> <bottom> <direction> <speed> <text> + + + direction can be "h", "m" or "v". + + + speed is the number of movements per rendering stroke (8 times/second). + + + + frame + + <left> <top> <right> <bottom> <width> <height> <direction> <speed> + + + direction can be "h" or "v". + + + speed is the number of movements per rendering stroke (8 times/second). + + + + num + + <x> <int> + + + x is the normal character x coordinate on the display. + + + int is the number to display, 0 to 9. Number 10 is a special number that will place a colon. + + + + + + + + - - client_del_key {<key>}+ - - - Ends the reservation of the given key(s). - - - + + Menu stuff - - menu_add_item <menu_id> <new_item_id> <type> [options] - - - Adds a new menuitem to a menu. The main menu of a client, - will be created automatically as soon as the client adds - an item. This main menu has an empty id ("") and the name - is identical to the name of the client. The options are - described under menu_set_item below. - menu item types - - action - - This item should trigger an action. It consists of simple text. - - - - checkbox - - Consists of a text and a status indicator. The status can be on (Y), off (N) or gray (o). - - - - ring - - Consists of a text and a status indicator. The status can be one of the strings specified for the item. - - - - slider - - Is visible as a text. When selected, a screen comes up that shows a slider. You can set the slider using the cursor keys. When Enter is pressed, the menu returns. - - - - numeric - - Allows the user to input an integer value. Is visible as a text. When selected, a screen comes up that shows the current numeric value, that you can edit with the cursor keys and Enter. The number is ended by selecting a 'null' input digit. After that the menu returns. - - - - alpha - - Is visible as a text. When selected, a screen comes up that shows the current string value, that you can edit with the cursor keys and Enter. The string is ended by selecting a 'null' input character. After that the menu returns. - - - - ip - - Allows the user to input an ip number (v4 or - v6). When selected, a screen comes up that shows an ip - number that can be edited - digit by digit - via - left/right (switch digit) and up/down keys (increase/decrease). - - - - menu - - This is a submenu. It is visible as a text, with an appended '>'. When selected, the submenu becomes the active menu. - - - - - - + + In this section all commands for creation, modification of + menus and for interaction with them are described. Although + keys may be used for other tasks they are listed here too. + + + TODO: example for normal (static) menu structure. + + + Menus may be even be used for wizzards (the user is + automatically guided through a number of configuration + options) by virtue of the options -next and -prev. Here a + complete example: + + client_set name Parenttest + # to be entered on escape from test_menu (but overwritten + # for test_{checkbox,ring}) + menu_add_item "" ask menu "Leave menus?" -is_hidden true + menu_add_item "ask" ask_yes action "Yes" -next _quit_ + menu_add_item "ask" ask_no action "No" -next _close_ - - menu_del_item <menu_id> <item_id> - - - Removes a menuitem <item_id> from menu <menu_id>. The menu named "" is the client's main menu. - - - + menu_add_item "" test menu "Test" + menu_add_item "test" test_action action "Action" + menu_add_item "test" test_checkbox checkbox "Checkbox" + menu_add_item "test" test_ring ring "Ring" -strings "one\ttwo\tthree" + menu_add_item "test" test_slider slider "Slider" -mintext "<" -maxtext ">" -value "50" + menu_add_item "test" test_numeric numeric "Numeric" -value "42" + menu_add_item "test" test_alpha alpha "Alpha" -value "abc" + menu_add_item "test" test_ip ip "IP" -v6 false -value "192.168.1.1" + menu_add_item "test" test_menu menu "Menu" + menu_add_item "test_menu" test_menu_action action "Submenu's action" - - menu_set_item <menu_id> <item_id> <item_specific_options> - - - Sets parameters for the menuitem(s). Each item type knows different parameters. - options for the various menu items - - for all item types - - - - -text <string> - - The visible text of the item. - - - - -is_hidden false|true (false) - - If the item currently should not appear in a menu. - - - - -next <successor_id> () - - Sets the menuitem to show after closing this - Item. Parentid has to be of a non-menu type that - has its own screen, e.g., not a - checkbox. Special values are - - - _close_ - - Equivalent to -menu_result close: Close - the menu. - - - - _quit_ - - Equivalent to -menu_result quit: Quit - the menu system. - - - - _none_ - - Equivalent to -menu_result none: Keep - the item open. - - - - - - - - - - action - - - - -menu_result none|close|quit (none) - - Sets what to do with the menu when this action is selected: - none: the menu stays as it is; - close: the menu closes and returns to a higher level; - quit: quits the menu completely so you can foreground your app. - - - - - - - checkbox - - - - -value <value> - - Set the value of the item. Can be off, on or gray. - - - - -allow_gray false|true (false) - - Sets if a grayed checkbox is allowed. - - - - - - - ring - - - - -value <int> (0) - - Sets the index in the stringlist that is currently selected. - - - - -strings <string> (empty) - - This single string should contain the strings that can be selected. They should be tab-separated (\t). - - - - - - - slider - - - - -value <int> (0) - - Sets its current value. - - - - -mintext <string> ("") - -maxtext <string> ("") - - The texts at the left and right side of the slider. - - - - -minvalue <int> (0) - -maxvalue <int> (100) - - The minimum and maximum values of the slider. - - - - -stepsize <int> (1) - - The stepsize of the slider. If you use 0, you can control the movement completely from your client. - - - - - - - numeric - - - - -value <int> (0) - - Sets its current value. - - - - -minvalue <int> (0) - -maxvalue <int> (100) - - The minimum and maximum values that are allowed. If one - of them is negative, the user will be able to enter - negative numbers too. - - - TODO: floats! - - - - - - - alpha - - - - -value <string> ("") - - Sets its current value. - - - - -password_char <string> ("") - - If used, instead of the typed characters, this - character will be visible. - - - - -minlength <int> (0) - -maxlength <int> (10) - - Sets the minimum and maximum allowed lengths. - - - - -allow_caps false|true (true) - -allow_noncaps false|true (false) - -allow_numbers false|true (false) - - (Dis)allow these groups of characters. - - - - -allowed_extra <string> ("") - - The chars in this string are also allowed. - - - - - - - ip - - - - -value <string> ("192.168.1.245") - - Set the value of the item, - e.g. "192.168.1.245" (v4) or - ":::ffff:ffff:ffff:ffff:ffff" (v6). - - - - -v6 false|true (false) - - Changes IP version from default v4. - - - - - - - menu - - This is a submenu. It is visible as a text, with an - appended '>'. When selected, the submenu becomes the - active menu. - - - -parent <parentid> () - (Re)sets the parent of this - menu. Parentid has to be of type menu. This - function does not change any menu (neither the - old nor the new parent) since this option is - normally used with hidden menus. Otherwise use - menu_add/del_item. Applying this option is - equivalent to second argument of the menu_goto - command. - - - - - - - - + # no successor for menus. Since test_checkbox and test_ring have their + # own predecessors defined the "ask" rule will not work for them + menu_set_item "" test -prev "ask" - - menu_goto <menu_id> [<parent_id>] - - - Changes current menu to <menu_id>. Depending on the - configure option --enable-permissive-menu-goto the - client may switch to any (if enabled) or his menus only - (if not enabled). - - - <menu_id> - - The menuitem to go to (any menu type e.g. an - action or a menu). - - - - <parent_id> - - Resets the parent of <menu_id>. This - optional parameter can be used to reuse a menu - from different places (for wizzards etc.). Use it - with caution: This may lead to a messy menu - structure in particular due to the fact that the - menus are not changed ! - - - - - - + menu_set_item "test" test_action -next "test_checkbox" + menu_set_item "test" test_checkbox -next "test_ring" -prev "test_action" + menu_set_item "test" test_ring -next "test_slider" -prev "test_checkbox" + menu_set_item "test" test_slider -next "test_numeric" -prev "test_ring" + menu_set_item "test" test_numeric -next "test_alpha" -prev "test_slider" + menu_set_item "test" test_alpha -next "test_ip" -prev "test_numeric" + menu_set_item "test" test_ip -next "test_menu" -prev "test_alpha" + menu_set_item "test" test_menu_action -next "_close_" - - menu_set_main <menu_id> - - - Sets the entry point into the menu system. Use this to - make the server menu invisible. Note that you may only set - the menu to your own clients menus unless the configure - option --enable-permissive-menu-goto is used. (See - menuscreens.c for the menu ids of the server menus.) - - - <menu_id> - - The new main menu, restricted to the client's own - menus. Special values: - - - "" - - The client's main menu. - - - - "_main_" - - Resets main to the "real" main menu. - - - - - - - - - + menu_set_main "" + + + + + client_add_key [-excl|-shared] {<key>}+ + + + Tells the server that the current client wants to make use of the + given key(s). If you reserve the key(s) in shared mode, other + clients can still reserve these keys too. If you reserve the key(s) + in exclusive mode no other client can reserve them again. + Key(s) reserved in shared mode will only be returned when a screen + of the current client is active. These keys can be used for + interaction with a visible screen (default). + Key(s) reserved in exclusive mode will be returned regardless of + which screen is active. They can be used to trigger a special + feature or to make a screen come to foreground. + Note that you cannot reserve a key in exclusive mode when an + other client has reserved it in shared mode. + + + - - backlight on|off|toggle|blink|flash - - - Set's the client's backlight state. - - - + + client_del_key {<key>}+ + + + Ends the reservation of the given key(s). + + + - - output on|off|<int> - - - Sets the general purpose output on some display modules to - this value. Use "on" to set all outputs to high state, and - "off" to set all to low state. The meaning of the integer value - is dependent on your specific device, usually it is a bitpattern - describing the state of each output line. - - - + + menu_add_item <menu_id> <new_item_id> <type> [options] + + + Adds a new menuitem to a menu. The main menu of a client, + will be created automatically as soon as the client adds + an item. This main menu has an empty id ("") and the name + is identical to the name of the client. The options are + described under menu_set_item below. + + + Note: Menu commands + (menu_goto) and options (-prev, -next) assume that + menu ids are unique (at least + within a clients menu hierarchy). + menu item types + + action + + This item should trigger an action. It consists of simple text. + + + + checkbox + + Consists of a text and a status indicator. The + status can be on (Y), off (N) or gray (o). + + + + ring + + Consists of a text and a status indicator. The + status can be one of the strings specified for the + item. + + + + slider + + Is visible as a text. When selected, a screen comes + up that shows a slider. You can set the slider using + the cursor keys. When Enter is pressed, the menu + returns. + + + + numeric + + Allows the user to input an integer value. Is + visible as a text. When selected, a screen comes up + that shows the current numeric value, that you can + edit with the cursor keys and Enter. The number is + ended by selecting a 'null' input digit. After that + the menu returns. + + + + alpha + + Is visible as a text. When selected, a screen comes + up that shows the current string value, that you can + edit with the cursor keys and Enter. The string is + ended by selecting a 'null' input character. After + that the menu returns. + + + + ip + + Allows the user to input an ip number (v4 or + v6). When selected, a screen comes up that shows an ip + number that can be edited - digit by digit - via + left/right (switch digit) and up/down keys + (increase/decrease). + + + + menu + + This is a submenu. It is visible as a text, with an + appended '>'. When selected, the submenu becomes the + active menu. + + + + + + - - noop - - - This command does nothing and is always successful. - Can be useful to be sent at regular intervals to make sure your - connection is still alive. - - - + + menu_del_item <menu_id> <item_id> + + + Removes a menuitem <item_id> from menu + <menu_id>. The menu named "" is the client's main + menu. + + + - + + menu_set_item <menu_id> <item_id> <item_specific_options> + + + Sets parameters for the menuitem(s). Each item type knows different parameters. + options for the various menu items + + for all item types + + + + -text <string> + + The visible text of the item. + + + + -is_hidden false|true (false) + + If the item currently should not appear in a menu. + + + + -next <successor_id> () + + + Sets the menuitem to show after hitting + the ENTER key when this Item is + active. This works for + all menu item types + except menus + i.e. also for menu item types without an + own screen e.g., checkbox, ring and + action. + + Special values + + _close_ + + Equivalent to -menu_result close: Close + the menu. + + + + _quit_ + + Equivalent to -menu_result quit: Quit + the menu system. + + + + _none_ + + Equivalent to -menu_result none: Keep + the item open. + + + + + + + -prev <predecessor_id> () + + + Sets the menuitem to show after hitting + the ESCAPE key when this Item is + active. This works for + all menu item types + i.e. also for menu item types without an + own screen e.g., checkbox, ring and + action. + + + Note: + If you define a predecessor for e.g., a + checkbox and its parent menu too, the + menu's predecessor is ignored in favor + of the checkboxes one. + + + This option respects the same special + values as the -next option. + + + + + + + + action + + + + -menu_result none|close|quit (none) + + Sets what to do with the menu when this action is selected: + none: the menu stays as it is; + close: the menu closes and returns to a higher level; + quit: quits the menu completely so you can foreground your app. + + + + + + + checkbox + + + + -value <value> + + Set the value of the item. Can be off, on or gray. + + + + -allow_gray false|true (false) + + Sets if a grayed checkbox is allowed. + + + + + + + ring + + + + -value <int> (0) + + Sets the index in the stringlist that is currently selected. + + + + -strings <string> (empty) + + This single string should contain the strings that can be selected. They should be tab-separated (\t). + + + + + + + slider + + + + -value <int> (0) + + Sets its current value. + + + + -mintext <string> ("") + -maxtext <string> ("") + + The texts at the left and right side of the slider. + + + + -minvalue <int> (0) + -maxvalue <int> (100) + + The minimum and maximum values of the slider. + + + + -stepsize <int> (1) + + The stepsize of the slider. If you use 0, you can control the movement completely from your client. + + + + + + + numeric + + + + -value <int> (0) + + Sets its current value. + + + + -minvalue <int> (0) + -maxvalue <int> (100) + + The minimum and maximum values that are allowed. If one + of them is negative, the user will be able to enter + negative numbers too. + + + TODO: floats! + + + + + + + alpha + + + + -value <string> ("") + + Sets its current value. + + + + -password_char <string> ("") + + If used, instead of the typed characters, this + character will be visible. + + + + -minlength <int> (0) + -maxlength <int> (10) + + Sets the minimum and maximum allowed lengths. + + + + -allow_caps false|true (true) + -allow_noncaps false|true (false) + -allow_numbers false|true (false) + + (Dis)allow these groups of characters. + + + + -allowed_extra <string> ("") + + The chars in this string are also allowed. + + + + + + + ip + + + + -value <string> ("192.168.1.245") + + Set the value of the item, + e.g. "192.168.1.245" (v4) or + ":::ffff:ffff:ffff:ffff:ffff" (v6). + + + + -v6 false|true (false) + + Changes IP version from default v4. + + + + + + + menu + + This is a submenu. It is visible as a text, with an + appended '>'. When selected, the submenu becomes the + active menu. + + + -parent <parentid> () + (Re)sets the parent of this + menu. Parentid has to be of type menu. This + function does not change any menu (neither the + old nor the new parent) since this option is + normally used with hidden menus. Otherwise use + menu_add/del_item. Applying this option is + equivalent to second argument of the menu_goto + command. + + + + + + + + + + + menu_goto <menu_id> [<parent_id>] + + + Changes current menu to <menu_id>. Depending on the + configure option --enable-permissive-menu-goto the + client may switch to any (if enabled) or his menus only + (if not enabled). + + + <menu_id> + + The menuitem to go to (any menu type e.g. an + action or a menu). + + + + <parent_id> + + Resets the parent of <menu_id>. This + optional parameter can be used to reuse a menu + from different places (for wizzards etc.). Use it + with caution: This may lead to a messy menu + structure in particular due to the fact that the + menus are not changed ! + + + + + + + + + menu_set_main <menu_id> + + + Sets the entry point into the menu system. Use this to + make the server menu invisible. Note that you may only set + the menu to your own clients menus unless the configure + option --enable-permissive-menu-goto is used. (See + menuscreens.c for the menu ids of the server menus.) + + + <menu_id> + + The new main menu, restricted to the client's own + menus. Special values: + + + "" + + The client's main menu. + + + + "_main_" + + Resets main to the "real" main menu. + + + + + + + + + + + + + + Miscellaneous + + + + backlight on|off|toggle|blink|flash + + + Set's the client's backlight state. + + + + + + output on|off|<int> + + + Sets the general purpose output on some display modules to + this value. Use "on" to set all outputs to high state, and + "off" to set all to low state. The meaning of the integer value + is dependent on your specific device, usually it is a bitpattern + describing the state of each output line. + + + + + + noop + + + This command does nothing and is always successful. + Can be useful to be sent at regular intervals to make sure your + connection is still alive. + + + + + + LCDd messages