The following module was proposed for inclusion in the Module List:
modid: Term::Questionaire DSLIP: adpOp description: OO questionaire system with callbacks userid: MIKO (Miko O'Sullivan) chapterid: 8 (User_Interfaces) communities: similar: Several other questionaire systems rationale: Term::Questionaire provides a simplified system for asking a series of questions at the terminal prompt and collecting responses. Term::Questionaire provides an object oriented approach to questions. The entire questionaire is an object, and each question is an object within the questionaire. Several different object classes are available to represent different data types, including string, array, hash, yes/no, numeric, and file path. The classes are also designed to allow for adding more data types. Each question can be marked as active or inactive... inactive questions are skipped when the questionaire is run. Several data validation properties can be set such as required, minimum, maximum, if the file path must exist, if you must have read/write permissions to the path, and others. Speaking of "others", list-based questions (array and hash) can be set to allow the user to select an "other" option at the end of the list and enter their own value. In addition to the property based data validation, questions can be set to call a callback subroutine which can be used for any complex data validation you like, and also to set other questions as active or inactive. enteredby: MIKO (Miko O'Sullivan) enteredon: Thu Dec 13 05:43:48 2001 GMT The resulting entry would be: Term:: ::Questionaire adpOp OO questionaire system with callbacks MIKO Thanks for registering, The Pause Team PS: The following links are only valid for module list maintainers: Registration form with editing capabilities: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=88200000_56fb60be47b8766b&SUBMIT_pause99_add_mod_preview=1 Immediate (one click) registration: https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=88200000_56fb60be47b8766b&SUBMIT_pause99_add_mod_insertit=1