home *** CD-ROM | disk | FTP | other *** search
/ Amiga Games 1995 January / amigagames-1995-01.iso / archive / userbox / publicdomain / ged313.lha / Install / data / main / GoldED / arexx / func.ged < prev    next >
Text File  |  1994-08-12  |  4KB  |  141 lines

  1. /* $VER: 1.0, ©1993 Dietmar Eilert. Insert empty function body         */
  2.  
  3. OPTIONS RESULTS                             /* enable return codes     */
  4.  
  5. arg doComment doFold                        /* set to TRUE/FALSE       */
  6.  
  7. OPTIONS RESULTS                             /* enable return codes     */
  8.  
  9. if (LEFT(ADDRESS(), 6) ~= "GOLDED") then    /* not started by GoldEd ? */
  10.     address 'GOLDED.1'
  11.  
  12. 'LOCK CURRENT'                              /* lock GUI, gain access   */
  13. OPTIONS FAILAT 6                            /* ignore warnings         */
  14. SIGNAL ON SYNTAX                            /* ensure clean exit       */
  15.  
  16. /* ------------------------- INSERT YOUR CODE HERE: ------------------ */
  17.  
  18. 'QUERY CAT'
  19.  
  20. if (RESULT = "deutsch") then do
  21.  
  22.     ASKNAME = "Funktionsname (z.B. main) ?"
  23.     ASKTYPE = "Funktionstyp"
  24.     FTYPES  = "_void|_int|_char **|_UWORD|_anderer"
  25.     COMMENT = " Kommentar:"
  26. end
  27. else if (RESULT = "français") then do
  28.     ASKNAME = "Nom de la fonction (ex: main) ?"
  29.     ASKTYPE = "Type de fonction"
  30.     FTYPES  = "_void|_int|_char **|_UWORD|_autre"
  31.     COMMENT = " Commentaire:"
  32. end
  33. else do
  34.  
  35.     ASKNAME = "function name (e.g. main) ?" 
  36.     ASKTYPE = "function type"
  37.     FTYPES  = "_void|_int|_char **|_UWORD|_other"
  38.     COMMENT = " Comment:"
  39. end
  40.  
  41. 'REQUEST TITLE "' || ASKNAME || '" STRING VAR NAME'
  42.  
  43. if (RC = 0) then do
  44.  
  45.     'REQUEST BODY="' || ASKTYPE || " " || NAME || '() ?" BUTTON="' || FTYPES || '"'
  46.  
  47.     if (RC = 0) then do
  48.  
  49.         if (RESULT = 1) then
  50.             TYPE = "void"
  51.  
  52.         else if (RESULT = 2) then
  53.             TYPE = "int"
  54.  
  55.         else if (RESULT = 3) then
  56.             TYPE = "char *"
  57.  
  58.         else if (RESULT = 4) then
  59.             TYPE = "UWORD"
  60.  
  61.         else
  62.             'REQUEST TITLE "' || ASKTYPE || ' ?" STRING VAR TYPE'
  63.  
  64.         /* replace single '*' by '**' (required by parser) */
  65.  
  66.         'FIX VAR=TYPE'
  67.  
  68.         if (RC = 0) then do
  69.  
  70.             'QUERY FOLDA VAR FOLDSTART'
  71.             'QUERY FOLDB VAR FOLDEND'
  72.  
  73.             'INSERT LINE'
  74.  
  75.             if (doComment = 'TRUE') then do
  76.  
  77.                HEAD  = '/** ' || CENTER(' ' || NAME || ' ', 77, '-')
  78.  
  79.                 if (doFold = 'TRUE') then do
  80.  
  81.                     'FIRST'
  82.                     'TEXT T="' || FOLDSTART || ' "'
  83.                      'TEXT T="*"' || NAME || '*""'
  84.                     'CR'
  85.                     'CR'
  86.                 end
  87.  
  88.                 'FIRST'
  89.                 'TEXT CR T="' || LEFT(HEAD, 81) || '"'
  90.                 'CR'
  91.                 'FIRST'
  92.                 'TEXT CR T="' || COMMENT || '"'
  93.                 'CR'
  94.                 'FIRST'
  95.                 'TEXT CR T="**/"'
  96.                 'CR'
  97.             end
  98.             else if (doFold = 'TRUE') then do
  99.  
  100.                 'FIRST'
  101.                 'TEXT T="' || FOLDSTART || ' "'
  102.                  'TEXT T="*"' || NAME || '*""'
  103.                 'CR'
  104.                 'CR'
  105.             end
  106.  
  107.             'FIRST'
  108.             'TEXT CR T="' || TYPE || '"'
  109.             'TEXT CR T="' || NAME || '()"'
  110.             'TEXT CR T={'
  111.             'FIRST'                                  
  112.             'TAB'
  113.             'PING SLOT 0'
  114.             'FIRST'
  115.             'DOWN'
  116.             'TEXT CR T=}'
  117.  
  118.             if (doFold = 'TRUE') then do
  119.  
  120.                 'CR'
  121.                 'FIRST'
  122.                 ' TEXT CR T="' || FOLDEND || '"'
  123.             end
  124.  
  125.             'PONG SLOT 0'
  126.         end
  127.     end
  128.  
  129. end
  130.  
  131. /* ---------------------------- END OF YOUR CODE ----------------------- */
  132.  
  133. 'UNLOCK' /* VERY important: unlock GUI */
  134. EXIT
  135.  
  136. SYNTAX:
  137.  
  138. SAY "Sorry, error line" SIGL ":" ERRORTEXT(RC) ":-("
  139. 'UNLOCK'
  140. EXIT
  141.