const packagelist::infotype packagelist::helpinfos[]= { { itr_nonrecursive, itd_mainwelcome }, { itr_recursive, itd_recurwelcome }, { 0, itd_keys }, { 0, itd_explaindisplay }, { 0, 0 } }; int packagelist::itr_nonrecursive() { return !recursive; } void packagelist::itd_mainwelcome() { whatinfovb("main welcome page"); varbuf vb; vb("This is dselect's main package listing screen."); if (!readwrite) vb(" (read-only access.)"); vb("\n\n" "Please press `"); vb(bindings->find("help")); vb("' repeatedly to show more help, including the list of " "keystrokes and an explanation of the display; use `"); vb(bindings->find("iscrollon")); vb("' and `"); vb(bindings->find("iscrollback")); vb("' to scroll this help screen. Press `"); vb(bindings->find("info")); vb("' repeatedly to see more information about the highlighted package(s).\n" "\n"); if (readwrite) { vb("Move the highlight and use `"); vb(bindings->find("select")); vb("' and `"); vb(bindings->find("deselect")); vb("' to select and deselect packages for " "installation. Press `"); vb(bindings->find("quit")); vb("' to confirm your changes and quit, or `"); vb(bindings->find("abortnocheck")); vb("' to abort without making changes.\n" "\n" "Deselecting a package that is currently " "installed will arrange for it to be deinstalled later. If you " "select a package for purging its configuration files will be " "deleted when the package is; usually they are kept.\n"); } else { vb("You do not have read/write access to the package administration " "area, so you may only examine the state of packages.\n"); } wordwrapinfo(0,vb.string()); } void packagelist::itd_explaindisplay() { whatinfovb("explanation of the display"); varbuf vb; vb("The top half of the screen shows a list of packages. For each " "package its status (explained in more detail below), class, " "section, name and a summary of its description is shown.\n" "\n" "In the middle of the screen is a status line containing a description " "of the status of the currently highlighted package (or a description " "of which packages are highlighted if this is more than one package).\n" "\n" "The bottom half of the screen is used to display more extended " "information about the highlighed package(s), and for help displays " "like this one.\n" "\n" "The four characters at the start of each package's entry in the list " "show its status: Error, Installed, Old, Wanted.\n" "\n" "`Wanted' is whether it is currently " "selected or not (ie, its desired state as currently being edited); " "`Old', immediately to the left of that, gives the desired state before " "this package list was entered, if different (or a space if not)." "\n" "`Installed' shows the package's current actual state on " "the system; the `Error' column is used to mark packages for which " "installation or removal errors have occurred.\n"); wordwrapinfo(0,vb.string()); } void packagelist::itd_recurwelcome() { whatinfovb("recursive package listing welcome page"); varbuf vb; vb("Some of the packages you have selected require or recommend " "the installation of other packages you haven't selected, or " "some of them conflict with packages you have selected.\n" "Details of problems for each package are available by pressing `"); vb(bindings->find("info")); vb("'.\n" "This sub-list of packages is to allow you to resolve these " "dependencies and conflicts. You may accept my suggestions " "about which related packages to select or deselect by pressing `"); vb(bindings->find("quitcheck")); vb("'.\n" "\n" "Alternatively, you can edit the setup I have suggested, or use `"); vb(bindings->find("revertdirect")); vb("' to reject my suggestions, before using `"); vb(bindings->find("quitcheck")); vb("'.\n" "\n" "For a list of the keys available, consult the keymap " "help screen (available by pressing `"); vb(bindings->find("help")); vb("'); see the manual for detailed information.\n" "\n" "If you wish to replace a package on which many others depend with " "a conflicting one you'll probably find it easier to try selecting " "the new one rather than deselecting the old one first, as doing " "the latter will cause me to suggest deselecting all that depend on it."); wordwrapinfo(0,vb.string()); } void methodlist::kd_info() { showinghelp=0; redrawinfo(); } void methodlist::kd_help() { if (showinghelp) ifhelpthenkeys= !ifhelpthenkeys; showinghelp=1; redrawinfo(); } void methodlist::itd_welcome() { whatinfovb("method selection welcome page"); varbuf vb; vb("This is dselect's access method selection screen."); vb("\n\n" "Please press `"); vb(bindings->find("help")); vb("' to show more help; in particular, you should read the list of " "keystrokes; use `"); vb(bindings->find("iscrollon")); vb("' and `"); vb(bindings->find("iscrollback")); vb("' to scroll this help screen. Press `"); vb(bindings->find("info")); vb("' to see more information about the highlighted method.\n" "\n"); vb("Move the highlight and use `"); vb(bindings->find("select-and-quit")); vb("' to select the highlighted method. Press `"); vb(bindings->find("abort")); vb("' to abort without changing the access method.\n" "\n" "When you have selected the access method you will " "be prompted for the information it requires to do the " "installation.\n"); wordwrapinfo(0,vb.string()); } if (showinghelp) if (ifhelpthenkeys) itd_keys(); else itd_welcome(); else