#section: Introduction #section: The various classes #exec: ../doc/classtree.sh #section: The DIALOG class #ref: DIALOG #subsection: #section: Alphabetical function listing #exec: ../doc/listfunc.sh DIALOG dialog.pm #section: Creating a dialog Here are the types of dialog you can create DIALOG DIALOG_MENU DIALOG_RECORDS DIALOG_LISTE #function: DIALOG::DIALOG #spec:DIALOG_LISTE / principles #function: DIALOG_LISTE::DIALOG_LISTE #section: Editing a dialog, a menu or a list #function: DIALOG::edit #function: DIALOG::editmenu #ref: MENU_STATUS #spec: definitions / MENU_STATUS #section: Defining edit fields #function: DIALOG::newf_chk #spec: dialog / checkbox #function: DIALOG::newf_chkm #spec: dialog / checkbox multi #function: DIALOG::newf_chkm_col #function: DIALOG::newf_chkm_hexnum #function: DIALOG::newf_chkm_num #spec: dialog / sample code / using newf_chkm_num #function: DIALOG::newf_dbl #function: DIALOG::newf_gauge #function: DIALOG::newf_head #function: DIALOG::newf_hexnum #function: DIALOG::newf_info #function: DIALOG::newf_list #function: DIALOG::newf_octnum #function: DIALOG::newf_num #function: DIALOG::newf_pass #function: DIALOG::newf_radio #spec: dialog / radio field #spec: dialog / FIELD_MSG / strategy #function: DIALOG::newf_slider #function: DIALOG::newf_str #function: DIALOG::newf_textarea #spec: dialog / sample code / using textarea #section: fields with help list and dialog #function: DIALOG::newf_combo #function: DIALOG::newf_combo_many #function: DIALOG::newf_enum #spec: dialog / sample code / help list #spec: dialog / sample code / help dialog #section: Defining menu and list entries #function: DIALOG::new_menuinfo #function: DIALOG::new_menuitem #function: DIALOG::new_menuitem_parse #function: DIALOG::new_menuitems #function: DIALOG::new_menuline #function: DIALOG::set_menuitem #spec: dialog / menus / splitter #function: DIALOG_RECORDS::newf_head DIALOG_RECORDS::setkeyformat #Specification: DIALOG / FIELD_CLIST / introduction #section: Buttons #Specification: button quit / dismiss or quit / hack #Specification: dialog / MENUBUT_CANCEL / cancel or dismiss #Specification: dialog / MENUBUT_OK / never displayed #section: Defining extra buttons #function: DIALOG::savewhat #function: DIALOG::delwhat #function: DIALOG::inswhat #function: DIALOG::addwhat #function: DIALOG::setbutinfo #function: DIALOG::new_button DIALOG::new_button_icon #spec: definitions / MENUBUT #section: Changing the behavior of a field #function: DIALOG::last_noempty #function: DIALOG::set_readonly #function: DIALOG::set_lastreadonly #function: FIELD_COMBO::addopt #section: Saving the state of the edition #function: DIALOG::save #function: DIALOG::restore #function: DIALOG::was_modified #section: Testing the user interface mode This is done by reading the global variable dialog_mode. #ref: DIALOG_MODE #spec: definitions / DIALOG_MODE #section: HTML principles #spec: html mode / general strategy #spec: html mode / cut #spec: html mode / input overflow #spec: html mode / multi user #spec: html mode / strategy / sub dialog #spec: html mode / strategy / back on our feet #spec: html / modules / base path #spec: HTML / buttons / generating PNGs #spec: dialog / html mode / field key #section: HTML pass through #function: DIALOG::html_body #function: DIALOG::html_intro #function: DIALOG::html_end #function: DIALOG::html_top #section: GUI #function: DIALOG::set_alt_title #function: DIALOG::setsidetitle #function: DIALOG::newline #function: DIALOG::gui_label #function: DIALOG::gui_group #function: DIALOG::gui_dispolast #function: DIALOG::gui_end #function: DIALOG::gui_passthrough DIALOG::gui_passthroughv #spec: FIELD_PASSTHROUGH / principle #Spec: dialog / sample code / using GUI passthrough #spec: GUI layout / no label for a field #function: DIALOG::hide DIALOG::show #function: DIALOG::setcontext diagui_setdefaultctx #function: DIALOG::settype #spec: DIALOG_TYPE #section: GUI threads #function: uithread #spec: dialog / sample code / UI threads #spec: dialog / sample code / UI threads / passing information #spec: uithread / principles #spec: uithread / stack size #spec: uithread / GUI mode #section: Special dialogs #function: dialog_textbox dialog_yesno #section: Field layout #function: DIALOG::newf_title #spec: dialog / sample code / mapping fields in several pages #section: Talking to the GUI front-end directly #function: diagui_flush diagui_getval diagui_getvals diagui_quote #function: diagui_sendcmd diagui_send_Label diagui_sendxpm #ignore: diagui_init diagui_send diagui_sethandle diagui_setmode #function: diagui_sync #section: Inter dialog communication and timers #spec: inter-dialog messaging / principles #spec: PRIVATE_MESSAGE / principle #Specification: inter-dialog messaging / timers / restricted to GUI #function: dialog_sendmessage dialog_testmessage #function: dialog_getmessage dialog_getprivmessage #function: DIALOG::waitfor #spec: dialog / sample code / inter dialog messaging #spec: inter-dialog messaging / timers #function: dialog_settimer dialog_deltimer dialog_testtimer #function: DIALOG::waitfortimer #spec: dialog / sample code / timers #section: updating field content #function: DIALOG::reload #function: DIALOG::remove_last #spec: dialog / sample code / reloading #spec: dialog / sample code / records #section: Misc #function: DIALOG::getmenustr #function: DIALOG::addhelp #function: DIALOG::setheight_hint #function: dialog_parseuioptions dialog_settimeout #section: Some examples #spec: dialog / sample code / ... #section: Miscellaneous specifications #spec: GUI / layout / first section #spec: FIELD_SHEET / principle #spec: F3 key / escape #spec: dialogue / single field case #spec: dialog / colors / xterm #spec: curse mode / no tty available #spec: CMDSOCK / via inetd #spec: textbox / underlining and highlit #spec: MENU_CONTEXT #section: Internal functions #ignore: DIALOG::getitem #ignore: DIALOG::seticon #ignore: DIALOG::setbutinfo #ignore: DIALOG::html_draw_top #ignore: DIALOG::html_draw_intro #ignore: DIALOG::html_draw_fields #ignore: DIALOG::html_draw_form #ignore: DIALOG::html_draw_end #ignore: DIALOG::html_draw #ignore: DIALOG::html_draw #ignore: DIALOG::html_validate #ignore: DIALOG::edithtml #ignore: DIALOG::fixwidth1 #ignore: DIALOG::setup #ignore: DIALOG::setoffset #ignore: DIALOG::drawf #ignore: DIALOG::processmsg #ignore: DIALOG::draw #ignore: DIALOG::drawarrow_if #ignore: DIALOG::dokeyup #ignore: DIALOG::dokeydown #ignore: DIALOG::keymove #ignore: DIALOG::skipprotect #ignore: DIALOG::~DIALOG #ignore: DIALOG::showtimeout #ignore: DIALOG::editterm #ignore: DIALOG::editgui #ignore: DIALOG::guidelete #ignore: DIALOG::editgui_thread #ignore: DIALOG::add #ignore: DIALOG::remove_all DIALOG::remove_del DIALOG::setguiname #ignore: DIALOG::showgui DIALOG::showterm #ignore: DIALOG_LISTE::editmenu #endsub: #section: The various FIELD_xxxx classes The various FIELD_xxxx objects are seldom used by client code. They are used to implement the various edit fields. #subsection: #section: FIELD_COMBO #ref: FIELD_COMBO #subsection: #section: Alphabetical function listing #exec: ../doc/listfunc.sh FIELD_COMBO dialog.pm #section: Specifications #spec: FIELD_COMBO / * #function: FIELD_COMBO::addopt #ignore: FIELD_COMBO::FIELD_COMBO #ignore: FIELD_COMBO::~FIELD_COMBO #ignore: FIELD_COMBO::assist #ignore: FIELD_COMBO::html_draw #ignore: FIELD_COMBO::gui_draw #ignore: FIELD_COMBO::html_validate #endsub: #section: FIELD_LIST #ref: FIELD_LIST #subsection: #section: Alphabetical function listing #exec: ../doc/listfunc.sh FIELD_LIST dialog.pm #section: Specifications #spec: FIELD_LIST / * #endsub: #section: FIELD_ENUM #ref: FIELD_ENUM #subsection: #section: Alphabetical function listing #exec: ../doc/listfunc.sh FIELD_ENUM dialog.pm #section: Specifications #spec: FIELD_ENUM / * #endsub: #endsub: #section: The virtual registry #spec: virtual registry / introduction #spec: dialog / sample code / using the virtual registry #subsection: #section: Using the registry #function: MASTER_REGISTRY::start_session #function: MASTER_REGISTRY::end_session #function: MASTER_REGISTRY::get #function: MASTER_REGISTRY::set #section: Publishing variables #spec: publishing variable / REGISTER_VARIABLE_LOOKUP_MSG #spec: publishing variable / REGISTER_VARIABLE_LOOKUP #function: REGISTER_VARIABLES::REGISTER_VARIABLES #subsection: #section: MASTER_REGISTRY #ref: MASTER_REGISTRY #exec: ../doc/listfunc.sh MASTER_REGISTRY dialog.pm #section: REGISTER_VARIABLES #ref: REGISTER_VARIABLES #exec: ../doc/listfunc.sh REGISTER_VARIABLES dialog.pm #section: REGISTER_VARIABLE #ref: REGISTER_VARIABLE #exec: ../doc/listfunc.sh REGISTER_VARIABLE dialog.pm #endsub: #endsub: