class interface PGEN creation make feature(s) from GTK_MAIN exit (error_code: INTEGER) init -- gtk_init, parse command line arguments main -- launch the app main_iteration quit -- quit the app rc_init rc_parse (filename: STRING) rc_add_default_file (filename: STRING) rc_set_default_files (filenames: COLLECTION[STRING]) rc_parse_string (rc_string: STRING) rc_reparse_all: BOOLEAN set_locale events_pending: INTEGER yield -- if there are any events pending will execute one and will -- then return to the caller; This is an attempt to handle -- graceously the horrendous loss of sync caused by MITSHM check_version (required_major, required_minor, required_micro: INTEGER): STRING require required_major >= 0; required_minor >= 0; required_micro >= 0 major_version: INTEGER minor_version: INTEGER micro_version: INTEGER binary_age: INTEGER interface_age: INTEGER feature(s) from EXG_FILE_TOOLS is_directory (path: STRING): BOOLEAN -- tells whether this is a directory or an ordinary file -- this could be highly optimized as it is very slow now split (path: STRING): ARRAY[STRING] -- makes a list of STRINGS containing the words separated by -- \ in the path; for "" returns an empth array, not void split_filename (path: STRING): ARRAY[STRING] -- makes a list of STRINGS containing the words separated by -- \ in the path; for "" returns an empth array, not void join (split_path: ARRAY[STRING]): STRING -- this is the opposite of split_filename; if you make a -- call like join_to_filename(split_filename(path)) you'll -- get path, without a / at the end join_to_filename (split_path: ARRAY[STRING]): STRING -- this is the opposite of split_filename; if you make a -- call like join_to_filename(split_filename(path)) you'll -- get path, without a / at the end relative_path (path_1, path_2: STRING): STRING -- if given a pair of absolute paths, like /usr/X11/bin -- and /usr/X11/lib/icewm it will return the relative -- path, in this case ../lib/icewm (that is the path -- that'll take us to path_2 when path_1 is the working -- directory; it requires that the paths are really paths -- and not filenames require is_directory(path_1); is_directory(path_2) exg_system (command: STRING) -- this is exactly like GENERAL's system, except it fetches -- the exit code in exit_code exit_code: INTEGER default_path_len: INTEGER current_directory: STRING -- gets the working directory -- this is kludgy, but I couldn't get it to work using the -- storage space of Result choose_directory (path: STRING) -- sets the directory; this could be optimized -- exg_sustem_exit_code should be 0 if everything's ok feature(s) from FILE_TOOLS same_files (path1, path2: STRING): BOOLEAN -- True if the path1 file exists and has the very same content -- as file path2. require path1 /= Void; path2 /= Void is_readable (path: STRING): BOOLEAN -- True if path file exists and is a readable file. require path /= Void is_empty (path: STRING): BOOLEAN -- True if path file exists, is readable and is an empty file. rename_to (old_path, new_path: STRING) -- Try to change the name or the location of a file. require old_path /= Void; new_path /= Void delete (path: STRING) -- Try to delete the given path file. require path /= Void feature(s) from PGEN make check_env -- this will check if the EXG shell variable is set correctly window: WIZARD data: WIZARD_DATA pages: ARRAY[WIZARD_PAGE] page_1: PGEN_PAGE_1 page_2: PGEN_PAGE_2 end of PGEN