home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 17 / CD_ASCQ_17_101194.iso / dos / prg / mos / exemples / gfx_src / dialogue.pas next >
Pascal/Delphi Source File  |  1994-08-01  |  4KB  |  80 lines

  1. {╔══════════════════════════════════════════════════════════════════════════╗
  2.  ║       EXEMPLE D'UTILISATION DES FONCTIONS DE L'INTERFACE GRAPHIQUE       ║
  3.  ╠══════════════════════════════════════════════════════════════════════════╣
  4.  ║                  OBTENTION D'UNE BOITE DE DIALOGUE SIMPLE                ║
  5.  ╠══════════════════════════════════════════════════════════════════════════╣
  6.  ║ Coded by Zuul as BouFFtou as Cheveau Frédéric.                           ║
  7.  ║ Programmé à l'IUT de Montpellier sur Turbo Pascal V7.00.                 ║
  8.  ║ Contact us on 36.14 RTEL1 - Bal "BouFFtou" or Bal "ICF".                 ║
  9.  ╚══════════════════════════════════════════════════════════════════════════╝}
  10.  
  11. {$M 64000,0,365520}                     {*Stack and Heap*}
  12. Program ESSAIS;                         {*Nom du Programme*}
  13.  
  14. Uses ZUUL_ASM,                          {*TPU Utilisés Directement*}
  15.      ZUUL_BAS,
  16.      ZUUL_MSE,
  17.      ZUUL_TOO,
  18.      ZUUL_GAD,
  19.      ZUUL_WIN;
  20.  
  21. {╔══════════════════════════════════════════════════════════════════════════╗
  22.  ║                         PROCEDURE PRINCIPALE                             ║
  23.  ╚══════════════════════════════════════════════════════════════════════════╝}
  24.  
  25. Procedure DIALOG_01;                    {*Exemple de Boite de Dialogue Perso*}
  26. Var Exit_Flg    :Boolean;               {*Flag de Sortie*}
  27.     Even        :Byte;                  {*Réception Evènements de la Fenêtre*}
  28.     W           :Win;                   {*Structure Fenêtre*}
  29.     But0        :ButG;                  {*Exemple de Bouton*}
  30.  
  31. Procedure REDRAW_FRAME;                 {*Définition Contenu Fenêtre*}
  32. Begin
  33. {*Définir ici le Contenu de la Fenêtre (Gadgets, Sliders etc...)*}
  34. Bevel(W.X1+10,W.Y1+10+HaF,W.X2-10,W.Y2-15-HaF,1,7,False,True);
  35. ButtonG(((W.X2+W.X1) Div 2)-50,W.Y2-10-HaF,100,False,But0,'_J''AI COMPRIS');
  36. End;
  37.  
  38. Begin
  39. INIT_WINDOW(100,100,400,220,$51DF,'HELLO WORLD...',W);{*Init Window*}
  40. SUP_WINDOW(0,0,200,50,160,80,400,180,0,5,$0001,W);    {*Suplément*}
  41. If NError<>0 Then Exit;                 {*Erreurs Initialisations ?*}
  42. DRAW_WINDOW(W);                         {*Affiche la Fenêtre*}
  43. REDRAW_FRAME;                           {*Affiche le Contenu de la Fenêtre*}
  44. Exit_Flg:=False;                        {*Flag de Sortie*}
  45.  
  46. Repeat;
  47. If WINDOW_READY(W) Then                 {*Teste si Fenêtre Prête*}
  48.   Begin
  49.   {Test des Gadgets Personnels de la Fenêtre Définis dans "REDRAW_FRAME"*}
  50.   If GetMsg_But(But0,1)=True Then Exit_Flg:=True;{*Exemple d'Action*}
  51.   End;
  52.  
  53. Even:=ACTIVE_WINDOW(W);
  54. If Even=1 Then Exit_Flg:=True;          {*Fenêtre Fermée => Exit*}
  55. If Even=5 Then SET_POINTER(P_Arrow);    {*Pointer Arrow*}
  56. If Even=6 Then SET_POINTER(P_Busy);     {*Pointer Busy*}
  57. If Even=3 Then REDRAW_FRAME;            {*Fenêtre Extend => Réafficher Contenu*}
  58. If Even=4 Then REDRAW_FRAME;            {*Fenêtre Resizée => Réafficher Contenu*}
  59. If Even=9 Then REDRAW_FRAME;            {*Fenêtre Déplacée => Réafficher Contenu*}
  60.  
  61. Until Exit_Flg=True;                    {*Flag de Sortie*}
  62.  
  63. KILL_WINDOW(W);                         {*Suprime Fenêtre*}
  64. End;
  65.  
  66. {╔══════════════════════════════════════════════════════════════════════════╗
  67.  ║                           PROGRAMME PRINCIPAL                            ║
  68.  ╚══════════════════════════════════════════════════════════════════════════╝}
  69.  
  70. Begin
  71. INIT_ASM;                               {*Initialise All for Hardware*}
  72. INIT_SCREEN;                            {*Initialise All for Screen*}
  73. INIT_MOUSE;                             {*Initialise All for Mouse*}
  74.  
  75. DIALOG_01;                              {*Appel Procedure*}
  76.  
  77. DONE_MOUSE;                             {*Restore All for Mouse*}
  78. DONE_SCREEN;                            {*Restore All for Screen*}
  79. DONE_ASM;                               {*Restore All for Hardware*}
  80. End.