2001-03-07 Bruce Guenter * Renamed cli.h to cli++.h 2000-10-25 Bruce Guenter * cli2pod.pl (parse_options): Ignore {0,} as well as {0}. 2000-08-15 Bruce Guenter * cli2pod.pl: Replaced the CLI documentation programs with this script which outputs POD, which can be translated to man pages or HTML (or LaTeX, or text, or FM). 2000-08-14 Bruce Guenter * cli_parse.pl (parse_header_line): Rewrote the parsing to deal with multi-line strings. * cli2man.pl (synopsis): Add usage string. * cli2html.pl (synopsis): Add usage string. 2000-08-12 Bruce Guenter * cli_parse.pl, cli2html.pl, cli2man.pl: Created these programs. 2000-08-01 Bruce Guenter * main.cc (show_option): Fixed several width glitches. 2000-07-18 Bruce Guenter * cli.h (struct cli_option): Added new uinteger type. * main.cc (fill): Removed use of mystring. 2000-07-13 Bruce Guenter * Removed include of mystring. 2000-01-09 Bruce Guenter * main.cc (parse_short): Modified the logic here to treat a string value immediately following a string option as the value for that option rather than as more flags. This makes it behave much more like the standard getopt library. 1999-09-30 Bruce Guenter * main.cc (show_option): Changed stringlist option string from "=LIST" to "=ITEM". 1999-09-29 Bruce Guenter * main.cc (cli_option::set): Fixed problem with setting a string list option. 1999-09-11 Bruce Guenter * main.cc (show_help): Split off two parts of this routine into calc_max_width and show_option. (show_option): Add "=INT" for integer options, and don't add extra space for non-value long options. (set): Use strtol instead of atoi to parse the integer string, to allow for error checking. (show_option): Fixed handling of string lists. 1999-08-14 Bruce Guenter * main.cc (set_argv0): Sets argv0 to the complete value of argv[0], argv0dir to the part of argv[0] up to and including the last '/' (or blank if there is none), and argv0base to the remainder of argv[0]. This is for use in programs that determine what to do based on the value of the program name. 1999-07-14 Bruce Guenter * main.cc (parse_long_eq): Fixed to account for "counter" flag type. (parse_long_noeq): Fixed to account for "counter" flag type. (parse_long_eq): set() will return one, but this shouldn't return one, so subtract one from its result. (show_help): Added a mechanism to display default values on a second line. (show_help): Output a blank line before the "--help" option line. 1999-07-04 Bruce Guenter * main.cc (show_help): Only show a "=VALUE" for string and integer option types. 1999-06-30 Bruce Guenter * messages.cc (cli_error): Moved this routine into a separate module, and added a "cli_warning" routine. 1999-06-25 Bruce Guenter * main.cc (set): Added handling for two new option types: string list and counters. A stringlist maintains a linked list of all the given option arguments. A counter adds the flag_value to the dataptr each time it is encountered. (parse_short): Fixed faulty logic regarding options with values. Need to merge parts into cli_option::set(). 1999-06-24 Bruce Guenter * main.cc: Rewrote the "help" option handling to stop it being a special case, by making an internal option list that includes a "help" option at the end of it. (show_help): Cleaned up the option formatting to produce more correct output. (build_options): Removed the need to count the options. Note that this breaks compatibility with previous versions. (cli_error): Added this convenience function for the CLI program to report errors and optionally exit. (set): Added functionality to call functions when an option is parsed, and moved some of the option parsing into class methods from the structure. (main): Moved the test for showing the usage information before the test for counting command-line arguments.