home *** CD-ROM | disk | FTP | other *** search
/ Amiga Times / AmigaTimes.iso / programme / GoldED / developer / registry / include / registry.h < prev   
Encoding:
C/C++ Source or Header  |  1998-10-06  |  30.5 KB  |  498 lines

  1. #ifndef GOLDED_REGISTRY_H
  2. #define GOLDED_REGISTRY_H
  3. /*
  4. **      $Filename: fd/registry.h
  5. **      $Release: 1.0
  6. **
  7. **      GoldED registry definitions.
  8. **
  9. **      (C) Copyright 1996 Dietmar Eilert
  10. **          All Rights Reserved
  11. **
  12. **      object ID range: 0 - 2047 (11 bit)
  13. */
  14.  
  15. /// "defines"
  16.  
  17. // object types (bit 0-2)
  18.  
  19. #define OBJECT_TYPE_NUMBER     1                     // stores numbers
  20. #define OBJECT_TYPE_STRING     2                     // stores strings
  21. #define OBJECT_TYPE_LIST       3                     // stores object lists
  22. #define OBJECT_TYPE_DATA       4                     // stores memory blocks
  23.  
  24. // additional type flag bits (bit 3-4, bit 5-15 are not saved)
  25.  
  26. #define OBJECT_TYPE_NAMED      8                     // indicates named object
  27.  
  28. ///
  29. /// "global"
  30.  
  31. #define REGISTRY_GLOBAL 0
  32.  
  33. #define OBJECT_GLOBAL_BASE             (REGISTRY_GLOBAL + 0 )   // global data (LIST)
  34.  
  35. #define OBJECT_GLOBAL_INSERTMODE       (REGISTRY_GLOBAL + 1 )   // insert mode (BOOL)
  36. #define OBJECT_GLOBAL_WILDCARDS        (REGISTRY_GLOBAL + 2 )   // wildcard search ? (BOOL)
  37. #define OBJECT_GLOBAL_CONFIRMREPLACE   (REGISTRY_GLOBAL + 3 )   // confirm replaces ? (BOOL)
  38. #define OBJECT_GLOBAL_ONLYWORDS        (REGISTRY_GLOBAL + 4 )   // find/replace only words ? (BOOL)
  39. #define OBJECT_GLOBAL_CASESENSITIVE    (REGISTRY_GLOBAL + 5 )   // case sensitive search ?
  40. #define OBJECT_GLOBAL_UNFOLDSCAN       (REGISTRY_GLOBAL + 6 )   // scan folds ? (BOOL)
  41. #define OBJECT_GLOBAL_SORTSCAN         (REGISTRY_GLOBAL + 7 )   // sort scanner results ? (BOOL)
  42. #define OBJECT_GLOBAL_FINDTEXT         (REGISTRY_GLOBAL + 8 )   // find text (STRING)
  43. #define OBJECT_GLOBAL_RPLCTEXT         (REGISTRY_GLOBAL + 9 )   // replace text (STRING)
  44. #define OBJECT_GLOBAL_INSRTEXT         (REGISTRY_GLOBAL + 10)   // insert text (STRING)
  45. #define OBJECT_GLOBAL_PATTERN          (REGISTRY_GLOBAL + 11)   // file requester pattern (STRING)
  46. #define OBJECT_GLOBAL_ASCIITEXT        (REGISTRY_GLOBAL + 12)   // ASCII code (STRING)
  47. #define OBJECT_GLOBAL_COMMAND          (REGISTRY_GLOBAL + 13)   // command text (STRING)
  48. #define OBJECT_GLOBAL_INDENT           (REGISTRY_GLOBAL + 14)   // indention (LONG)
  49. #define OBJECT_GLOBAL_ASLLEFT          (REGISTRY_GLOBAL + 15)   // asl requester position (LONG)
  50. #define OBJECT_GLOBAL_ASLTOP           (REGISTRY_GLOBAL + 16)   // asl requester position (LONG)
  51. #define OBJECT_GLOBAL_ASLWIDTH         (REGISTRY_GLOBAL + 17)   // asl requester size (LONG)
  52. #define OBJECT_GLOBAL_ASLHEIGHT        (REGISTRY_GLOBAL + 18)   // asl requester size (LONG)
  53. #define OBJECT_GLOBAL_MACROFILE        (REGISTRY_GLOBAL + 19)   // last macro file (STRING)
  54. #define OBJECT_GLOBAL_SEQUENCEFILE     (REGISTRY_GLOBAL + 20)   // last sequence file (STRING)
  55. #define OBJECT_GLOBAL_PRESETFILE       (REGISTRY_GLOBAL + 21)   // last sequence file (STRING)
  56. #define OBJECT_GLOBAL_REMAPFILE        (REGISTRY_GLOBAL + 22)   // remap template file (STRING)
  57. #define OBJECT_GLOBAL_PROFILE          (REGISTRY_GLOBAL + 23)   // serial code checksum (LONG)
  58. #define OBJECT_GLOBAL_GOTOLINE         (REGISTRY_GLOBAL + 28)   // goto line (STRING)
  59. #define OBJECT_GLOBAL_UNFOLDGOTO       (REGISTRY_GLOBAL + 29)   // undfold folds ? (BOOL)
  60. #define OBJECT_GLOBAL_HISTORY          (REGISTRY_GLOBAL + 30)   // find/replace history (LIST)
  61. #define OBJECT_GLOBAL_MACRO            (REGISTRY_GLOBAL + 31)   // recorded sequence (LIST)
  62. #define OBJECT_GLOBAL_SCANNERS         (REGISTRY_GLOBAL + 32)   // active scanner (NAME), scanner list (LIST)
  63.  
  64. #define OBJECT_GLOBAL_FILTERS          (REGISTRY_GLOBAL + 33)   // external import/export filters (LIST) - not yet supported
  65. #define OBJECT_GLOBAL_IMPORT           (REGISTRY_GLOBAL + 34)   // external import filters (LIST) - not yet supported
  66. #define OBJECT_GLOBAL_EXPORT           (REGISTRY_GLOBAL + 35)   // external export filters (LIST) - not yet supported
  67.  
  68. #define OBJECT_GLOBAL_VARS             (REGISTRY_GLOBAL + 36)   // variables page (LIST)
  69. #define OBJECT_GLOBAL_VARIABLES        (REGISTRY_GLOBAL + 37)   // variables (LIST)
  70. #define OBJECT_GLOBAL_VARIABLE         (REGISTRY_GLOBAL + 38)   // variable name (NAME), variable data (STRING)
  71.  
  72. #define OBJECT_GLOBAL_REGISTRY         (REGISTRY_GLOBAL + 39)   // modes page (LIST): parent of MODES & POOL
  73. #define OBJECT_GLOBAL_DETECTTYPE       (REGISTRY_GLOBAL + 40)   // detect file type ? (BOOL) - not yet supported
  74. #define OBJECT_GLOBAL_MODES            (REGISTRY_GLOBAL + 41)   // modes (LIST)
  75. #define OBJECT_GLOBAL_MODE             (REGISTRY_GLOBAL + 42)   // mode suffix (NAME), properties (LIST)
  76. #define OBJECT_GLOBAL_PROPERTY         (REGISTRY_GLOBAL + 43)   // preset file (NAME, NUMBER: preset type)
  77. #define OBJECT_GLOBAL_POOL             (REGISTRY_GLOBAL + 44)   // list of presets (LIST)
  78.  
  79. #define OBJECT_GLOBAL_GLOBALS          (REGISTRY_GLOBAL + 45)   // globals page (LIST)
  80. #define OBJECT_GLOBAL_RESIDENT         (REGISTRY_GLOBAL + 46)   // hotkey activation ? (BOOL)
  81. #define OBJECT_GLOBAL_AUTOSESSION      (REGISTRY_GLOBAL + 47)   // autoload last session ? (BOOL)
  82. #define OBJECT_GLOBAL_REXXDEBUG        (REGISTRY_GLOBAL + 48)   // debug infos ? (BOOL)
  83. #define OBJECT_GLOBAL_NOCACHE          (REGISTRY_GLOBAL + 49)   // disable cache while creating font ? (BOOL)
  84. #define OBJECT_GLOBAL_BACKUPTIME       (REGISTRY_GLOBAL + 50)   // backup time [seconds] (LONG)
  85. #define OBJECT_GLOBAL_UNDOLEVELS       (REGISTRY_GLOBAL + 52)   // undo levels (LONG)
  86. #define OBJECT_GLOBAL_UNDOBUFFER       (REGISTRY_GLOBAL + 53)   // undo buffer size (LONG)
  87. #define OBJECT_GLOBAL_UNDOWARNINGS     (REGISTRY_GLOBAL + 54)   // undo warnings enabled ? (BOOL)
  88. #define OBJECT_GLOBAL_UNDOMODE         (REGISTRY_GLOBAL + 55)   // undo mode (LONG)
  89. #define OBJECT_GLOBAL_TASKPRI          (REGISTRY_GLOBAL + 56)   // task pri (LONG)
  90. #define OBJECT_GLOBAL_NUMPAD           (REGISTRY_GLOBAL + 57)   // recognize numpad ? (BOOL)
  91. #define OBJECT_GLOBAL_QUITACTION       (REGISTRY_GLOBAL + 58)   // action to be taken if last window is closed (ULONG) - not yet supported
  92. #define OBJECT_GLOBAL_SIMPLEREFRESH    (REGISTRY_GLOBAL + 59)   // simple refresh ? (BOOL) - not yet supported
  93. #define OBJECT_GLOBAL_MAXLEN           (REGISTRY_GLOBAL + 60)   // max chars in line (LONG) - not yet supported
  94. #define OBJECT_GLOBAL_HUNT             (REGISTRY_GLOBAL + 61)   // file to be searched (STRING)
  95. #define OBJECT_GLOBAL_PASSWORD         (REGISTRY_GLOBAL + 63)   // password (STRING)
  96. #define OBJECT_GLOBAL_TABFILE          (REGISTRY_GLOBAL + 64)   // file tab size (LONG)
  97. #define OBJECT_GLOBAL_DUPLICATES       (REGISTRY_GLOBAL + 65)   // allow multiple loading of a file ? (BOOL)
  98.  
  99. #define OBJECT_GLOBAL_GUI              (REGISTRY_GLOBAL + 66)   // globals page (LIST)
  100. #define OBJECT_GLOBAL_SIMPLEMESSAGES   (REGISTRY_GLOBAL + 67)   // simple messages ? (BOOL)
  101. #define OBJECT_GLOBAL_ERRORBEEP        (REGISTRY_GLOBAL + 68)   // error beep volume (LONG)
  102. #define OBJECT_GLOBAL_USEASL           (REGISTRY_GLOBAL + 69)   // use ASL requester ? (BOOL)
  103. #define OBJECT_GLOBAL_CONFIRMERRORS    (REGISTRY_GLOBAL + 70)   // confirm error messages ? (BOOL)
  104. #define OBJECT_GLOBAL_CONFIRMBAK       (REGISTRY_GLOBAL + 71)   // confirm autobackup event ? (BOOL)
  105. #define OBJECT_GLOBAL_DATESTYLE        (REGISTRY_GLOBAL + 72)   // date style (STRING)
  106. #define OBJECT_GLOBAL_WINDOWTITLE      (REGISTRY_GLOBAL + 73)   // window title (STRING)
  107.  
  108. ///
  109. /// "misc"
  110.  
  111. #define REGISTRY_MISC 100
  112.  
  113. #define OBJECT_MISC_BASE               (REGISTRY_MISC + 0 )     // preset name (NAME), preset data (LIST)
  114. #define OBJECT_MISC_BACKUPDIR          (REGISTRY_MISC + 1 )     // backup path (STRING)
  115. #define OBJECT_MISC_FOLDA              (REGISTRY_MISC + 2 )     // fold start (STRING)
  116. #define OBJECT_MISC_FOLDB              (REGISTRY_MISC + 3 )     // fold end (STRING)
  117. #define OBJECT_MISC_XPKPACKERNAME      (REGISTRY_MISC + 4 )     // selected xpk packer (STRING)
  118. #define OBJECT_MISC_EFFICIENCY         (REGISTRY_MISC + 6 )     // xpk efficiency (LONG)
  119. #define OBJECT_MISC_ENCRYPTION         (REGISTRY_MISC + 7 )     // encryption supported by xpk packer ? (BOOL)
  120. #define OBJECT_MISC_TOOL               (REGISTRY_MISC + 8 )     // icon's default tool (STRING)
  121. #define OBJECT_MISC_CREATEDEBUG        (REGISTRY_MISC + 9 )     // save breakpoints ? (BOOL)
  122. #define OBJECT_MISC_OVERWRITE          (REGISTRY_MISC + 10)     // overwrite existing files ? (BOOL)
  123. #define OBJECT_MISC_SAVETABS           (REGISTRY_MISC + 12)     // convert spaces to tabs while saving ? (BOOL)
  124. #define OBJECT_MISC_CREATEINFO         (REGISTRY_MISC + 13)     // create *.info file ? (BOOL)
  125. #define OBJECT_MISC_READ               (REGISTRY_MISC + 14)     // file protection (BOOL)
  126. #define OBJECT_MISC_WRITE              (REGISTRY_MISC + 15)     // file protection (BOOL)
  127. #define OBJECT_MISC_DELETE             (REGISTRY_MISC + 16)     // file protection (BOOL)
  128. #define OBJECT_MISC_SCRIPT             (REGISTRY_MISC + 17)     // file protection (BOOL)
  129. #define OBJECT_MISC_CREATEBAK          (REGISTRY_MISC + 18)     // create *.bak files ? (BOOL)
  130. #define OBJECT_MISC_AUTOFOLD           (REGISTRY_MISC + 19)     // autofold after loading ? (BOOL)
  131. #define OBJECT_MISC_INFOFILE           (REGISTRY_MISC + 20)     // default .info-file (STRING)
  132. #define OBJECT_MISC_SMARTERASE         (REGISTRY_MISC + 21)     // control size of backup directory ? (BOOL) - not yet supported
  133. #define OBJECT_MISC_COPIES             (REGISTRY_MISC + 22)     // number backups (maximum number) ? (LONG) - not yet supported
  134.  
  135. ///
  136. /// "key"
  137.  
  138. #define REGISTRY_KEY 200
  139.  
  140. #define OBJECT_KEY_BASE                (REGISTRY_KEY + 0 )      // preset name (NAME), preset data (LIST)
  141. #define OBJECT_KEY_KEYS                (REGISTRY_KEY + 1 )      // keys (LIST)
  142. #define OBJECT_KEY_KEY                 (REGISTRY_KEY + 2 )      // key name (NAME), event data (LIST)
  143.  
  144. ///
  145. /// "reference"
  146.  
  147. #define REGISTRY_REFS 250
  148.  
  149. #define OBJECT_REFS_BASE               (REGISTRY_REFS + 0 )     // preset name (NAME), preset data (LIST)
  150. #define OBJECT_REFS_CACHEXREF          (REGISTRY_REFS + 1 )     // use a cache ? (BOOL)
  151. #define OBJECT_REFS_DATABASES          (REGISTRY_REFS + 2 )     // list of databases (LIST)
  152. #define OBJECT_REFS_FILES              (REGISTRY_REFS + 3 )     // hashfile (NAME), source files (LIST)
  153.  
  154. ///
  155. /// "display"
  156.  
  157. #define REGISTRY_SCREEN 300
  158.  
  159. #define OBJECT_SCREEN_BASE             (REGISTRY_SCREEN + 0 )   // preset name (NAME), preset data (LIST)
  160. #define OBJECT_SCREEN_SHANGHAI         (REGISTRY_SCREEN + 1 )   // shanghai windows ? (BOOL)
  161. #define OBJECT_SCREEN_SLIDERMODE       (REGISTRY_SCREEN + 2 )   // slider look (LONG)
  162. #define OBJECT_SCREEN_SHOWICONS        (REGISTRY_SCREEN + 3 )   // use icons within requesters ? (BOOL)
  163. #define OBJECT_SCREEN_TYPE             (REGISTRY_SCREEN + 4 )   // screen type (LONG)
  164. #define OBJECT_SCREEN_SCREENNAME       (REGISTRY_SCREEN + 5 )   // screen name (STRING)
  165. #define OBJECT_SCREEN_TXTFONT          (REGISTRY_SCREEN + 6 )   // text font    (NAME), font size (LONG)
  166. #define OBJECT_SCREEN_WINFONT          (REGISTRY_SCREEN + 7 )   // window font  (NAME), font size (LONG)
  167. #define OBJECT_SCREEN_SCRFONT          (REGISTRY_SCREEN + 8 )   // screen font  (NAME), font size (LONG)
  168. #define OBJECT_SCREEN_PRVFONT          (REGISTRY_SCREEN + 9 )   // preview font (NAME), font size (LONG)
  169. #define OBJECT_SCREEN_CHUNKYPIXEL      (REGISTRY_SCREEN + 10)   // chunky pixel mode ? (BOOL)
  170. #define OBJECT_SCREEN_SLIDERRIGHT      (REGISTRY_SCREEN + 11)   // slider size (LONG)
  171. #define OBJECT_SCREEN_SLIDERBOTTOM     (REGISTRY_SCREEN + 12)   // slider size (LONG)
  172. #define OBJECT_SCREEN_BORDERBLANK      (REGISTRY_SCREEN + 13)   // blank border ? (BOOL)
  173. #define OBJECT_SCREEN_FULLSCREEN       (REGISTRY_SCREEN + 14)   // assume visible size = screen size ? (BOOL)
  174. #define OBJECT_SCREEN_SPACING          (REGISTRY_SCREEN + 15)   // font spacing (LONG)
  175. #define OBJECT_SCREEN_BOTTOMSLIDER     (REGISTRY_SCREEN + 16)   // show bottom scroller ? (BOOL)
  176. #define OBJECT_SCREEN_CLOCK            (REGISTRY_SCREEN + 17)   // clock ? (BOOL)
  177. #define OBJECT_SCREEN_DATEFORMAT       (REGISTRY_SCREEN + 18)   // date format (STRING)
  178. #define OBJECT_SCREEN_SCREEN           (REGISTRY_SCREEN + 19)   // screen attributes (LIST)
  179. #define OBJECT_SCREEN_AUTOSCROLL       (REGISTRY_SCREEN + 20)   // attribute: autoscroll screen ? (BOOL)
  180. #define OBJECT_SCREEN_DEPTH            (REGISTRY_SCREEN + 21)   // attribute: screen depth        (BOOL)
  181. #define OBJECT_SCREEN_AUTOSCROLLX      (REGISTRY_SCREEN + 22)   // attribute: virtual screen size (LONG)
  182. #define OBJECT_SCREEN_AUTOSCROLLY      (REGISTRY_SCREEN + 23)   // attribute: virtual screen size (LONG)
  183. #define OBJECT_SCREEN_MODEID           (REGISTRY_SCREEN + 24)   // attribute: screen mode         (LONG)
  184. #define OBJECT_SCREEN_OVERSCANTYPE     (REGISTRY_SCREEN + 25)   // attribute: overscan type       (LONG)
  185. #define OBJECT_SCREEN_COLORS           (REGISTRY_SCREEN + 26)   // color list (LIST)
  186. #define OBJECT_SCREEN_COLOR            (REGISTRY_SCREEN + 27)   // color (LONG): r (bit 0-7), g (bit 8-15), b (bit 16-23)
  187. #define OBJECT_SCREEN_PENS             (REGISTRY_SCREEN + 28)   // pen list (LIST)
  188. #define OBJECT_SCREEN_PEN_BRIGHTEDGES  (REGISTRY_SCREEN + 29)   // pen ID
  189. #define OBJECT_SCREEN_PEN_DARKEDGES    (REGISTRY_SCREEN + 30)   // pen ID
  190. #define OBJECT_SCREEN_PEN_WINDOWTITLE  (REGISTRY_SCREEN + 31)   // pen ID
  191. #define OBJECT_SCREEN_PEN_WINDOWTEXT   (REGISTRY_SCREEN + 32)   // pen ID
  192. #define OBJECT_SCREEN_PEN_MENUFILL     (REGISTRY_SCREEN + 33)   // pen ID
  193. #define OBJECT_SCREEN_PEN_MENUTEXT     (REGISTRY_SCREEN + 34)   // pen ID
  194. #define OBJECT_SCREEN_PEN_MENUBORDER   (REGISTRY_SCREEN + 35)   // pen ID
  195. #define OBJECT_SCREEN_PEN_TRIMPEN      (REGISTRY_SCREEN + 36)   // pen ID
  196. #define OBJECT_SCREEN_PEN_MARKER       (REGISTRY_SCREEN + 37)   // pen ID
  197. #define OBJECT_SCREEN_PEN_FOLDS        (REGISTRY_SCREEN + 38)   // pen ID
  198. #define OBJECT_SCREEN_PEN_GADGETFILL   (REGISTRY_SCREEN + 39)   // pen ID
  199. #define OBJECT_SCREEN_PEN_STATUSBAR    (REGISTRY_SCREEN + 40)   // pen ID
  200. #define OBJECT_SCREEN_PEN_STATUSTEXT   (REGISTRY_SCREEN + 41)   // pen ID
  201. #define OBJECT_SCREEN_PEN_USERGADGETS  (REGISTRY_SCREEN + 42)   // pen ID
  202. #define OBJECT_SCREEN_PEN_BACKGROUND   (REGISTRY_SCREEN + 43)   // pen ID
  203. #define OBJECT_SCREEN_PEN_MESSAGES     (REGISTRY_SCREEN + 44)   // pen ID
  204. #define OBJECT_SCREEN_PEN_MARKEDTEXT   (REGISTRY_SCREEN + 45)   // pen ID
  205. #define OBJECT_SCREEN_PEN_CURSOR       (REGISTRY_SCREEN + 46)   // pen ID
  206. #define OBJECT_SCREEN_PEN_CURSORBLOCK  (REGISTRY_SCREEN + 47)   // pen ID
  207. #define OBJECT_SCREEN_PEN_CURSORTXT    (REGISTRY_SCREEN + 48)   // pen ID
  208. #define OBJECT_SCREEN_PEN_CURSORTXTBLK (REGISTRY_SCREEN + 49)   // pen ID
  209. #define OBJECT_SCREEN_PEN_TOOLBAR      (REGISTRY_SCREEN + 50)   // pen ID
  210. #define OBJECT_SCREEN_SHOWSTATUS       (REGISTRY_SCREEN + 51)   // show status bar ? (BOOL) - not yet supported
  211. #define OBJECT_SCREEN_TITLE            (REGISTRY_SCREEN + 52)   // screen title (STRING) - not yet supported
  212. #define OBJECT_SCREEN_STATUS           (REGISTRY_SCREEN + 53)   // status line  (STRING) - not yet supported
  213. #define OBJECT_SCREEN_UNUSED           (REGISTRY_SCREEN + 54)   // mark default gadget ? (BOOL) - not yet supported
  214. #define OBJECT_SCREEN_ARRANGETOP       (REGISTRY_SCREEN + 55)   // arrange: top border (LONG)
  215. #define OBJECT_SCREEN_ARRANGEBOTTOM    (REGISTRY_SCREEN + 56)   // arrange: bottom border (LONG)
  216. #define OBJECT_SCREEN_ARRANGELEFT      (REGISTRY_SCREEN + 57)   // arrange: left border   (LONG)
  217. #define OBJECT_SCREEN_ARRANGERIGHT     (REGISTRY_SCREEN + 58)   // arrange: right border  (LONG)
  218. #define OBJECT_SCREEN_ARRANGEWEIGHT    (REGISTRY_SCREEN + 59)   // arrange: weight (LONG)
  219. #define OBJECT_SCREEN_AUTOARRANGE      (REGISTRY_SCREEN + 60)   // AutoArrange windows ? (BOOL)
  220. #define OBJECT_SCREEN_CENTERWIN        (REGISTRY_SCREEN + 61)   // center windows ? (BOOL)
  221. #define OBJECT_SCREEN_WINX             (REGISTRY_SCREEN + 62)   // window x position
  222. #define OBJECT_SCREEN_WINY             (REGISTRY_SCREEN + 63)   // window y position
  223. #define OBJECT_SCREEN_WINW             (REGISTRY_SCREEN + 64)   // window width
  224. #define OBJECT_SCREEN_WINH             (REGISTRY_SCREEN + 65)   // window height
  225.  
  226. ///
  227. /// "printer"
  228.  
  229. #define REGISTRY_PRINTER 400
  230.  
  231. #define OBJECT_PRINTER_BASE            (REGISTRY_PRINTER + 0 )  // preset name (NAME), preset data (LIST)
  232. #define OBJECT_PRINTER_PRTFEED         (REGISTRY_PRINTER + 1 )  // lpi (LONG)
  233. #define OBJECT_PRINTER_PRTRESET        (REGISTRY_PRINTER + 2 )  // send reset ? (BOOL)
  234. #define OBJECT_PRINTER_PRTITALICS      (REGISTRY_PRINTER + 3 )  // italics ? (BOOL)
  235. #define OBJECT_PRINTER_PRTBOLD         (REGISTRY_PRINTER + 4 )  // bold ? (BOOL)
  236. #define OBJECT_PRINTER_PRTDOUBLE       (REGISTRY_PRINTER + 5 )  // doublestrike ? (BOOL)
  237. #define OBJECT_PRINTER_PRTLQ           (REGISTRY_PRINTER + 6 )  // LQ ? (BOOL)
  238. #define OBJECT_PRINTER_PRTPROP         (REGISTRY_PRINTER + 7 )  // proportional ? (BOOL)
  239. #define OBJECT_PRINTER_PRTINIT         (REGISTRY_PRINTER + 8 )  // init string (STRING)
  240. #define OBJECT_PRINTER_PRTNUMBER       (REGISTRY_PRINTER + 9 )  // number lines ? (BOOL)
  241. #define OBJECT_PRINTER_PRTSPOOL        (REGISTRY_PRINTER + 10)  // asynchronous printing ? (BOOL)
  242. #define OBJECT_PRINTER_FORMFEED        (REGISTRY_PRINTER + 11)  // form feed after job ? (BOOL)
  243. #define OBJECT_PRINTER_PRTSPACING      (REGISTRY_PRINTER + 12)  // x spacing (LONG)
  244. #define OBJECT_PRINTER_LINES           (REGISTRY_PRINTER + 13)  // lines/page (LONG) - not yet supported
  245. #define OBJECT_PRINTER_HEADER          (REGISTRY_PRINTER + 14)  // header string (STRING) - not yet supported
  246. #define OBJECT_PRINTER_FOOTER          (REGISTRY_PRINTER + 15)  // footer string (STRING) - not yet supported
  247.  
  248. ///
  249. /// "hunter"
  250.  
  251. #define REGISTRY_HUNTER 450
  252.  
  253. #define OBJECT_HUNTER_BASE             (REGISTRY_HUNTER + 0)    // preset name (NAME), preset data (LIST)
  254. #define OBJECT_HUNTER_RECURSIVE        (REGISTRY_HUNTER + 1)    // scan sub-dirs ? (BOOL)
  255. #define OBJECT_HUNTER_SOURCES          (REGISTRY_HUNTER + 2)    // source files (LIST)
  256.  
  257. ///
  258. /// "tab"
  259.  
  260. #define REGISTRY_TAB 500
  261.  
  262. #define OBJECT_TAB_BASE                (REGISTRY_TAB + 0 )      // preset name (NAME), preset data (LIST)
  263. #define OBJECT_TAB_TABTYPE             (REGISTRY_TAB + 1 )      // tab mode (LONG)
  264. #define OBJECT_TAB_SOLIDTABS           (REGISTRY_TAB + 2 )      // solid tabs ? (BOOL)
  265. #define OBJECT_TAB_TABKEY              (REGISTRY_TAB + 3 )      // keyboard tab size (LONG)
  266. #define OBJECT_TAB_TABS                (REGISTRY_TAB + 5 )      // tabs (LIST)
  267. #define OBJECT_TAB_TRUETABS            (REGISTRY_TAB + 6 )      // use TRUE tabs ? (BOOL) - not yet supported
  268. #define OBJECT_TAB_SHIFTTABS           (REGISTRY_TAB + 7 )      // line/block shift uses tabs ? (BOOL) - not yet supported
  269.  
  270. ///
  271. /// "syntax"
  272.  
  273. #define REGISTRY_SYNTAX 550
  274.  
  275. #define OBJECT_SYNTAX_BASE             (REGISTRY_SYNTAX + 0 )   // preset name (NAME), preset data (LIST)
  276. #define OBJECT_SYNTAX_PARSER           (REGISTRY_SYNTAX + 2 )   // syntax parser (STRING), Comment (NAME)
  277. #define OBJECT_SYNTAX_PREPARSE         (REGISTRY_SYNTAX + 3 )   // preparse ? (BOOL)
  278. #define OBJECT_SYNTAX_ACTIVE           (REGISTRY_SYNTAX + 4 )   // active ? (BOOL)
  279. #define OBJECT_SYNTAX_PENS             (REGISTRY_SYNTAX + 5 )   // syntax levels (LIST)
  280. #define OBJECT_SYNTAX_PEN              (REGISTRY_SYNTAX + 6 )   // name (NAME), pen data (LONG): FG (bit 0-15), BG (bit 16-31)
  281.  
  282. ///
  283. /// "templates"
  284.  
  285. #define REGISTRY_TEMPLATE 600
  286.  
  287. #define OBJECT_TEMPLATE_BASE           (REGISTRY_TEMPLATE +  0) // preset name (NAME), preset data (LIST)
  288. #define OBJECT_TEMPLATE_ACTIVE         (REGISTRY_TEMPLATE +  1) // templates active ? (BOOL)
  289. #define OBJECT_TEMPLATE_TEMPLATES      (REGISTRY_TEMPLATE +  2) // templates (LIST)
  290.  
  291. ///
  292. /// "menu"
  293.  
  294. #define REGISTRY_MENU 650
  295.  
  296. #define OBJECT_MENU_BASE               (REGISTRY_MENU + 0 )     // preset name (NAME), preset data (LIST)
  297. #define OBJECT_MENU_BARLABEL           (REGISTRY_MENU + 2 )     // use barlabels ? (BOOL)
  298. #define OBJECT_MENU_CASESENSITIVE      (REGISTRY_MENU + 3 )     // ignore shortcut case ? (BOOL)
  299. #define OBJECT_MENU_GUIDE              (REGISTRY_MENU + 4 )     // guide file (STRING)
  300. #define OBJECT_MENU_MENUS              (REGISTRY_MENU + 5 )     // menu root (LIST)
  301. #define OBJECT_MENU_MENU               (REGISTRY_MENU + 6 )     // menu name (NAME), menu data (LIST)
  302. #define OBJECT_MENU_FILELIST           (REGISTRY_MENU + 7 )     // attach file list to menu ? (BOOL)
  303. #define OBJECT_MENU_ITEMS              (REGISTRY_MENU + 8 )     // items (LIST)
  304.  
  305. ///
  306. /// "event"
  307.  
  308. #define REGISTRY_EVENT 700
  309.  
  310. #define OBJECT_EVENT_EVENT             (REGISTRY_EVENT + 0 )    // item/subitem/... (NAME), event data (LIST)
  311. #define OBJECT_EVENT_VARIABLE          (REGISTRY_EVENT + 1 )    // attached internal variable (STRING)
  312. #define OBJECT_EVENT_ASYNC             (REGISTRY_EVENT + 2 )    // asynchronous DOS command execution ? (BOOL)
  313. #define OBJECT_EVENT_SHANGHAITIME      (REGISTRY_EVENT + 3 )    // shanghai time [sec] (LONG)
  314. #define OBJECT_EVENT_KEYCODE           (REGISTRY_EVENT + 4 )    // keycode (LONG); bit 0-7: ASCII, bit 8: RAWKEY flag, bit 9-12: qualifier
  315. #define OBJECT_EVENT_SHORTCUT          (REGISTRY_EVENT + 6 )    // shortcut (STRING)
  316. #define OBJECT_EVENT_OUTPUT            (REGISTRY_EVENT + 7 )    // output (STRING)
  317. #define OBJECT_EVENT_HYPERNODE         (REGISTRY_EVENT + 8 )    // guide node (STRING)
  318. #define OBJECT_EVENT_DIRECTORY         (REGISTRY_EVENT + 9 )    // default directory (STRING)
  319. #define OBJECT_EVENT_COMMANDS          (REGISTRY_EVENT + 10)    // command list (LIST)
  320. #define OBJECT_EVENT_COMMAND           (REGISTRY_EVENT + 11)    // command string (NAME), command type (LONG)
  321. #define OBJECT_EVENT_MORE              (REGISTRY_EVENT + 12)    // subevents (LIST)
  322.  
  323. ///
  324. /// "complete"
  325.  
  326. #define REGISTRY_COMPLETE 750
  327.  
  328. #define OBJECT_COMPLETE_BASE           (REGISTRY_COMPLETE + 0 ) // preset name (NAME), preset data (LIST)
  329. #define OBJECT_COMPLETE_AUTOCASE       (REGISTRY_COMPLETE + 1 ) // AutoCase ? (BOOL)
  330. #define OBJECT_COMPLETE_IGNORECOMMENT  (REGISTRY_COMPLETE + 2 ) // AutoCase disabled within comments ? (BOOL)
  331. #define OBJECT_COMPLETE_IGNORESTRING   (REGISTRY_COMPLETE + 3 ) // AutoCase disabled within strings  ? (BOOL)
  332. #define OBJECT_COMPLETE_WORDS          (REGISTRY_COMPLETE + 4 ) // known words (LIST)
  333.  
  334. ///
  335. /// "layout"
  336.  
  337. #define REGISTRY_LAYOUT 800
  338.  
  339. #define OBJECT_LAYOUT_BASE             (REGISTRY_LAYOUT + 0 )   // preset name (NAME), preset data (LIST)
  340. #define OBJECT_LAYOUT_FORMATLEFT       (REGISTRY_LAYOUT + 1 )   // left border (LONG)
  341. #define OBJECT_LAYOUT_FORMATRIGHT      (REGISTRY_LAYOUT + 2 )   // right border (LONG)
  342. #define OBJECT_LAYOUT_WORDWRAP         (REGISTRY_LAYOUT + 3 )   // wordwrap enabled ? (BOOL)
  343. #define OBJECT_LAYOUT_AUTOLEFT         (REGISTRY_LAYOUT + 4 )   // automatic left border ? (BOOL)
  344. #define OBJECT_LAYOUT_REFORMAT         (REGISTRY_LAYOUT + 5 )   // reformat during wordwrap ? (BOOL)
  345. #define OBJECT_LAYOUT_REFORMATHYPHEN   (REGISTRY_LAYOUT + 6 )   // reformat hyphen ? (BOOL)
  346. #define OBJECT_LAYOUT_SMARTINDENT      (REGISTRY_LAYOUT + 7 )   // smart formatting of parapgraph's first line ? (BOOL) - not yet supported
  347. #define OBJECT_LAYOUT_STYLE            (REGISTRY_LAYOUT + 8 )   // formatting style (ULONG) - not yet supported
  348.  
  349. ///
  350. /// "session"
  351.  
  352. #define REGISTRY_SESSION 850
  353.  
  354. #define OBJECT_SESSION_BASE            (REGISTRY_SESSION + 0 )  // preset name (NAME), preset data (LIST)
  355. #define OBJECT_SESSION_BUFFER          (REGISTRY_SESSION + 2 )  // file name (NAME), properties (LIST)
  356. #define OBJECT_SESSION_X               (REGISTRY_SESSION + 3 )  // x (LONG)
  357. #define OBJECT_SESSION_Y               (REGISTRY_SESSION + 4 )  // y (LONG)
  358. #define OBJECT_SESSION_W               (REGISTRY_SESSION + 5 )  // width  (LONG)
  359. #define OBJECT_SESSION_H               (REGISTRY_SESSION + 6 )  // height (LONG)
  360. #define OBJECT_SESSION_FROZEN          (REGISTRY_SESSION + 7 )  // frozen ? (BOOL)
  361. #define OBJECT_SESSION_COLUMN          (REGISTRY_SESSION + 8 )  // current column (LONG)
  362. #define OBJECT_SESSION_LINE            (REGISTRY_SESSION + 9 )  // current line (LONG)
  363.  
  364. ///
  365. /// "project"
  366.  
  367. #define REGISTRY_PROJECT 900
  368.  
  369. #define OBJECT_PROJECT_BASE            (REGISTRY_PROJECT + 0 )  // preset name (NAME), preset data (LIST)
  370. #define OBJECT_PROJECT_FILES           (REGISTRY_PROJECT + 1 )  // files (LIST)
  371.  
  372. ///
  373. /// "macro"
  374.  
  375. // Note: All objects may be part of a  macro object tree
  376.  
  377. #define REGISTRY_MACRO 950
  378.  
  379. #define OBJECT_MACRO_BASE              (REGISTRY_MACRO + 0 )    // preset name (NAME), preset data (LIST)
  380. #define OBJECT_MACRO_STRING            (REGISTRY_MACRO + 1 )    // recorded value     (STRING)
  381. #define OBJECT_MACRO_NUMBER            (REGISTRY_MACRO + 2 )    // recorded value     (NUMBER)
  382. #define OBJECT_MACRO_COMMAND           (REGISTRY_MACRO + 3 )    // recorded command   (LIST)
  383. #define OBJECT_MACRO_KEY               (REGISTRY_MACRO + 4 )    // recorded keycode   (NUMBER)
  384. #define OBJECT_MACRO_SELECTION         (REGISTRY_MACRO + 5 )    // recorded selection (STRING): text menu selection
  385. #define OBJECT_MACRO_OBJECT            (REGISTRY_MACRO + 6 )    // recorded selection (LIST)
  386.  
  387. ///
  388. /// "gui"
  389.  
  390. #define REGISTRY_GUI 1000
  391.  
  392. #define OBJECT_GUI_BASE                (REGISTRY_GUI + 0 )      // preset name (NAME), preset data (LIST)
  393. #define OBJECT_GUI_SCROLLBORDERX       (REGISTRY_GUI + 1 )      // x scroll border (LONG)
  394. #define OBJECT_GUI_SCROLLBORDERY       (REGISTRY_GUI + 2 )      // y scroll border (LONG)
  395. #define OBJECT_GUI_WHITESPACE          (REGISTRY_GUI + 3 )      // white space definition (STRING)
  396. #define OBJECT_GUI_OUTPUT              (REGISTRY_GUI + 5 )      // default output (STRING)
  397. #define OBJECT_GUI_EOLWRAP             (REGISTRY_GUI + 6 )      // end-of-line wrap ? (BOOL)
  398. #define OBJECT_GUI_FASTSCROLL          (REGISTRY_GUI + 9 )      // FastScroll ? (BOOL)
  399. #define OBJECT_GUI_EXCLUDECURSOR       (REGISTRY_GUI + 10)      // exclude cursor while marking ? (BOOL)
  400. #define OBJECT_GUI_PARENTHESIS         (REGISTRY_GUI + 11)      // online parenthesis checks ? (BOOL)
  401. #define OBJECT_GUI_DRAGANDDROP         (REGISTRY_GUI + 12)      // drag and drop support ? (BOOL) - not yet supported
  402. #define OBJECT_GUI_CURSORTYPE          (REGISTRY_GUI + 13)      // cursor type (LONG) - not yet supported
  403. #define OBJECT_GUI_CURSORBLINK         (REGISTRY_GUI + 14)      // cursor blinking (LONG) - not yet supported
  404. #define OBJECT_GUI_STRIPSPC            (REGISTRY_GUI + 15)      // strip spaces ? (BOOL) - not yet supported
  405. #define OBJECT_GUI_SHOWTAB             (REGISTRY_GUI + 16)      // show tabs   ? (BOOL) - not yet supported
  406. #define OBJECT_GUI_SHOWSPC             (REGISTRY_GUI + 17)      // show spaces ? (BOOL) - not yet supported
  407. #define OBJECT_GUI_SHOWEOL             (REGISTRY_GUI + 18)      // show eol    ? (BOOL) - not yet supported
  408. #define OBJECT_GUI_SHOWEOF             (REGISTRY_GUI + 19)      // show eof    ? (BOOL) - not yet supported
  409. #define OBJECT_GUI_IGNOREEOL           (REGISTRY_GUI + 20)      // allow positioning beyond eol ? (BOOL) - not yet supported
  410.  
  411. ///
  412. /// "mouse"
  413.  
  414. #define REGISTRY_MOUSE 1050
  415.  
  416. #define OBJECT_MOUSE_BASE              (REGISTRY_MOUSE + 0 )    // preset name (NAME), preset data (LIST)
  417. #define OBJECT_MOUSE_BUTTONS           (REGISTRY_MOUSE + 1 )    // list of buttons (LIST)
  418.  
  419. ///
  420. /// "api"
  421.  
  422. #define REGISTRY_API 1100
  423.  
  424. #define OBJECT_API_BASE                (REGISTRY_API + 0 )      // preset name (NAME), preset data (LIST)
  425. #define OBJECT_API_CLIENTS             (REGISTRY_API + 1 )      // clients (LIST)
  426. #define OBJECT_API_CLIENT              (REGISTRY_API + 2 )      // client (NAME), argument (STRING)
  427.  
  428. ///
  429. /// "indention"
  430.  
  431. #define REGISTRY_INDENT 1150
  432.  
  433. #define OBJECT_INDENT_BASE             (REGISTRY_INDENT + 0 )   // preet name (NAME), preset data (LIST)
  434. #define OBJECT_INDENT_AUTOINDENT       (REGISTRY_INDENT + 1 )   // AutoIndention ? (BOOL)
  435. #define OBJECT_INDENT_SMARTINDENT      (REGISTRY_INDENT + 2 )   // SmartIndention ? (BOOL)
  436. #define OBJECT_INDENT_WORDS            (REGISTRY_INDENT + 3 )   // known keywords (LIST)
  437.  
  438. ///
  439. /// "standard"
  440.  
  441. #define REGISTRY_STANDARD 1200
  442.  
  443. #define OBJECT_STANDARD_LIST           (REGISTRY_STANDARD + 0)  // standard list (LIST)
  444. #define OBJECT_STANDARD_NAME           (REGISTRY_STANDARD + 1)  // standard name (NAME), (NUMBER)
  445. #define OBJECT_STANDARD_SEGLIST        (REGISTRY_STANDARD + 2)  // standard seglist (NUMBER), file name (NAME)
  446. #define OBJECT_STANDARD_STRING         (REGISTRY_STANDARD + 3)  // standard string (STRING)
  447. #define OBJECT_STANDARD_DATA           (REGISTRY_STANDARD + 4)  // standard data block (DATA)
  448.  
  449. ///
  450. /// "buffer"
  451.  
  452. #define REGISTRY_BUFFER 1250
  453.  
  454. #define OBJECT_BUFFER_COMMENT          (REGISTRY_BUFFER + 0)    // file comment (STRING)
  455. #define OBJECT_BUFFER_READ             (REGISTRY_BUFFER + 1)    // protection bit: read   (NUMBER)
  456. #define OBJECT_BUFFER_WRITE            (REGISTRY_BUFFER + 2)    // protection bit: write  (NUMBER)
  457. #define OBJECT_BUFFER_DELETE           (REGISTRY_BUFFER + 3)    // protection bit: delete (NUMBER)
  458. #define OBJECT_BUFFER_SCRIPT           (REGISTRY_BUFFER + 4)    // protection bit: script (NUMBER)
  459.  
  460. ///
  461. /// "statistics"
  462.  
  463. #define REGISTRY_STAT 1300
  464.  
  465. #define OBJECT_STAT_BYTES              (REGISTRY_STAT + 0 )     // result (STRING)
  466. #define OBJECT_STAT_WORDS              (REGISTRY_STAT + 1 )     // result (STRING)
  467. #define OBJECT_STAT_LINES              (REGISTRY_STAT + 2 )     // result (STRING)
  468. #define OBJECT_STAT_FOLDS              (REGISTRY_STAT + 3 )     // result (STRING)
  469. #define OBJECT_STAT_NOBBS              (REGISTRY_STAT + 4 )     // result (STRING)
  470. #define OBJECT_STAT_WIDTH              (REGISTRY_STAT + 5 )     // result (STRING)
  471. #define OBJECT_STAT_LONGEST            (REGISTRY_STAT + 6 )     // result (STRING)
  472. #define OBJECT_STAT_ESC                (REGISTRY_STAT + 7 )     // result (STRING)
  473. #define OBJECT_STAT_FF                 (REGISTRY_STAT + 8 )     // result (STRING)
  474. #define OBJECT_STAT_AVERAGE            (REGISTRY_STAT + 9 )     // result (STRING)
  475. #define OBJECT_STAT_AVERAGEWORD        (REGISTRY_STAT + 10)     // result (STRING)
  476. #define OBJECT_STAT_UNDOSTEPS          (REGISTRY_STAT + 11)     // result (STRING)
  477. #define OBJECT_STAT_UNDOBYTES          (REGISTRY_STAT + 12)     // result (STRING)
  478.  
  479. ///
  480. /// "buttons"
  481.  
  482. #define REGISTRY_BUTTONS 1350
  483.  
  484. #define OBJECT_BUTTONS_BASE            (REGISTRY_BUTTONS + 0 )  // preset name (NAME), preset data (LIST)
  485. #define OBJECT_BUTTONS_ENABLED         (REGISTRY_BUTTONS + 1 )  // toolbar enabled ? (BOOL)
  486. #define OBJECT_BUTTONS_STYLE           (REGISTRY_BUTTONS + 2 )  // button style (LONG) - not yet supported
  487. #define OBJECT_BUTTONS_WIDTH           (REGISTRY_BUTTONS + 3 )  // button size (LONG)
  488. #define OBJECT_BUTTONS_HEIGHT          (REGISTRY_BUTTONS + 4 )  // button size (LONG)
  489. #define OBJECT_BUTTONS_SPACING         (REGISTRY_BUTTONS + 5 )  // button spacing (LONG) - not yet supported
  490. #define OBJECT_BUTTONS_POSITION        (REGISTRY_BUTTONS + 6 )  // tool bar position (LONG) - not yet supported
  491. #define OBJECT_BUTTONS_BUTTONS         (REGISTRY_BUTTONS + 7 )  // text  buttons (LIST)
  492. #define OBJECT_BUTTONS_TOOLBARS        (REGISTRY_BUTTONS + 9 )  // toolbars (LIST)
  493. #define OBJECT_BUTTONS_IMAGES          (REGISTRY_BUTTONS + 8 )  // toolbar (NAME), images (LIST)
  494.  
  495. ///
  496.  
  497. #endif
  498.