home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1991 / 09_10 / titel / saatest.prg < prev   
Encoding:
Text File  |  1991-06-11  |  6.8 KB  |  217 lines

  1. /* ------------------------------------------------------ */
  2. /*                      SAATEST.PRG                       */
  3. /*             Demonstration von SAAMENU.PRG              */
  4. /* ------------------------------------------------------ */
  5. #include 'INKEY.ch'
  6. #include 'achoice.ch'
  7. #include 'box.ch'
  8.  
  9. SetColor('gr+/b,w+/n')
  10. @ 0,0 CLEAR TO 24,79
  11. @ 2,0 TO 23,79 DOUBLE
  12. PUBLIC grundangaben := Array(1,14)
  13.  
  14. grundangaben[1, 1] := 'Grundmenu'
  15.                                 // Menünamen anzeigen
  16. grundangaben[1, 2] := 23        // Zeile f. Menünamenanzeige
  17. grundangaben[1, 3] := '╡╞'      // Begrenzer f.  -"-
  18. grundangaben[1, 4] := 'rg+/b'   // Farbe der Begrenzer
  19. grundangaben[1, 5] := 'g/n'     // Farbe der Menünamen
  20. grundangaben[1, 6] := 24        // Zeile für Message
  21. grundangaben[1, 7] := 70        // max. Länge der Message
  22. grundangaben[1, 8] := 'rg+/b'   // Farbe der Message
  23. grundangaben[1, 9] := .T.       // Unterbalken anzeigen
  24.  
  25. grundangaben[1,10] := 'gr+/n,r+/w,n,b+/n,w/n'
  26.                                 // Farbe Menü(border=HotKey)
  27. grundangaben[1,11] := 'gr+/n'   // Farbe Unterbalken
  28. grundangaben[1,12] := .F.       // ESC-Abbruch erlaubt
  29. grundangaben[1,14] := 0         // Zeile für Menüanzeige
  30.  
  31. lesensuch      := Array(4, 12)
  32. lesensuch[2,1] := grundangaben[1,14]+5   // oben
  33. lesensuch[2,2] := 42                     // links
  34. lesensuch[2,3] := grundangaben[1,14]+12  // unten
  35. lesensuch[2,4] := 57                     // rechts
  36. lesensuch[2,5] := Array(4)               // Untermenüpunkte
  37.   lesensuch[2,5,1] := 'Suchen        1'
  38.   lesensuch[2,5,2] := 'Wahlsuche     2'
  39.   lesensuch[2,5,3] := 'Die Wahlsuche 3 '
  40.   lesensuch[2,5,4] := 'Noch suchen   4'
  41. lesensuch[2,6] := Array(4)               // Messages
  42.   lesensuch[2,6,1] := 'Message1'
  43.   lesensuch[2,6,2] := 'Message2'
  44.   lesensuch[2,6,3] := 'Message3'
  45.   lesensuch[2,6,4] := 'Message4'
  46. lesensuch[2,7] := Array(4)               // Verfügbarkeit
  47.   lesensuch[2,7,1] := .F.
  48.   lesensuch[2,7,2] := .F.
  49.   lesensuch[2,7,3] := .F.
  50.   lesensuch[2,7,4] := .F.
  51. lesensuch[2,8]  := &('{||testudf()}')
  52.                         // evtl. UDF() bei jeder Taste
  53.                         // muß als CODEBLOCK-Makro
  54.                         // oder NIL definiert sein !!!
  55. lesensuch[2,9]  := 1                   // Vorauswahl
  56. lesensuch[2,10] := 0                   // Positionierung
  57. lesensuch[2,11] := 'g/n,w+/r,n,,w/n+'  // Farbe Untermenü
  58. lesensuch[2,12] := NIL                 // weitere Untermenüs
  59.  
  60. such      := Array(2,12)
  61. such[1,1] := grundangaben[1,14]+3      // oben
  62. such[1,2] := 32                        // links
  63. such[1,3] := grundangaben[1,14]+11     // unten
  64. such[1,4] := 50                        // rechts
  65. such[1,5] := Array(4)                  // Untermenüpunkte
  66.   such[1,5,1] := 'Suchen 1'
  67.   such[1,5,2] := 'Wahl für Suchen 2'+chr(16)
  68.   such[1,5,3] := 'Nummer 3: suchen'
  69.   such[1,5,4] := 'Suchen, die vierte'
  70. such[1,6] := Array(4)                  //  Message
  71.   such[1,6,1] := 'Message1'
  72.   such[1,6,2] := 'Message2'
  73.   such[1,6,3] := 'Message3'
  74.   such[1,6,4] := 'Message4'
  75. such[1,7] := Array(4)                  // Verfügbarkeit
  76.   such[1,7,1] := .T.
  77.   such[1,7,2] := .T.
  78.   such[1,7,3] := .T.
  79.   such[1,7,4] := .T.
  80. such[1,8]  := NIL
  81. such[1,9]  := 1                        // Vorauswahl
  82. such[1,10] := 0                        // Positionierung
  83. such[1,11] := 'w+/n,w+/r,n,,w/n'       // Farbe
  84. such[1,12] := lesensuch
  85.  
  86. lesen    := Array(12)                  // Untermenüs
  87. lesen[1] := grundangaben[1,14]+2       // oben
  88. lesen[2] := 20                         // links
  89. lesen[3] := grundangaben[1,14]+5       // unten
  90. lesen[4] := 35                         // rechts
  91. lesen[5] := Array(8)                   // Untermenüpunkten
  92.   lesen[5,1] := 'Nur1 Suchen '+chr(16)
  93.   lesen[5,2] := 'Lesen2 only'
  94.   lesen[5,3] := 'Lesen3 only'
  95.   lesen[5,4] := 'Lesen4 only'
  96.   lesen[5,5] := 'Lesen5 only'
  97.   lesen[5,6] := 'Lesen6 only'
  98.   lesen[5,7] := 'Lesen7 only'
  99.   lesen[5,8] := 'Lesen8 only'
  100. lesen[6] := Array(8)                  // Message
  101.   lesen[6,1] := 'Message1'
  102.   lesen[6,2] := 'Message2'
  103.   lesen[6,3] := 'Message3'
  104.   lesen[6,4] := 'Message4'
  105.   lesen[6,5] := 'Message5'
  106.   lesen[6,6] := 'Message6'
  107.   lesen[6,7] := 'Message7'
  108.   lesen[6,8] := 'Message8'
  109. lesen[7] := Array(8)                  // Verfügbarkeit
  110.   lesen[7,1] := .T.
  111.   lesen[7,2] := .T.
  112.   lesen[7,3] := .T.
  113.   lesen[7,4] := .T.
  114.   lesen[7,5] := .T.
  115.   lesen[7,6] := .T.
  116.   lesen[7,7] := .T.
  117.   lesen[7,8] := .T.
  118. lesen[8]  := NIL
  119. lesen[9]  := 1                        // Vorauswahl
  120. lesen[10] := 0                        // Positionierung
  121. lesen[11] := 'g/n,w+/r,n,,w/n+'       // Farbe
  122. lesen[12] := such
  123.  
  124. datei    := Array(12)
  125. datei[1] := grundangaben[1,14]+2
  126. datei[2] := 4
  127. datei[3] := grundangaben[1,14]+5
  128. datei[4] := 24
  129. datei[5] := Array(2)
  130.   datei[5,1] := 'Datei öffnen'
  131.   datei[5,2] := 'Schließe Datei'
  132. datei[6] := Array(2)
  133.   datei[6,1] := 'Message1'
  134.   datei[6,2] := 'Message2'
  135. datei[7] := Array(2)
  136.   datei[7,1] := .T.
  137.   datei[7,2] := .T.
  138. datei[8]  := NIL
  139. datei[9]  := 1
  140. datei[10] := 0
  141. datei[11] := 'g/n,w+/r,n,,w/n+'
  142. datei[12] := NIL
  143.  
  144. sons    := Array(12)
  145. sons[1] := grundangaben[1,14]+2
  146. sons[2] := 28
  147. sons[3] := grundangaben[1,14]+5
  148. sons[4] := 44
  149. sons[5] := Array(2)
  150.   sons[5,1] := 'Sonstiges 1'
  151.   sons[5,2] := 'Wieder S. 2'
  152. sons[6] := Array(2)
  153.   sons[6,1] := 'Message1'
  154.   sons[6,2] := 'Message2'
  155. sons[7] := Array(2)
  156.   sons[7,1] := .T.
  157.   sons[7,2] := .T.
  158. sons[8]  := NIL
  159. sons[9]  := 1
  160. sons[10] := 0
  161. sons[11] := 'g/n,w+/r,n,,w/n+'
  162. sons[12] := NIL
  163.  
  164. hauptmenu      :=Array(4,4)
  165. hauptmenu[1,1] := '~D~atei'     // Name Menüpunkt (~Hotkey~)
  166. hauptmenu[1,2] := 'H1-Message'  // Message
  167. hauptmenu[1,3] := .T.           // Aktiv oder gesperrt
  168. hauptmenu[1,4] := datei         // Array mit Untermenü
  169.  
  170. hauptmenu[2,1] := '~E~ditieren'
  171. hauptmenu[2,2] := 'HP2-Message ist sehr gut !!'
  172. hauptmenu[2,3] := .F.
  173. hauptmenu[2,4] := NIL
  174.  
  175. hauptmenu[3,1] := '~L~esen'
  176. hauptmenu[3,2] := 'MP3-Message'
  177. hauptmenu[3,3] := .F.
  178. hauptmenu[3,4] := lesen
  179.  
  180. hauptmenu[4,1] := '~S~onstiges'
  181. hauptmenu[4,2] := 'MP4-Message'
  182. hauptmenu[4,3] := .T.
  183. hauptmenu[4,4] := sons
  184.  
  185. grundangaben[1,13] := hauptmenu
  186.  
  187. /* --------------- Menüaufruf --------------------------- */
  188. ab := .F.
  189. la := 1
  190.  
  191. ruck := SaaMenu(,grundangaben)
  192.  
  193. IF (len(ruck) = 2)
  194.   IF (ruck[2] = 1).and.(ruck[1] = 1)
  195.     hauptmenu[2,3] := .T.
  196.     hauptmenu[3,3] := .T.
  197.     datei[7,2]     := .T.
  198.     ruck := SaaMenu(,grundangaben)
  199.   ELSE
  200.     @ 0,0 SAY 'Bitte erst eine Datei öffnen!'
  201.     INKEY(0)
  202.     @ 0,0 SAY '                             '
  203.   ENDIF
  204. ENDIF
  205.  
  206. FUNCTION testudf
  207.   @  5,5 SAY AModus
  208.   @  7,5 SAY APosZeiger
  209.   @  9,5 SAY APosRel
  210.   @ 11,5 SAY 'TASTE -->'
  211.   INKEY(0)
  212.   @ 5,5 CLEAR TO 12,20
  213. RETURN NIL
  214. /* ------------------------------------------------------ */
  215. /*               Ende von SAATEST.PRG                     */
  216.  
  217.