scroller.pas 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. PROGRAM Scroller;
  2. uses triton, tritonmacros, utility;
  3. {
  4. A demo in FPC Pascal using triton.library
  5. Updated for fpc 1.0.7
  6. 11 Jan 2003.
  7. [email protected]
  8. }
  9. VAR
  10. Project : pTR_Project;
  11. App : pTR_App;
  12. close_me : BOOLEAN;
  13. trmsg : pTR_Message;
  14. dummy : longint;
  15. begin
  16. App := TR_CreateAppTags([
  17. TRCA_Name,' Triton Scroller Demo' ,
  18. TRCA_Release,' 1.0' ,
  19. TRCA_Date,' 03-08-1998' ,
  20. TAG_DONE]);
  21. if App <> nil then begin
  22. ProjectStart;
  23. WindowID(1);
  24. WindowTitle(' Scroller' );
  25. VertGroupA;
  26. Space;
  27. HorizGroupAC;
  28. Space;
  29. TextID(' _Scroller' ,7);
  30. Space;
  31. SetTRTag(TROB_Scroller,TROF_HORIZ);
  32. SetTRTag(TRSC_Total,40);
  33. SetTRTag(TRSC_Visible,10);
  34. SetTRTag(TRAT_Value,5);
  35. SetTRTag(TRAT_ID,7);
  36. Space;
  37. EndGroup;
  38. Space;
  39. EndGroup;
  40. EndProject;
  41. Project := TR_OpenProject(App,@tritontags);
  42. IF Project <> NIL THEN BEGIN
  43. close_me := FALSE;
  44. WHILE NOT close_me DO BEGIN
  45. dummy := TR_Wait(App,0);
  46. REPEAT
  47. trmsg := TR_GetMsg(App);
  48. IF trmsg <> NIL THEN BEGIN
  49. IF (trmsg^.trm_Project = Project) THEN BEGIN
  50. CASE trmsg^.trm_Class OF
  51. TRMS_CLOSEWINDOW : begin
  52. writeln(' The final value was: ' ,TR_GetValue(Project,7));
  53. close_me := True;
  54. end;
  55. TRMS_ERROR: WriteLN(TR_GetErrorString(trmsg^.trm_Data));
  56. TRMS_NEWVALUE : IF trmsg^.trm_ID = 7 then writeln(' The value is: ' ,trmsg^.trm_Data);
  57. END;
  58. END;
  59. TR_ReplyMsg(trmsg);
  60. END;
  61. UNTIL close_me OR (trmsg = NIL);
  62. END;
  63. TR_CloseProject(Project);
  64. end;
  65. TR_DeleteApp(App);
  66. END ELSE writeln(' Cant creat Application' );
  67. end.