home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / h / hldevkit.zip / HOTLINKS.I < prev    next >
Text File  |  1992-04-28  |  10KB  |  334 lines

  1. *******************************************************************
  2. *                                                                 *
  3. *   hotlinks.i - include file for using hotlinks.library          *
  4. *                                                                 *
  5. *                                                                 *
  6. *******************************************************************
  7.  
  8.  IFND HOTLINKS_HOTLINKS_I
  9. HOTLINKS_HOTLINKS_I equ 1
  10.  
  11.     INCDIR "include:"
  12.     
  13.     IFND EXEC_TYPES_I
  14.         INCLUDE "exec/types.i"
  15.     ENDC
  16.     
  17.     IFND EXEC_PORTS_I
  18.         INCLUDE "exec/ports.i"
  19.     ENDC
  20.  
  21. ; LVO's
  22.     
  23. _LVOGetPub    equ    -$1e
  24. _LVOPutPub    equ    -$24
  25. _LVOPubInfo    equ    -$2a
  26. _LVOHLSysInfo    equ    -$30
  27. _LVOHLRegister    equ    -$36
  28. _LVOUnRegister    equ    -$3c
  29. _LVOAllocPBlock    equ    -$42
  30. _LVOFreePBlock    equ    -$48
  31. _LVOSetUser    equ    -$4e
  32. _LVOChgPassword    equ    -$54
  33. _LVOFirstPub    equ    -$5a
  34. _LVONextPub    equ    -$60
  35. _LVORemovePub    equ    -$66
  36. _LVONotify    equ    -$6c
  37. _LVOPubStatus    equ    -$72
  38. _LVOGetInfo    equ    -$78
  39. _LVOSetInfo    equ    -$7e
  40. _LVOLockPub    equ    -$84
  41. _LVOOpenPub    equ    -$8a
  42. _LVOReadPub    equ    -$90
  43. _LVOWritePub    equ    -$96
  44. _LVOSeekPub    equ    -$9c
  45. _LVOClosePub    equ    -$a2
  46. _LVOPublish    equ    -$a8
  47. _LVOSubscribe    equ    -$ae
  48. _LVONewPassword equ     -$b4
  49. _LVOUnSubscribe equ     -$ba
  50.  
  51.  
  52. ;message types (UWORD hm_ID)
  53. HLMSGID_HLSYSINFO       equ     0
  54. HLMSGID_HLREGISTER      equ     1
  55. HLMSGID_UNREGISTER      equ     2
  56. HLMSGID_ALLOCPBLOCK     equ     3
  57. HLMSGID_FREEPBLOCK      equ     4
  58. HLMSGID_SETUSER         equ     5
  59. HLMSGID_CHGPASSWORD     equ     6
  60. HLMSGID_FIRSTPUB        equ     7
  61. HLMSGID_NEXTPUB         equ     8
  62. HLMSGID_REMOVEPUB       equ     9
  63. HLMSGID_NOTIFY          equ     10
  64. HLMSGID_PUBSTATUS       equ     11
  65. HLMSGID_GETINFO         equ     12
  66. HLMSGID_SETINFO         equ     13
  67. HLMSGID_LOCKPUB         equ     14
  68. HLMSGID_OPENPUB         equ     15
  69. HLMSGID_READPUB         equ     16
  70. HLMSGID_WRITEPUB        equ     17
  71. HLMSGID_SEEKPUB         equ     18
  72. HLMSGID_CLOSEPUB        equ     19
  73. HLMSGID_NOTIFYREPLY     equ     20
  74. HLMSGID_DOWN            equ     21
  75. ;22-65535 are reserved for future use
  76.  
  77.  
  78. ;error codes - returned in the Return field of the HLMsg
  79. NOERROR         equ     0
  80. INVPARAM        equ     -1
  81. NOPRIV          equ     -2
  82. NOMEMORY        equ     -3
  83. READLOCKED      equ     -4
  84. WRITELOCKED     equ     -5
  85. UNREGISTERED    equ     -6
  86. INUSE           equ     -7
  87. IOERROR         equ     -8
  88. NOMOREBLOCKS    equ     -9
  89. CHANGED         equ     -10
  90. UNIMPLEMENTED   equ     -11
  91.  
  92. ;types of locks
  93. LOCK_RELEASE    equ     0
  94. LOCK_READ       equ     1       ;shared lock
  95. LOCK_WRITE      equ     2       ;exclusive lock
  96. LOCK_FLAGS      equ     3       ;lock bits used
  97.  
  98.  
  99. ;types of open
  100. OPEN_READ       equ     1       ;MODE_OLDFILE + LOCK_READ
  101. OPEN_WRITE      equ     2       ;MODE_NEWFILE + LOCK_WRITE
  102. OPEN_MODIFY     equ     3       ;MODE_OLDFILE + LOCK_WRITE
  103. OPEN_FLAGS      equ     3       ;the open mode bits used
  104.  
  105.  
  106. ;file states
  107. STATE_READLOCKED        equ     1
  108. STATE_WRITELOCKED       equ     2
  109. STATE_OPENEDR           equ     3
  110. STATE_OPENEDW           equ     4
  111.  
  112.  
  113. ;access codes
  114. ACC_OREAD       equ     1
  115. ACC_OWRITE      equ     2
  116. ACC_GREAD       equ     16
  117. ACC_GWRITE      equ     32
  118. ACC_AREAD       equ     256
  119. ACC_AWRITE      equ     512
  120.  
  121. ACC_DEFINED     equ     819
  122. ACC_DEFAULT     equ     51
  123.  
  124.  
  125. ;types of notify supported
  126. INFORM          equ     0
  127. NOINFORM        equ     1
  128. EXINFORM        equ     2
  129.  
  130. ;returned by the filter proc to getpub
  131. ACCEPT          equ     0
  132. NOACCEPT        equ     1
  133.  
  134. ;seek modes
  135. SEEK_BEGINNING  equ    -1
  136. SEEK_CURRENT    equ     0
  137. SEEK_END        equ     1
  138.  
  139. ;hotlink message class - to avoid IDCMP collision
  140. HLCLASS equ     3
  141.  
  142. ;hotlinks IFF definitions
  143. HLID    equ     'HLID'
  144. CSET    equ     'CSET'
  145. DTAG    equ     'DTAG'
  146. DTXT    equ     'DTXT'
  147.  IFND ILBM
  148. ILBM    equ     'ILBM'
  149.  ENDC ;ILBM
  150.  
  151. ;IFF chunk XBMI picture type values
  152. ILBM_PAL        equ     0
  153. ILBM_GREY       equ     1
  154. ILBM_RGB        equ     2
  155. ILBM_RGBA       equ     3
  156. ILBM_CMYK       equ     4
  157. ILBM_CMYKA      equ     5
  158. ILBM_BW         equ     6
  159.  
  160. ;commands imbedded in the TEXT & TAG chunks of a HotLink TEXT file
  161. TEXT_TAB        equ     1
  162. TEXT_NEWLINE    equ     2
  163. TEXT_EOC        equ     3
  164. TEXT_EOP        equ     4
  165. TEXT_BCCB       equ     5
  166. TEXT_ECCB       equ     6
  167. TEXT_BCPB       equ     7
  168. TEXT_ECPB       equ     8
  169. TEXT_PAGENUM    equ     9
  170. TEXT_MARK       equ     10
  171. TEXT_BRANGE     equ     11
  172. TEXT_ERANGE     equ     12
  173. TEXT_FOOTNOTE   equ     13
  174. TEXT_RULER      equ     14
  175. TEXT_BAKERN     equ     15
  176. TEXT_EAKERN     equ     16
  177. TEXT_BAHYPHEN   equ     17 
  178. TEXT_EAHYPHEN   equ     18
  179. TEXT_TRACKRANGE equ     19
  180. TEXT_DROPCAP    equ     20
  181.                 
  182. TEXT_TAG        equ     30
  183. TEXT_FONT       equ     31
  184. TEXT_ATTRB      equ     32
  185. TEXT_POINT      equ     33
  186. TEXT_JUSTIFY    equ     34
  187. TEXT_PARAGRAPH  equ     35
  188. TEXT_INDENT     equ     36
  189. TEXT_LEADING    equ     37
  190. TEXT_PARALEAD   equ     38
  191. TEXT_TRACKING   equ     39
  192. TEXT_BASELINE   equ     40
  193.  
  194. TEXT_MKERN      equ     50
  195. TEXT_AKERN      equ     51
  196. TEXT_MHYPHEN    equ     52
  197. TEXT_AHYPHEN    equ     53
  198.  
  199. ;flags for commands imbedded in the TEXT & TAG chunks of a HotLink TEXT file
  200. TFLAG_NODISP        equ    %00000
  201. TFLAG_NOEDITDISP    equ    %00001
  202. TFLAG_EDITDISP        equ    %00010
  203. TFLAG_UNUSED0        equ    %00011
  204.  
  205. TFLAG_KEEPLAST        equ    %00000
  206. TFLAG_KEEPNONE        equ    %00100
  207. TFLAG_KEEPALL        equ    %01000
  208. TFLAG_UNUSED1        equ    %01100
  209.  
  210. TFLAG_NOTWHITESPACE    equ    %00000
  211. TFLAG_WHITESPACE    equ    %10000
  212.  
  213. TEXT_FLAGS_TAB        equ    TFLAG_KEEPNONE+TFLAG_WHITESPACE
  214. TEXT_FLAGS_NEWLINE    equ    TFLAG_KEEPNONE+TFLAG_WHITESPACE
  215. TEXT_FLAGS_EOC        equ    TFLAG_KEEPNONE+TFLAG_NOTWHITESPACE
  216. TEXT_FLAGS_EOP        equ    TFLAG_KEEPNONE+TFLAG_NOTWHITESPACE
  217. TEXT_FLAGS_BCCB       equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  218. TEXT_FLAGS_ECCB       equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  219. TEXT_FLAGS_BCPB       equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  220. TEXT_FLAGS_ECPB       equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  221. TEXT_FLAGS_PAGENUM    equ    TFLAG_KEEPNONE+TFLAG_WHITESPACE
  222. TEXT_FLAGS_MARK       equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  223. TEXT_FLAGS_BRANGE     equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  224. TEXT_FLAGS_ERANGE     equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  225. TEXT_FLAGS_FOOTNOTE   equ    TFLAG_KEEPNONE+TFLAG_WHITESPACE
  226. TEXT_FLAGS_RULER      equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  227. TEXT_FLAGS_BAKERN     equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  228. TEXT_FLAGS_EAKERN     equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  229. TEXT_FLAGS_BAHYPHEN   equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  230. TEXT_FLAGS_EAHYPHEN   equ    TFLAG_KEEPALL+TFLAG_NOTWHITESPACE
  231. TEXT_FLAGS_TRACKRANGE equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  232. TEXT_FLAGS_DROPCAP    equ    TFLAG_KEEPNONE+TFLAG_WHITESPACE
  233.  
  234. TEXT_FLAGS_TAG        equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  235. TEXT_FLAGS_FONT       equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  236. TEXT_FLAGS_ATTRB      equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  237. TEXT_FLAGS_POINT      equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  238. TEXT_FLAGS_JUSTIFY    equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  239. TEXT_FLAGS_PARAGRAPH  equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  240. TEXT_FLAGS_INDENT     equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  241. TEXT_FLAGS_LEADING    equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  242. TEXT_FLAGS_PARALEAD   equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  243. TEXT_FLAGS_TRACKING   equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  244. TEXT_FLAGS_BASELINE   equ    TFLAG_KEEPLAST+TFLAG_NOTWHITESPACE
  245.  
  246. TEXT_FLAGS_MKERN      equ    TFLAG_KEEPNONE+TFLAG_NOTWHITESPACE
  247. TEXT_FLAGS_AKERN      equ    TFLAG_KEEPNONE+TFLAG_NOTWHITESPACE
  248. TEXT_FLAGS_MHYPHEN    equ    TFLAG_KEEPNONE+TFLAG_NOTWHITESPACE
  249. TEXT_FLAGS_AHYPHEN    equ    TFLAG_KEEPNONE+TFLAG_NOTWHITESPACE
  250.  
  251.  
  252. ;atrributes for the TEXT_ATTRB command
  253. ATTRB_NORMAL    equ     'N'
  254. ATTRB_BOLD      equ     'B'
  255. ATTRB_LIGHT     equ     'L'
  256. ATTRB_ITALIC    equ     'I'
  257. ATTRB_SHADOW    equ     'S'
  258. ATTRB_OUTLINE   equ     'O'
  259. ATTRB_UNDERLINE equ     'U'
  260. ATTRB_WEIGHT    equ     'W'
  261.  
  262. ;justify modes for the TEXT_JUSTIFY command
  263. JUSTIFY_LEFT    equ     1
  264. JUSTIFY_CENTER  equ     2
  265. JUSTIFY_RIGHT   equ     3
  266. JUSTIFY_CHAR    equ     4
  267. JUSTIFY_WORD    equ     5
  268. JUSTIFY_AUTO    equ     6
  269.  
  270. ;Tag types
  271. TAG_TEXT        equ     0
  272. TAG_FILL        equ     1
  273. TAG_LINE        equ     2
  274. TAG_COLOR       equ     3
  275. TAG_WITHTEXT    equ     4
  276. TAG_TEXTMACRO   equ     5
  277.  
  278.  
  279.  STRUCTURE HLMsg,MN_SIZE        ;starts with a message structure
  280.         ULONG   hm_HLClass
  281.         UWORD   hm_ID
  282.         ULONG   hm_PB
  283.         ULONG   hm_Flags
  284.         ULONG   hm_Return
  285.         ULONG   hm_UserData1
  286.         ULONG   hm_UserData2
  287.         ULONG   hm_UserData3
  288.         ULONG   hm_UserData4
  289.         ULONG   hm_UserData5
  290.         ULONG   hm_UserData6
  291.         ULONG   hm_UserData7
  292.         ULONG   hm_UserData8
  293.         ULONG   hm_UserData9
  294.         ULONG   hm_UserData10
  295.         ULONG   hm_UserData11
  296.         ULONG   hm_UserData12
  297.         ULONG   hm_UserData13
  298.         ULONG   hm_UserData14
  299.         ULONG   hm_UserData15
  300.         LABEL   HLMsg_SizeOf
  301.         
  302.  STRUCTURE PubRecord,0
  303.         STRUCT  pb_ID,8
  304.         ULONG   pb_Type
  305.         ULONG   pb_Version
  306.         ULONG   pb_CDate
  307.         ULONG   pb_CTime
  308.         ULONG   pb_MDate
  309.         ULONG   pb_MTime
  310.         ULONG   pb_Access
  311.         ULONG   pb_Creator
  312.         STRUCT  pb_Name,32
  313.         STRUCT  pb_Desc,256
  314.         STRUCT  pb_Owner,32
  315.         STRUCT  pb_Group,32
  316.         LABEL   pb_SizeOf
  317.  
  318.  STRUCTURE PubBlock,pb_SizeOf   ;starts with a PubRecord
  319. ;this is PRIVATE data and should not be modified by an application
  320.         ULONG   pr_State
  321.         ULONG   pr_OFlag
  322.         ULONG   pr_LFlag
  323.         ULONG   pr_FOffset
  324.         ULONG   pr_MP
  325.         ULONG   pr_UserMP
  326.         ULONG   pr_Msg
  327.         ULONG   pr_Screen
  328.         ULONG   pr_Curpos
  329.         ULONG   pr_Buffer
  330.         ULONG   pr_Remain
  331.         LABEL   pr_SizeOf
  332.         
  333.  ENDC  ;HOTLINKS_HOTLINKS_I
  334.