home *** CD-ROM | disk | FTP | other *** search
/ Piper's Pit BBS/FTP: ibm 0040 - 0049 / ibm0040-0049 / ibm0040.tar / ibm0040 / DBRIEF.ZIP / SOURCE / HEADER.M < prev    next >
Encoding:
Text File  |  1991-03-21  |  5.5 KB  |  181 lines

  1. ;dBRIEF Header - v3.10
  2. ;Copyright (c) 1991 - Global Technologies Corporation
  3. ;ALL RIGHTS RESERVED
  4. #include "dbrief.h"
  5. (macro head
  6.     (
  7.         (string            header_type
  8.         )
  9.         (if (get_parm 0 header_type "Program, Function or proCedure? [Pfc]: " 1 "P")
  10.             (
  11.                 (switch (upper header_type)
  12.                     "P"
  13.                         (_pro_header "proghead.cfg" 0)
  14.                     "C"
  15.                         (_pro_header "prochead.cfg" dbr_hdr_inclusion)
  16.                     "F"
  17.                         (_pro_header "funchead.cfg" dbr_hdr_inclusion)
  18.                 )
  19.             )
  20.         )
  21.     )
  22. )
  23. (macro _pro_header
  24.     (
  25.         (int        year
  26.                     month
  27.                     day
  28.                     hours
  29.                     minutes
  30.                     x_
  31.                     y_
  32.                     line_
  33.                     col_
  34.                     hdr_inclusion
  35.         )
  36.         (string  buffer_name
  37.                     cfg_file
  38.         )
  39.         (get_parm 0 cfg_file)
  40.         (get_parm 1 hdr_inclusion)
  41.         (message "Creating header...")
  42.         (inq_position x_ y_)
  43.         (inq_names NULL NULL buffer_name)
  44.         (if (== cfg_file "proghead.cfg")
  45.             (top_of_buffer)
  46.         )
  47.         (if (exist cfg_file)
  48.             (read_file cfg_file)
  49.         ;else
  50.             (read_file (search_path  (inq_environment "BPATH") cfg_file))
  51.         )
  52.         (save_position)
  53.         (if (== cfg_file "proghead.cfg")
  54.             (
  55.                 (translate (+ "[dir]" (_replicate " " (- (strlen (_get_directory)) 5))) (upper (_get_directory)) 1 0 0 0 0)
  56.                 (translate "[dir]" (upper (_get_directory)) 1 0 0 0 0)
  57.                 (translate (+ "[drv]" (_replicate " " (- (strlen (substr (_get_directory) 1 2)) 5))) (+ (upper (substr (_get_directory) 1 2)) "     ") 1 0 0 0 0)
  58.                 (translate "[drv]" (+ (upper (substr (_get_directory) 1 2)) "     ") 1 0 0 0 0)
  59.                 (translate (+ "[file]" (_replicate " " (- (strlen buffer_name) 6))) (upper buffer_name) 1 0 0 0 0)
  60.                 (translate "[file]" (upper buffer_name) 1 0 0 0 0)
  61.                 (translate (+ "[copy]" (_replicate " " (- (strlen dbr_copyright) 6))) dbr_copyright 1 0 0 0 0)
  62.                 (translate "[copy]" dbr_copyright 1 0 0 0 0)
  63.                 (translate (+ "[defx]" (_replicate " " (- (strlen (+ (_get_dialect_info dbr_dialect 3) "     ")) 6))) (+ (_get_dialect_info dbr_dialect 3) "    ") 1 0 0 0 0)
  64.                 (translate "[defx]" (_get_dialect_info dbr_dialect 3) 1 0 0 0 0)
  65.             )
  66.         )
  67.         (translate (+ "[auth]" (_replicate " " (- (strlen dbr_author) 6))) dbr_author 1 0 0 0 0)
  68.         (translate "[auth]" dbr_author 1 0 0 0 0)
  69.         (translate (+ "[mdyr]" (_replicate " " (- (strlen (_date_time 5)) 6))) (_date_time 5) 1 0 0 0 0)
  70.         (translate "[mdyr]" (_date_time 5) 1 0 0 0 0)
  71.         (translate (+ "[date]" (_replicate " " (- (strlen (_date_time 1)) 6))) (_date_time 1) 1 0 0 0 0)
  72.         (translate "[date]" (_date_time 1) 1 0 0 0 0)
  73.         (translate (+ "[year]" (_replicate " " (- (strlen (_date_time 2)) 6))) (+ (_date_time 2) "  ") 1 0 0 0 0)
  74.         (translate "[year]" (_date_time 2) 1 0 0 0 0)
  75.         (translate (+ "[time]" (_replicate " " (- (strlen (_date_time 3)) 6))) (_date_time 3) 1 0 0 0 0)
  76.         (translate "[time]" (_date_time 3) 1 0 0 0 0)
  77.         (translate (+ "[ampm]" (_replicate " " (- (strlen (_date_time 4)) 6))) (_date_time 4) 1 0 0 0 0)
  78.         (translate "[ampm]" (_date_time 4) 1 0 0 0 0)
  79.         (translate (+ "[dial]" (_replicate " " (- (strlen (_get_dialect_info dbr_dialect 1)) 6))) (_get_dialect_info dbr_dialect 1) 1 0 0 0 0)
  80.         (translate "[dial]" (_get_dialect_info dbr_dialect 1) 1 0 0 0 0)
  81.         (translate (+ "[libr]" (_replicate " " (- (strlen dbr_library) 6))) dbr_library 1 0 0 0 0)
  82.         (translate "[libr]" dbr_library 1 0 0 0 0)
  83.         (translate "<~" (_comment_character 3) 1 1 0 0 0)
  84.         (message "")
  85.         (restore_position)
  86.     )
  87. )
  88. (macro _procedure_header
  89.     (
  90.         (int                year
  91.                             month
  92.                             day
  93.                             hours
  94.                             minutes
  95.                             line_
  96.                             col_
  97.         )
  98.         (string            begin_command
  99.                             end_command
  100.                             buffer_name
  101.                             date_str
  102.                             time_str
  103.                             header_file
  104.         )
  105.         (get_parm 0 begin_command)
  106.         (get_parm 1 end_command)
  107.         (get_parm 2 header_file)
  108.         (inq_names NULL NULL buffer_name)
  109.         (if (< (atoi (substr begin_command 1 1) 0) 97)
  110.             (
  111.                 (_case_insert (+ begin_command "\n\n") 0 4 1)
  112.                 (_case_insert end_command 0 0 1)
  113.             )
  114.         ;else
  115.             (
  116.                 (_case_insert (+ begin_command "\n\n") 0 4 0)
  117.                 (_case_insert end_command 0 0 0)
  118.             )
  119.         )
  120.         (move_rel -2 0)
  121.         (end_of_line)
  122.         (drop_bookmark 9 "y")
  123.         (beginning_of_line)
  124.         (move_rel dbr_hdr_inclusion)
  125.         (if dbr_auto_header
  126.             (_pro_header header_file dbr_hdr_inclusion)
  127.         )
  128.         (goto_bookmark 9)
  129.     )
  130. )
  131. (macro revi
  132.     (
  133.         (int            p_col
  134.                         p_row
  135.         )
  136.         (string        date_time
  137.                         cmd_parm1
  138.                         cmd_parm2
  139.         )
  140.         (save_position)
  141.         (end_of_buffer)
  142.         (if (search_back (+ (_comment_character 3) " Revision:") 0 0)
  143.             (
  144.                 (move_abs 0 12)
  145.                 (= temp_str (ltrim (trim (read 5))))
  146.                 (sprintf temp_str "Revision number [Previous: %s]: " temp_str)
  147.             )
  148.         ;else
  149.             (sprintf temp_str "Revision number: " temp_str)
  150.         )
  151.         (restore_position)
  152.         (save_position)
  153.         (if (get_parm 0 cmd_parm1 temp_str)
  154.             (if (get_parm 1 cmd_parm2 "Description: ")
  155.                 (
  156.                     (end_of_buffer)
  157.                     (if (search_back (+ (+ "<" (_comment_character 3)) (_replicate "." 77)) 1 0)
  158.                         (
  159.                             (beginning_of_line)
  160.                             (move_rel 1 0)
  161.                             (= date_time (+ (_date_time 1) " at "))
  162.                             (= date_time (+ date_time (_date_time 3)))
  163.                             (= temp_str (+ cmd_parm1 " Last Revised: "))
  164.                             (= temp_str (+ temp_str date_time))
  165.                             (sprintf temp_str (+ (_comment_character 3) " Revision: %s\n") temp_str)
  166.                             (insert temp_str)
  167.                             (sprintf temp_str (+ (_comment_character 3) " Description: %s\n") cmd_parm2)
  168.                             (insert temp_str)
  169.                             (insert (+ (_comment_character 3) (+ (_replicate "." 77) "\n")))
  170.                         )
  171.                     ;else
  172.                         (_display_popup_message "No comment header found!" "" 1)
  173.                     )
  174.                     (restore_position)
  175.                     (move_rel 3 0)
  176.                 )
  177.             )
  178.         )
  179.     )
  180. )
  181.