Texts.h 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. /* voc 2.1.0 [2019/11/01]. Bootstrapping compiler for address size 8, alignment 8. xrtspaSF */
  2. #ifndef Texts__h
  3. #define Texts__h
  4. #include "SYSTEM.h"
  5. #include "Files.h"
  6. typedef
  7. struct Texts_BufDesc {
  8. INT32 len;
  9. char _prvt0[4];
  10. } Texts_BufDesc;
  11. typedef
  12. Texts_BufDesc *Texts_Buffer;
  13. typedef
  14. struct Texts_ElemMsg {
  15. char _prvt0[1];
  16. } Texts_ElemMsg;
  17. typedef
  18. struct Texts_ElemDesc *Texts_Elem;
  19. typedef
  20. struct Texts_CopyMsg { /* Texts_ElemMsg */
  21. Texts_Elem e;
  22. } Texts_CopyMsg;
  23. typedef
  24. struct Texts_RunDesc {
  25. INT32 _prvt0;
  26. char _prvt1[15];
  27. } Texts_RunDesc;
  28. typedef
  29. void (*Texts_Handler)(Texts_Elem, Texts_ElemMsg*, ADDRESS *);
  30. typedef
  31. struct Texts_ElemDesc {
  32. char _prvt0[20];
  33. INT32 W, H;
  34. Texts_Handler handle;
  35. char _prvt1[4];
  36. } Texts_ElemDesc;
  37. typedef
  38. struct Texts_FileMsg { /* Texts_ElemMsg */
  39. INT16 id;
  40. INT32 pos;
  41. Files_Rider r;
  42. } Texts_FileMsg;
  43. typedef
  44. struct Texts_FontDesc {
  45. char _prvt0[32];
  46. } Texts_FontDesc;
  47. typedef
  48. Texts_FontDesc *Texts_FontsFont;
  49. typedef
  50. struct Texts_IdentifyMsg { /* Texts_ElemMsg */
  51. CHAR mod[32], proc[32];
  52. } Texts_IdentifyMsg;
  53. typedef
  54. struct Texts_TextDesc *Texts_Text;
  55. typedef
  56. void (*Texts_Notifier)(Texts_Text, INT16, INT32, INT32);
  57. typedef
  58. struct Texts_Reader {
  59. BOOLEAN eot;
  60. Texts_FontsFont fnt;
  61. INT8 col, voff;
  62. Texts_Elem elem;
  63. char _prvt0[32];
  64. } Texts_Reader;
  65. typedef
  66. struct Texts_Scanner { /* Texts_Reader */
  67. BOOLEAN eot;
  68. Texts_FontsFont fnt;
  69. INT8 col, voff;
  70. Texts_Elem elem;
  71. char _prvt0[32];
  72. CHAR nextCh;
  73. INT16 line, class;
  74. INT32 i;
  75. REAL x;
  76. LONGREAL y;
  77. CHAR c;
  78. INT8 len;
  79. CHAR s[64];
  80. } Texts_Scanner;
  81. typedef
  82. struct Texts_TextDesc {
  83. INT32 len;
  84. Texts_Notifier notify;
  85. char _prvt0[12];
  86. } Texts_TextDesc;
  87. typedef
  88. struct Texts_Writer {
  89. Texts_Buffer buf;
  90. Texts_FontsFont fnt;
  91. INT8 col, voff;
  92. char _prvt0[26];
  93. } Texts_Writer;
  94. import Texts_Elem Texts_new;
  95. import ADDRESS *Texts_FontDesc__typ;
  96. import ADDRESS *Texts_RunDesc__typ;
  97. import ADDRESS *Texts_ElemMsg__typ;
  98. import ADDRESS *Texts_ElemDesc__typ;
  99. import ADDRESS *Texts_FileMsg__typ;
  100. import ADDRESS *Texts_CopyMsg__typ;
  101. import ADDRESS *Texts_IdentifyMsg__typ;
  102. import ADDRESS *Texts_BufDesc__typ;
  103. import ADDRESS *Texts_TextDesc__typ;
  104. import ADDRESS *Texts_Reader__typ;
  105. import ADDRESS *Texts_Scanner__typ;
  106. import ADDRESS *Texts_Writer__typ;
  107. import void Texts_Append (Texts_Text T, Texts_Buffer B);
  108. import void Texts_ChangeLooks (Texts_Text T, INT32 beg, INT32 end, UINT32 sel, Texts_FontsFont fnt, INT8 col, INT8 voff);
  109. import void Texts_Close (Texts_Text T, CHAR *name, ADDRESS name__len);
  110. import void Texts_Copy (Texts_Buffer SB, Texts_Buffer DB);
  111. import void Texts_CopyElem (Texts_Elem SE, Texts_Elem DE);
  112. import void Texts_Delete (Texts_Text T, INT32 beg, INT32 end);
  113. import Texts_Text Texts_ElemBase (Texts_Elem E);
  114. import INT32 Texts_ElemPos (Texts_Elem E);
  115. import void Texts_Insert (Texts_Text T, INT32 pos, Texts_Buffer B);
  116. import void Texts_Load (Files_Rider *r, ADDRESS *r__typ, Texts_Text T);
  117. import void Texts_Open (Texts_Text T, CHAR *name, ADDRESS name__len);
  118. import void Texts_OpenBuf (Texts_Buffer B);
  119. import void Texts_OpenReader (Texts_Reader *R, ADDRESS *R__typ, Texts_Text T, INT32 pos);
  120. import void Texts_OpenScanner (Texts_Scanner *S, ADDRESS *S__typ, Texts_Text T, INT32 pos);
  121. import void Texts_OpenWriter (Texts_Writer *W, ADDRESS *W__typ);
  122. import INT32 Texts_Pos (Texts_Reader *R, ADDRESS *R__typ);
  123. import void Texts_Read (Texts_Reader *R, ADDRESS *R__typ, CHAR *ch);
  124. import void Texts_ReadElem (Texts_Reader *R, ADDRESS *R__typ);
  125. import void Texts_ReadPrevElem (Texts_Reader *R, ADDRESS *R__typ);
  126. import void Texts_Recall (Texts_Buffer *B);
  127. import void Texts_Save (Texts_Text T, INT32 beg, INT32 end, Texts_Buffer B);
  128. import void Texts_Scan (Texts_Scanner *S, ADDRESS *S__typ);
  129. import void Texts_SetColor (Texts_Writer *W, ADDRESS *W__typ, INT8 col);
  130. import void Texts_SetFont (Texts_Writer *W, ADDRESS *W__typ, Texts_FontsFont fnt);
  131. import void Texts_SetOffset (Texts_Writer *W, ADDRESS *W__typ, INT8 voff);
  132. import void Texts_Store (Files_Rider *r, ADDRESS *r__typ, Texts_Text T);
  133. import void Texts_Write (Texts_Writer *W, ADDRESS *W__typ, CHAR ch);
  134. import void Texts_WriteDate (Texts_Writer *W, ADDRESS *W__typ, INT32 t, INT32 d);
  135. import void Texts_WriteElem (Texts_Writer *W, ADDRESS *W__typ, Texts_Elem e);
  136. import void Texts_WriteHex (Texts_Writer *W, ADDRESS *W__typ, INT32 x);
  137. import void Texts_WriteInt (Texts_Writer *W, ADDRESS *W__typ, INT64 x, INT64 n);
  138. import void Texts_WriteLn (Texts_Writer *W, ADDRESS *W__typ);
  139. import void Texts_WriteLongReal (Texts_Writer *W, ADDRESS *W__typ, LONGREAL x, INT16 n);
  140. import void Texts_WriteLongRealHex (Texts_Writer *W, ADDRESS *W__typ, LONGREAL x);
  141. import void Texts_WriteReal (Texts_Writer *W, ADDRESS *W__typ, REAL x, INT16 n);
  142. import void Texts_WriteRealFix (Texts_Writer *W, ADDRESS *W__typ, REAL x, INT16 n, INT16 k);
  143. import void Texts_WriteRealHex (Texts_Writer *W, ADDRESS *W__typ, REAL x);
  144. import void Texts_WriteString (Texts_Writer *W, ADDRESS *W__typ, CHAR *s, ADDRESS s__len);
  145. import void *Texts__init(void);
  146. #endif // Texts