MODULE QWizard - A Question and Answer Wizard DESCRIPTION The QWizard module allows script authors to concentrate on the content of the forms they want their users to fill in without worrying about the display. It allows "Question Wizard" like interfaces to be very easily created and the results of the input easily acted upon. Scripts written which are entirely based on QWizard inputs are able to be run from the command line which will show a Tk window or as a CGI script without modification. Script writers do not need to know which interface is being used to display the resulting form(s) as it should be transparent to the script itself. Other wizard interfaces exist for perl, but this one strives very hard to be both extensible and easy to code with requiring as little work by script authors as possible. It is also one of the only ones that supports both web environments and windowing environments without code modification required by the script author. PREREQUISITES In order to make use of the different environments that QWizard can support, you should have at least one of the following module sets installed: Web based scripts: CGI # (common with all perl these days) CGI::Cookie Tk based graphical scripts: Tk Tk::Table Tk::FileSelect Tk::Tree # optional Tk::PNG # optional (for image support) CLI support (very minimal): Term::ReadLine Additional features available if the modules are available: GD::Graph # graphing support HISTORY QWizard was originally developed within the Net-Policy network management system but was later made to be a separate system and is now used in other applications as well. Specifically, Net-Policy had serious issues for a while trying to keep track of state between long series of user input screens using the standard CGI package, and the QWizard system was developed specifically to combat this problem. Net-Policy is still built on top of it making heavy use of the QWizard system and offers both a HTML and a Tk network management interface using the same code base. FUTURE WORK A Gtk2 interface is nearly complete, as is a curses and WAP (cell phone) interface. Once complete existing applications will not need to be modified to make these interfaces work with the newer infrastructure underneath them.