home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 22 / CD_ASCQ_22_0695.iso / win / fr / yrtrace / mntctrl.byr < prev    next >
Text File  |  1995-04-21  |  9KB  |  234 lines

  1. REM -------------------------------------------------------------
  2. REM       Macro de contr⌠le de YRTRACE via le Minitel
  3. REM                 (c) D. Heiderich 1994
  4. REM -------------------------------------------------------------
  5. MULTITASK ON
  6. CLEARALL
  7. DECLARE "BELL"=7
  8. Z=ISCOMOPEN REM Conservez Z
  9. IF Z=1 THEN GOTO 5
  10. A$="Un minitel doit Ωtre sur COM2 pour utiliser ce programme. Continuer ?"
  11. IF YESNO(A$,"YRBASIC")=NO THEN END
  12. CHOICE A:"1200 bauds,4800 bauds,9600 bauds,Abandonner":"Vitesse de transmission"
  13. IF A=3 THEN END
  14. REM PRINT "PrΘparez votre MINITEL (Fnct T+A et vitesse)":"Communication"
  15. IF A=0 THEN COPEN "COM2:1200,e,7,1"
  16. IF A=1 THEN COPEN "COM2:4800,e,7,1"
  17. IF A=2 THEN COPEN "COM2:9600,e,7,1"
  18. 5 REM ----------------------- fin initialisation -------------------"
  19. FOR I=1 TO 25
  20. CPRINT ""
  21. NEXT
  22. CPRINT "------------------------------------------------------------"
  23. CPRINT "*   * ***  ***  **** **** * ****  (c) D.Heiderich      1994"
  24. CPRINT " * *  *  * *  * *  * *    * *      TACHE DE FOND DE YRTRACE"
  25. CPRINT "  *   ***  * *  **** **** * *      ------------------------"
  26. CPRINT "  *   * *  *  * *  *    * * *      Pour obtenir le menu :  "
  27. CPRINT "  *   *  * * *  *  * **** * ****   tapez 'm' sur le minitel"
  28. CPRINT "--YRBASIC v1.0 -YRTRACE v3.1--------------------------------"
  29. GOSUB 1000
  30.  
  31. REM ------------------  BOUCLE MINITEL ---------------------------
  32. 10 CGETCHAR A
  33. IF A=-1 THEN GOTO 10
  34. CPRINT
  35. REM --- MENU PRINCIPAL
  36. IF A=109 THEN GOSUB 1000 REM   m(enu)
  37. IF A=120 THEN GOTO  20   REM   x (sortie)
  38. IF A=100 THEN GOSUB 1010 REM   d(Θpart)
  39. IF A=102 THEN GOSUB 1020 REM   f(in)
  40. IF A=116 THEN GOSUB 1030 REM   t (1er plan on)
  41. IF A=121 THEN GOSUB 1040 REM   y (1er plan off)
  42. IF A=104 THEN GOSUB 1050 REM   h (cacher) h(ide)
  43. IF A=106 THEN GOSUB 1060 REM   j (monter)
  44. IF A=105 THEN GOSUB 1070 REM   i(coniser)
  45. IF A=111 THEN GOSUB 1080 REM   o (agrandir)
  46. IF A=101 THEN GOSUB 1090 REM   e(fface)
  47. IF A=97  THEN GOSUB 1100 REM   a(jout)
  48. REM --- MENU WINDOWS
  49. IF A=119 THEN GOSUB 2000 REM   w(indows) menu
  50. IF A=76  THEN GOSUB 2010 REM   L(ancer) une application
  51. IF A=83  THEN GOSUB 2020 REM   S(Θlectionner) une application
  52. IF A=70  THEN GOSUB 2030 REM   F(fermer)
  53. IF A=69  THEN GOSUB 2040 REM   E(envoyer) un message
  54. IF A=87  THEN GOSUB 2050 REM   Envoyer un message a la fΩnetre active
  55. IF A=88  THEN GOSUB 2060 REM   Envoyer WM_COMMANDE a la fenΩtre active
  56. GOTO 10 REM ------------ fin de la boucle ------------------------
  57. 20 CPRINT ""
  58. CPRINT "Quitter le programme Basic ? O/N (majuscules):",
  59. 30 CGETCHAR A
  60. IF A=79 THEN GOTO 40
  61. IF A=78 THEN GOTO 10
  62. IF A!-1 THEN GOSUB 4000
  63. GOTO 30
  64. 40 CPRINT ""
  65. CPRINT "A BIENTOT."
  66. IF Z=0 THEN CCLOSE REM la communication est fermΘe si elle n'Θtait pas ouverte
  67. END
  68.  
  69. 1000 REM --------------------- MENU ---------------------------
  70. GOSUB 4000 REM Beep
  71. CPRINT ""
  72. CPRINT "                     ******************"
  73. CPRINT "********************** MENU PRINCIPAL **********************"
  74. CPRINT "*                    ******************                    *"
  75. CPRINT "*  d / f  : DEPART   / FIN DE LA RECEPTION DES MESSAGES    *"
  76. CPRINT "*  t / y  : METTRE   / ENLEVER YRTRACE du 1er plan         *"
  77. CPRINT "*  h / j  : CACHER   / MONTRER YRTRACE                     *"
  78. CPRINT "*  i / o  : ICONISER / AGRANDIR YRTRACE                    *"
  79. CPRINT "*      e  : EFFACER LA LISTE                               *"
  80. CPRINT "*      a  : AJOUT D'UN TEXTE DANS LA LISTE                 *"
  81. CPRINT "************************************************************"
  82. CPRINT "*  w      : MENU DE COMMANDE DE WINDOWS                    *"
  83. CPRINT "************************************************************"
  84. CPRINT "*  x      : Quitter le programme YRBASIC                   *"
  85. CPRINT "************************************************************"
  86. RETURN
  87. 1010 REM -------------------- DΘpart  -------------------------
  88. YRRUN ON
  89. YRADDLINE "*** YRBASIC: DΘpart rΘception des messages ***"
  90. CPRINT "DEPART DE LA CAPTURE DES MESSAGES"
  91. RETURN
  92. 1020 REM --------------------- fin  ---------------------------
  93. YRRUN OFF
  94. YRADDLINE "*** YRBASIC: ArrΩt rΘception des messages ***"
  95. CPRINT "ARRET DE LA CAPTURE DES MESSAGES"
  96. RETURN
  97. 1030 REM --------------- mettre du 1er plan  -------------------
  98. SHOWWINDOW HWINDOW,SWTOP
  99. YRADDLINE "*** YRBASIC: YRTRACE est au 1er plan***"
  100. CPRINT "YRTRACE est au 1er plan"
  101. RETURN
  102. 1040 REM -------------- Enlever du 1er plan  -------------------
  103. SHOWWINDOW HWINDOW,SWNOTOP
  104. YRADDLINE "*** YRBASIC: YRTRACE n'est pas au 1er plan***"
  105. CPRINT "YRTRACE n'est pas au 1er plan"
  106. RETURN
  107. 1050 REM ----------------- Cacher  -----------------------------
  108. SHOWWINDOW HWINDOW,SWHIDE
  109. YRADDLINE "*** YRBASIC: est cachΘ***"
  110. CPRINT "YRTRACE CACHE"
  111. RETURN
  112. 1060 REM ----------------- Montrer  ----------------------------
  113. SHOWWINDOW HWINDOW,SWSHOW
  114. YRADDLINE "*** YRBASIC: YRTRACE montrΘ***"
  115. CPRINT "YRTRACE MONTRE"
  116. RETURN
  117. 1070 REM ----------------- Iconiser  ---------------------------
  118. SHOWWINDOW HWINDOW,SWMINIMIZE
  119. YRADDLINE "*** YRBASIC: YRTRACE εconisΘ***"
  120. CPRINT "YRTRACE ICONISE"
  121. RETURN
  122. 1080 REM ----------------- Agrandir  ---------------------------
  123. SHOWWINDOW HWINDOW,SWRESTORE
  124. YRADDLINE "*** YRBASIC: YRTRACE agrandit***"
  125. CPRINT "YRTRACE AGRANDIT"
  126. RETURN
  127. 1090 REM ----------------- efface  -----------------------------
  128. YRCLEARLIST
  129. CPRINT "YRTRACE : LISTE EFFACEE"
  130. RETURN
  131. 1100 REM ----------------- Ajoute une ligne --------------------
  132. CINPUT "LIGNE A AJOUTER:",C$
  133. YRADDLINE C$
  134. RETURN
  135.  
  136. 2000 REM ----------------- Menu Windows ------------------------
  137. CPRINT ""
  138. CPRINT ""
  139. CPRINT ""
  140. CPRINT "************************************************************"
  141. CPRINT "*     *   * * *  * ***   **  *   *   ***                   *"
  142. CPRINT "*     *   * * *  * *  * *  * *   *  *                      *"
  143. CPRINT "*     * * * * ** * *  * *  * * * *   **                    *"
  144. CPRINT "*      * *  * * ** *  * *  *  * *      *  WINDOWS          *"
  145. CPRINT "*      * *  * *  * ***   **   * *   ***   MENU DE PILOTAGE *"
  146. CPRINT "************************************************************"
  147. GOSUB 4000
  148. CPRINT "* L    : LANCER UNE APPLICATION                            *"
  149. CPRINT "* S    : SELECTIONNER UNE APPLICATION                      *"
  150. CPRINT "* F    : FERMER L'APPLICATION SELECTIONNEE                 *"
  151. CPRINT "* E    : ENVOYER UN MESSAGE L'APPLICATION SELECTIONNEE     *"
  152. CPRINT "* W    : ENVOYER UN MESSAGE A LA FENETRE ACTIVE            *"
  153. CPRINT "* X    : ENVOYER WM_COMMAND A LA FENETRE ACTIVE            *"
  154. CPRINT "************************************************************"
  155. RETURN
  156.  
  157. 2010 REM ----------------- Lancer une application---------------
  158. CPRINT ""
  159. CPRINT "Lancer une application Windows"
  160. CPRINT "Note vous pouvez remplacez '\' par '/'"
  161. CINPUT "Application : Chemin\nom (puis ENTER):",A$
  162. MODIFYSTR A$,"/","\"
  163. CPRINT "Lancement de ",A$," :",
  164. ERREUR=EXECPROG(A$)
  165. IF ERREUR>31 THEN CPRINT "OK"
  166. IF ERREUR<32 THEN CPRINT "Erreur de lancement #",ERREUR
  167. RETURN
  168. 2020 REM ------------- SΘlectionner une application-------------
  169. CPRINT "Liste des applications courantes :"
  170. B=0
  171. FOR I=1 TO 25
  172. GETAPP I,A,A$
  173. IF A!0 THEN CPRINT I;A$
  174. IF A=0 THEN I=100
  175. B=B+1
  176. NEXT
  177. CPRINT "VOTRE CHOIX DE 1 A ",B-1,
  178. CINPUT X
  179. IF X<B THEN GOTO 2021
  180. CPRINT "Erreur ! SELECTION=",X,">",B
  181. RETURN
  182. 2021 CPRINT "VOTRE SELECTION : ",
  183. GETAPP X,W,W$ REM Conservez W et W$ !
  184. CPRINT W$
  185. RETURN
  186. 2030 REM ------------- Fermer une application-------------------
  187. CPRINT "Fermeture de ",W$
  188. POSTAPPMESSAGE W,RETURNMSGNUM("WM_QUIT"),0,0
  189. RETURN
  190. 2040 REM ------------- Envoyer un message -----------------------
  191. CPRINT ""
  192. CPRINT "Envoyer un message α l'application sΘlectionnΘe"
  193. CPRINT "Note vous pouvez remplacez '_' par '-'"
  194. CINPUT "Message (puis ENTER) :",A$
  195. MODIFYSTR A$,"-","_"
  196. IF CMPSTRING(A$,"*")=1 THEN A$="WM_COMMAND"
  197. CINPUT "WPARAM LO:",A
  198. CINPUT "WPARAM HI:",B
  199. CINPUT "LPARAM LO:",C
  200. CINPUT "LPARAM HI:",D                           WM_CHAR
  201. GETMSGNAME RETURNMSGNUM(A$),A$
  202. POSTAPPMESSAGE W,RETURNMSGNUM(A$),MAKELONG(A,B),MAKELONG(C,D)
  203. CPRINT A$," WPARAM=",MAKELONG(A,B)," LPARAM=",MAKELONG(C,D)," ENVOYE A ",W$
  204. RETURN
  205. 2050 REM ------------- Envoyer un message --(II)-----------------
  206. CPRINT ""
  207. CPRINT "ENVOYER UN MESSAGE A LA FENETRE ACTIVE"
  208. CPRINT "Note vous pouvez remplacez '_' par '-'"
  209. CINPUT "Message (puis ENTER) :",A$
  210. MODIFYSTR A$,"-","_"
  211. IF CMPSTRING(A$,"*")=1 THEN A$="WM_COMMAND"
  212. CINPUT "WPARAM LO:",A
  213. CINPUT "WPARAM HI:",B
  214. CINPUT "LPARAM LO:",C
  215. CINPUT "LPARAM HI:",D
  216. GETMSGNAME RETURNMSGNUM(A$),A$
  217. POSTMESSAGE GETACTIVEWIN,RETURNMSGNUM(A$),MAKELONG(A,B),MAKELONG(C,D)
  218. CPRINT A$," WPARAM=",MAKELONG(A,B)," LPARAM=",MAKELONG(C,D)," ENVOYE."
  219. RETURN
  220. 2060 REM ------------- Envoyer WM_COMMAND ----------------------
  221. CPRINT ""
  222. CPRINT "ENVOYER WM_COMMAND A LA FENETRE ACTIVE"
  223. A$="WM_COMMAND"
  224. CINPUT "IDENTIFICATEUR:",A
  225. CINPUT "NOTIFICATION:",B
  226. POSTMESSAGE GETACTIVEWIN,RETURNMSGNUM(A$),MAKELONG(A,B),0
  227. CPRINT "WM_COMMAND ID=",A," NOTIFY=",B," ENVOYE."
  228. RETURN
  229. REM ======================= DIVERS =============================
  230. 4000 REM BEEP DU MINITEL
  231. CHR BELL,A$
  232. CPRINT A$,
  233. RETURN
  234.