SODEFS.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:30k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /*-------------------------------------------------------------------
  2. | OS Dependent Area
  3. */
  4. #ifndef SODEFS_H
  5. #define SODEFS_H
  6. #ifdef WIN16
  7. #define SO_ENTRYSC
  8. #define SO_ENTRYMOD __export __far __cdecl
  9. typedef unsigned long SOINT32U;
  10. typedef signed long SOINT32S;
  11. #endif /*WIN16*/
  12. #ifdef WIN32
  13. #define SO_ENTRYSC __declspec(dllexport)
  14. #define SO_ENTRYMOD __cdecl
  15. typedef unsigned long SOINT32U;
  16. typedef signed long SOINT32S;
  17. #define HUGE
  18. #endif /*WIN32*/
  19. /*-------------------------------------------------------------------
  20. | OS Independent Area
  21. */
  22. #define SO_BEGINTOKEN 0xFF
  23. #define SO_CHARATTR 0
  24. #define SO_SPECIALCHAR 1
  25. #define SO_CHARHEIGHT 2
  26. #define SO_BREAK 3
  27. #define SO_PARAALIGN 4
  28. #define SO_PARAINDENT 5
  29. #define SO_TABSTOPS 6
  30. #define SO_MARGINS 7
  31. #define SO_BEGINSUB 8
  32. #define SO_ENDSUB 9
  33. #define SO_CHARX 12
  34. #define SO_TAGBEGIN 13
  35. #define SO_TAGEND 14
  36. #define SO_PARASPACING 15
  37. #define SO_CHARFONTBYID  16
  38. #define SO_CHARFONTBYNAME 17
  39. #define SO_TABLE 18
  40. #define SO_TABLEEND 21
  41. #define SO_GRAPHICOBJECT 22
  42. #define SO_GOTOPOSITION  23
  43. #define SO_DRAWLINE 24
  44. #define SO_ENDOFCHUNK 0xFE
  45. #define SO_TEXTCELL 10 /* these two #defines should be in the chunker stuff */
  46. #define SO_DATACELL 11
  47. #define SO_EMPTYCELL 15
  48. #define SO_CHTAB 1
  49. #define SO_CHUNKNOWN 2
  50. #define SO_CHSHYPHEN 3
  51. #define SO_CHHPAGE 4
  52. #define SO_CHHLINE 5
  53. #define SO_CHHSPACE 6
  54. #define SO_CHHHYPHEN 7
  55. #define SO_CHPAGENUMBER  8
  56. #define SO_CHDATE 9
  57. #define SO_CHTIME 10
  58. #define SO_CHCELLTAB 11
  59. /* NOTE:  There is code in chunker.c that relies on the fact that */
  60. /* the value of the largest #define for a character attribute will */
  61. /* not exceed 15. */
  62. #define SO_BOLD  2
  63. #define SO_ITALIC 3
  64. #define SO_UNDERLINE 4
  65. #define SO_DUNDERLINE 5
  66. #define SO_SMALLCAPS 6
  67. #define SO_OUTLINE 7
  68. #define SO_SHADOW 8
  69. #define SO_CAPS  9
  70. #define SO_SUBSCRIPT 10
  71. #define SO_SUPERSCRIPT 11
  72. #define SO_STRIKEOUT 12
  73. #define SO_WORDUNDERLINE 13
  74. #define SO_DOTUNDERLINE  14
  75. #define SO_ON 1
  76. #define SO_OFF 0
  77. #define SO_YES 1
  78. #define SO_NO 0
  79. #define SO_STOP  1
  80. #define SO_CONTINUE 0
  81. #define SO_ALIGNLEFT 1
  82. #define SO_ALIGNRIGHT 2
  83. #define SO_ALIGNCENTER 3
  84. #define SO_ALIGNJUSTIFY  4
  85. #define SO_TABLEFT 1
  86. #define SO_TABRIGHT 2
  87. #define SO_TABCENTER 3
  88. #define SO_TABCHAR 4
  89. #define SO_TABEMPTY 5
  90. #define SO_HEADER 1
  91. #define SO_FOOTER 2
  92. #define SO_FOOTNOTE 3
  93. #define SO_COMMENT 4
  94. #define SO_LEFT  1
  95. #define SO_RIGHT 2
  96. #define SO_BOTH  3
  97. #define SO_WORDPROCESSOR 120
  98. #define SO_SPREADSHEET 121
  99. #define SO_DATABASE 122
  100. #define SO_PARAGRAPHS 0
  101. #define SO_CELLS 1
  102. #define SO_FIELDS 2
  103. #define SO_BITMAP 4
  104. #define SO_ARCHIVE 5
  105. #define SO_VECTOR 6
  106. #define SO_PARABREAK 1
  107. #define SO_EOFBREAK 2
  108. #define SO_SECTIONBREAK  3
  109. #define SO_CELLBREAK 4
  110. #define SO_RECORDBREAK 5
  111. #define SO_SUBDOCBEGINBREAK 6
  112. #define SO_SUBDOCENDBREAK 7
  113. #define SO_SCANLINEBREAK 8
  114. #define SO_ARCHIVEBREAK  9
  115. #define SO_VECTORBREAK 10
  116. #define  SO_TABLEROWBREAK 19
  117. #define  SO_TABLECELLBREAK 20
  118. #define SOERROR_GENERAL  0
  119. #define SOERROR_BADFILE  1
  120. #define SOERROR_EOF 2
  121. #define SO_CELLLEFT 0
  122. #define SO_CELLRIGHT 1
  123. #define SO_CELLCENTER 2
  124. #define SO_CELLFILL 3
  125. #define SO_CELLBOLD 1
  126. #define SO_CELLITALIC 2
  127. #define SO_CELLUNDERLINE 4
  128. #define SO_CELLSTRIKEOUT 8
  129. #define SO_CELLINT32S 0
  130. #define SO_CELLINT32U 1
  131. #define SO_CELLIEEE4I 2
  132. #define SO_CELLIEEE4M 3
  133. #define SO_CELLIEEE8I 4
  134. #define SO_CELLIEEE8M 5
  135. #define SO_CELLIEEE10I 6
  136. #define SO_CELLIEEE10M 7
  137. #define SO_CELLBCD8I 8
  138. #define SO_CELLEMPTY 9
  139. #define SO_CELLERROR 10
  140. #define SO_FIELDTEXTFIX  11
  141. #define SO_FIELDTEXTVAR  12
  142. #define SO_CELLNUMBER 0
  143. #define SO_CELLDOLLARS 1
  144. #define SO_CELLPERCENT 2
  145. #define SO_CELLEXPONENT  3
  146. #define SO_CELLDECIMAL 4
  147. #define SO_CELLDATETIME  5
  148. #define SO_CELLDATE 6
  149. #define SO_CELLTIME 7
  150. #define SO_CELLBOOL 8
  151. #define SO_CELLNEG_MINUS 0
  152. #define SO_CELLNEG_PAREN BIT0
  153. #define SO_CELLNEG_MINUSRED BIT1
  154. #define SO_CELLNEG_PARENRED BIT2
  155. #define SO_CELL1000SEP_NONE 0
  156. #define SO_CELL1000SEP_COMMA BIT3
  157. /* MASK = 0xF0, bits 4,5,6,7 */
  158. #define SO_CELLMULT_MASK 0xF0
  159. #define SO_CELLMULT_1 0
  160. #define SO_CELLMULT_01 0x10
  161. #define SO_CELLMULT_5000 0x20
  162. #define SO_CELLMULT_500  0x30
  163. #define SO_CELLMULT_05 0x40
  164. #define SO_CELLMULT_005  0x50
  165. #define SO_CELLMULT_0005 0x60
  166. #define SO_CELLMULT_00005 0x70
  167. #define SO_CELLMULT_0625 0x80
  168. #define SO_CELLMULT_015625 0x90
  169. #define SO_CELLMULT_0001 0xA0
  170. #define SO_CELLDATESEP_SLASH BIT8
  171. #define SO_CELLDATESEP_MINUS BIT9
  172. #define SO_CELLDATESEP_PERIOD BIT10
  173. #define SO_CELLDATESEP_SPACE BIT11
  174. #define SO_CELLDATESEP_NONE 0
  175. #define SO_CELLMONTH_FULL BIT12
  176. #define SO_CELLMONTH_ABBREV BIT13
  177. #define SO_CELLMONTH_NUMBER BIT14
  178. #define SO_CELLMONTH_NONE 0
  179. #define SO_CELLYEAR_FULL BIT15L
  180. #define SO_CELLYEAR_ABBREV BIT16L
  181. #define SO_CELLYEAR_NONE 0
  182. #define SO_HHMMBIT BIT17L
  183. #define SO_HHMMSSBIT BIT18L
  184. #define SO_AMPMBIT BIT19L
  185. #define SO_HMSBIT BIT20L
  186. #define SO_CELLTIME_HHMM24 SO_HHMMBIT
  187. #define SO_CELLTIME_HHMMSS24 SO_HHMMSSBIT
  188. #define SO_CELLTIME_HHMMAM (SO_HHMMBIT | SO_AMPMBIT)
  189. #define SO_CELLTIME_HHMMSSAM (SO_HHMMSSBIT | SO_AMPMBIT)
  190. #define SO_CELLTIME_HHMMHMS (SO_HHMMBIT | SO_HMSBIT)
  191. #define SO_CELLTIME_HHMMSSHMS (SO_HHMMSSBIT | SO_HMSBIT)
  192. #define SO_CELLTIME_NONE 0
  193. #define SO_CELLDAY_NUMBER BIT21L
  194. #define SO_CELLDAY_NONE  0
  195. #define SO_CELLDAYOFWEEK_FULL BIT22L
  196. #define SO_CELLDAYOFWEEK_ABBREV BIT23L
  197. #define SO_CELLDAYOFWEEK_NONE 0
  198. /* The following values are stored in consecutive 3-bit pieces of an integer. */
  199. /* MASK = 0x07 */
  200. #define SO_CELLDAYOFWEEK_SHIFT 0
  201. #define SO_CELLDAYOFWEEK_MASK 0x07
  202. #define SO_CELLDAYOFWEEK_1 1
  203. #define SO_CELLDAYOFWEEK_2 2
  204. #define SO_CELLDAYOFWEEK_3 3
  205. #define SO_CELLDAYOFWEEK_4 4
  206. #define SO_CELLDAYOFWEEK_5 5
  207. /* MASK = 0x38 */
  208. #define SO_CELLMONTH_SHIFT 3
  209. #define SO_CELLMONTH_MASK 0x38
  210. #define SO_CELLMONTH_1 8 /* (1<<3) */
  211. #define SO_CELLMONTH_2 16 /* (2<<3) */
  212. #define SO_CELLMONTH_3 24 /* (3<<3) */
  213. #define SO_CELLMONTH_4 32 /* (4<<3) */
  214. #define SO_CELLMONTH_5 40 /* (5<<3) */
  215. /* MASK = 0x1C0 */
  216. #define SO_CELLDAY_SHIFT 6
  217. #define SO_CELLDAY_MASK  0x1C0
  218. #define SO_CELLDAY_1 64 /* (1<<6) */
  219. #define SO_CELLDAY_2 128 /* (2<<6) */
  220. #define SO_CELLDAY_3 192 /* (3<<6) */
  221. #define SO_CELLDAY_4 256 /* (4<<6) */
  222. #define SO_CELLDAY_5 320 /* (5<<6) */
  223. /* MASK = 0xE00 */
  224. #define SO_CELLYEAR_SHIFT 9
  225. #define SO_CELLYEAR_MASK 0xE00
  226. #define SO_CELLYEAR_1 512 /* (1<<9) */
  227. #define SO_CELLYEAR_2 1024 /* (2<<9) */
  228. #define SO_CELLYEAR_3 1536 /* (3<<9) */
  229. #define SO_CELLYEAR_4 2048 /* (4<<9) */
  230. #define SO_CELLYEAR_5 2560  /* (5<<9) */
  231. /* MASK = 0x7000 */
  232. #define SO_CELLTIME_SHIFT 12
  233. #define SO_CELLTIME_MASK 0x7000
  234. #define SO_CELLTIME_1 4096  /* (1<<12) */
  235. #define SO_CELLTIME_2 8192  /* (2<<12) */
  236. #define SO_CELLTIME_3 12288 /* (3<<12) */
  237. #define SO_CELLTIME_4 16384 /* (4<<12) */
  238. #define SO_CELLTIME_5 20480 /* (5<<12) */
  239. /*
  240.  | Character sets.
  241. */
  242. #define SO_PC 1
  243. #define SO_WINDOWS 3
  244. #define SO_DBCS 5
  245. /*
  246. |  SOSetDateBase FLAGS
  247. */
  248. #define SO_LOTUSHELL 0x0001
  249. /*
  250. |  SOGetInfo Ids
  251. */
  252. #define SOINFO_COLUMNRANGE  1
  253. #define SOINFO_STARTRECORD  2
  254. /*
  255. |  SOPutCharX & SOPutSpecialCHarX FLAGS
  256. */
  257. #define SO_COUNTBIT 0x0001
  258. #define SO_LIMITEDITBIT 0x0002
  259. #define SO_HIDDENBIT 0x0004
  260. #define SO_COUNT SO_COUNTBIT
  261. #define SO_NOCOUNT SO_LIMITEDITBIT
  262. #define SO_LIMITEDIT SO_LIMITEDITBIT
  263. #define SO_DELETE SO_COUNTBIT
  264. #define SO_NODELETE 0
  265. #define SO_HIDDEN (SO_HIDDENBIT | SO_LIMITEDITBIT)
  266. #define SO_NOHIDDEN 0x0000
  267. /*
  268. |  font family
  269. */
  270. #define SO_FAMILYUNKNOWN 1
  271. #define SO_FAMILYROMAN 2
  272. #define SO_FAMILYSWISS 3
  273. #define SO_FAMILYMODERN  4
  274. #define SO_FAMILYSCRIPT  5
  275. #define SO_FAMILYDECORATIVE 6
  276. #define SO_FAMILYSYMBOL  7
  277. #define SO_FAMILYWINDOWS 0x1000
  278. #define SO_CHARSET_SHIFTJIS 0x2000
  279. #define SO_CHARSET_HANGEUL 0x4000
  280. #define SO_CHARSET_CHINESEBIG5 0x8000
  281. /*
  282. |  line spacing types
  283. */
  284. #define SO_HEIGHTAUTO 1
  285. #define SO_HEIGHTATLEAST 2
  286. #define SO_HEIGHTEXACTLY 3
  287. /*
  288. |  position flags
  289. */
  290. #define SOPOS_FROMLEFTEDGE 0x01
  291. #define SOPOS_FROMTOPEDGE 0x02
  292. #define SOPOS_FROMBASELINE 0x04
  293. typedef struct SOPAGEPOSITIONtag
  294. {
  295. DWORD  dwFlags;
  296. LONG  lXOffset;
  297. LONG  lYOffset;
  298. } SOPAGEPOSITION, VWPTR * PSOPAGEPOSITION;
  299. /*
  300. |  Bitmap filter definitions
  301. */
  302. /* wImageFlags */
  303. #define SO_BOTTOMTOTOP 0x0001
  304. #define SO_GRAYSCALE 0x0002
  305. #define SO_BLACKANDWHITE 0x0004
  306. #define SO_COLORPALETTE 0x0008
  307. #define SO_RGBCOLOR 0x0010
  308. #define SO_BGRCOLOR 0x0020
  309. #define SO_WHITEZERO 0x0040
  310. /*
  311. |  Archive filter definitions
  312. */
  313. #define SO_ARCENDOFRECORD 0xFFFF
  314. #define SOARC_FILENAME 1
  315. #define SOARC_FILEDATE 2
  316. #define SOARC_FILETIME 3
  317. #define SOARC_FILEPATH 4
  318. #define SOARC_COMPRESSIONTYPE 5
  319. #define SOARC_FILECOMMENT 6
  320. #define SOARC_FILEMODDATE 7
  321. #define SOARC_FILEMODTIME 8
  322. #define SOARC_FILESIZE 9
  323. #define SOARC_FILECOMPRESSSIZE 10
  324. #define SOARC_FILECRC 11
  325. #define SOARC_BUFFERSIZE 12
  326. #define SOARC_CHECKSUM 13
  327. #define SOARC_FILEOS 14
  328. #define SOARC_ENCRYPTED  15
  329. /*
  330. |  Vector graphics stuff.
  331. */
  332. /*
  333. | Macros
  334. */
  335. #ifdef WINDOWS
  336. #define SORGB(r,g,b) ((SOCOLORREF)(((BYTE)(r)|((DWORD)(BYTE)(g)<<8))|(((DWORD)(BYTE)(b))<<16)))
  337. #endif
  338. #define SOPALETTERGB(r,g,b)   (0x02000000L | SORGB(r,g,b))
  339. #define SOPALETTEINDEX(i)     ((SOCOLORREF)(0x01000000L | (DWORD)(WORD)(i)))
  340. #define SOANGLETENTHS(n) ((SOANGLE)(n))
  341. #define SOSETRATIO(m,n) ((SORATIO)(((SORATIO)m<<16)|(SORATIO)(n)))
  342. #define SOREDFROMRGB(rgb) (BYTE)(rgb&0x000000FF)
  343. #define SOGREENFROMRGB(rgb) (BYTE)((rgb&0x0000FF00)>>8)
  344. #define SOBLUEFROMRGB(rgb) (BYTE)((rgb&0x00FF0000)>>16)
  345. typedef DWORD SOCOLORREF;
  346. typedef SHORT SOANGLE;
  347. typedef DWORD SORATIO;
  348. typedef struct SORECTtag
  349. {
  350. SHORT  left;
  351. SHORT  top;
  352. SHORT  right;
  353. SHORT  bottom;
  354. } SORECT, VWPTR *PSORECT;
  355. typedef struct SOPOINTtag
  356. {
  357. SHORT  x;
  358. SHORT  y;
  359. } SOPOINT, VWPTR *PSOPOINT;
  360. #define SOLF_FACESIZE   32
  361. typedef struct SOLOGFONTtag
  362. {
  363.     SHORT     lfHeight;
  364.     SHORT     lfWidth;
  365.     SHORT     lfEscapement;
  366.     SHORT     lfOrientation;
  367.     SHORT     lfWeight;
  368.     BYTE    lfItalic;
  369.     BYTE    lfUnderline;
  370.     BYTE    lfStrikeOut;
  371.     BYTE    lfCharSet;
  372.     BYTE    lfOutPrecision;
  373.     BYTE    lfClipPrecision;
  374.     BYTE    lfQuality;
  375.     BYTE    lfPitchAndFamily;
  376.     CHAR    lfFaceName[SOLF_FACESIZE];
  377. } SOLOGFONT, VWPTR *PSOLOGFONT;
  378. /* lfWeight values */
  379. #define SOLF_FW_NORMAL     400
  380. #define SOLF_FW_BOLD 700
  381. /* lfCharSet */
  382. #define SOLF_ANSI_CHARSET 0
  383. #define SOLF_SYMBOL_CHARSET 2
  384. #define SOLF_OEM_CHARSET 255
  385. /* lfOutPrecision */
  386. #define SOLF_OUT_DEFAULT_PRECIS 0
  387. /* lfClipPrecision */
  388. #define SOLF_CLIP_DEFAULT_PRECIS 0
  389. #define SOLF_CLIP_LH_ANGLES 0x10
  390. /* lfQuality */
  391. #define SOLF_DEFAULT_QUALITY 0
  392. #define SOLF_DRAFT_QUALITY 1
  393. #define SOLF_PROOF_QUALITY 2
  394. /* PitchAndFamily pitch values (low 4 bits) */
  395. #define SOLF_DEFAULT_PITCH 0x00
  396. #define SOLF_FIXED_PITCH 0x01
  397. #define SOLF_VARIABLE_PITCH 0x02
  398. /* PitchAndFamily family values (high 4 bits) */
  399. #define SOLF_FF_DECORATIVE 0x00
  400. #define SOLF_FF_DONTCARE 0x10
  401. #define SOLF_FF_MODERN 0x20
  402. #define SOLF_FF_ROMAN 0x30
  403. #define SOLF_FF_SCRIPT 0x40
  404. #define SOLF_FF_SWISS 0x50
  405. typedef struct SOLOGPENtag
  406. {
  407. SHORT  loPenStyle;
  408. SOPOINT loWidth;
  409. SOCOLORREF  loColor;
  410. } SOLOGPEN, VWPTR *PSOLOGPEN;
  411. /* Pen Styles */
  412. #define SOPS_SOLID     0
  413. #define SOPS_DASH 1
  414. #define SOPS_DOT       2
  415. #define SOPS_DASHDOT  3
  416. #define SOPS_DASHDOTDOT       4
  417. #define SOPS_NULL     5
  418. #define SOPS_INSIDEFRAME     6
  419. typedef struct SOLOGBRUSHtag
  420. {
  421. WORD  lbStyle;
  422. SOCOLORREF  lbColor;
  423. SHORT  lbHatch;
  424. } SOLOGBRUSH, VWPTR *PSOLOGBRUSH;
  425. /* Brush Styles */
  426. #define SOBS_SOLID     0
  427. #define SOBS_NULL     1
  428. #define SOBS_HOLLOW SOBS_NULL
  429. #define SOBS_HATCHED  2
  430. #define SOBS_PATTERN  3
  431. #define SOBS_INDEXED  4
  432. #define SOBS_DIBPATTERN  5
  433. /* Hatch Styles */
  434. #define SOHS_HORIZONTAL       0
  435. #define SOHS_VERTICAL     1
  436. #define SOHS_FDIAGONAL       2
  437. #define SOHS_BDIAGONAL       3
  438. #define SOHS_CROSS  4
  439. #define SOHS_DIAGCROSS       5
  440. typedef struct SOVECTORHEADERtag
  441. {
  442. WORD  wStructSize;
  443. SORECT  BoundingRect;
  444. WORD  wHDpi;
  445. WORD  wVDpi;
  446. WORD  wImageFlags;
  447. SOCOLORREF  BkgColor;
  448. } SOVECTORHEADER, VWPTR *PSOVECTORHEADER;
  449. /* wImageFlags values */
  450. #define SO_VECTORRGBCOLOR BIT0
  451. #define SO_VECTORCOLORPALETTE BIT1
  452. #define SO_YISUP BIT2
  453. #define SO_XISLEFT BIT3
  454. typedef struct SOARCINFOtag
  455. {
  456. SORECT  Rect;
  457. SOANGLE StartAngle;
  458. SOANGLE EndAngle;
  459. } SOARCINFO, VWPTR *PSOARCINFO;
  460. typedef struct SOTEXTINRECTtag
  461. {
  462. SORECT  Rect;
  463. WORD  wFormat;
  464. SHORT  nTextLength;
  465. } SOTEXTINRECT, VWPTR *PSOTEXTINRECT;
  466. /* wFormat values */
  467. #define SODT_TOP     0x0000
  468. #define SODT_LEFT     0x0000
  469. #define SODT_CENTER 0x0001
  470. #define SODT_RIGHT     0x0002
  471. #define SODT_VCENTER  0x0004
  472. #define SODT_BOTTOM 0x0008
  473. #define SODT_WORDBREAK  0x0010
  474. #define SODT_SINGLELINE  0x0020
  475. #define SODT_EXPANDTABS  0x0040
  476. #define SODT_TABSTOP  0x0080
  477. #define SODT_NOCLIP 0x0100
  478. #define SODT_EXTERNALLEADING  0x0200
  479. #define SODT_CALCRECT  0x0400
  480. #define SODT_NOPREFIX  0x0800
  481. #define SODT_INTERNAL  0x1000
  482. /* PolyFillMode values */
  483. #define SOPF_ALTERNATE  1
  484. #define SOPF_WINDING  2
  485. /* DrawMode values */
  486. #define SOR2_BLACK  1
  487. #define SOR2_NOTMERGEPEN      2
  488. #define SOR2_MASKNOTPEN       3
  489. #define SOR2_NOTCOPYPEN       4
  490. #define SOR2_MASKPENNOT       5
  491. #define SOR2_NOT       6
  492. #define SOR2_XORPEN   7
  493. #define SOR2_NOTMASKPEN       8
  494. #define SOR2_MASKPEN  9
  495. #define SOR2_NOTXORPEN       10
  496. #define SOR2_NOP       11
  497. #define SOR2_MERGENOTPEN      12
  498. #define SOR2_COPYPEN  13
  499. #define SOR2_MERGEPENNOT      14
  500. #define SOR2_MERGEPEN     15
  501. #define SOR2_WHITE  16
  502. typedef struct SOTEXTATPOINTtag
  503. {
  504. SOPOINT Point;
  505. WORD  wFormat;
  506. SHORT  nTextLength;
  507. } SOTEXTATPOINT, VWPTR *PSOTEXTATPOINT;
  508. typedef struct SOTEXTATARCANGLEtag
  509. {
  510. SOARCINFO  ArcInfo;
  511. WORD  wFormat;
  512. SHORT  nTextLength;
  513. } SOTEXTATARCANGLE, VWPTR *PSOTEXTATARCANGLE;
  514. /* Text Alignment Options */
  515. #define SOTA_NOUPDATECP    0x0000
  516. #define SOTA_UPDATECP   0x0001
  517. #define SOTA_LEFT  0x0000
  518. #define SOTA_RIGHT  0x0002
  519. #define SOTA_CENTER 0x0006
  520. #define SOTA_TOP 0x0000
  521. #define SOTA_BOTTOM 0x0008
  522. #define SOTA_BASELINE   0x0018
  523. typedef struct SOSPOLYINFOtag
  524. {
  525. WORD  wFormat;
  526. SHORT  nPoints;
  527. } SOPOLYINFO, VWPTR *PSOPOLYINFO;
  528. /* Poly object types */
  529. #define SOPT_POLYLINE 1
  530. #define SOPT_POLYGON 2
  531. #define SOPT_BEZIEROPEN  3
  532. #define SOPT_BEZIERCLOSE 4
  533. #define SOPT_SPLINEOPEN  5
  534. #define SOPT_SPLINECLOSE 6
  535. #define SOPT_CPPOLYLINE  7 /* Current Point polys */
  536. #define SOPT_CPPOLYGON 8
  537. /* Background mode values */
  538. #define SOBK_TRANSPARENT 1
  539. #define SOBK_OPAQUE 2
  540. typedef struct SOCPTEXTATPOINTtag
  541. {
  542. WORD  wFormat;
  543. SHORT  nTextLength;
  544. } SOCPTEXTATPOINT, VWPTR *PSOCPTEXTATPOINT;
  545. typedef struct SOCPARCANGLEtag
  546. {
  547. SOPOINT Center;
  548. SOANGLE SweepAngle;
  549. } SOCPARCANGLE, VWPTR *PSOCPARCANGLE;
  550. typedef struct SOCPPIEANGLEtag
  551. {
  552. SOPOINT  Radius;
  553. SOANGLE StartAngle;
  554. SOANGLE SweepAngle;
  555. } SOCPPIEANGLE, VWPTR *PSOCPPIEANGLE;
  556. typedef struct SOTRANSFORMtag
  557. {
  558. WORD  wTransformFlags;
  559. SOPOINT Origin;
  560. SHORT  xOffset;
  561. SHORT  yOffset;
  562. SORATIO xScale;
  563. SORATIO yScale;
  564. SORATIO xSkew;
  565. SORATIO ySkew;
  566. SOANGLE RotationAngle;
  567. } SOTRANSFORM, VWPTR *PSOTRANSFORM;
  568. /* Transformation flags */
  569. #define SOTF_NOTRANSFORM BIT0
  570. #define SOTF_ROTATE BIT1
  571. #define SOTF_XOFFSET BIT2
  572. #define SOTF_YOFFSET BIT3
  573. #define SOTF_XSCALE BIT4
  574. #define SOTF_YSCALE BIT5
  575. #define SOTF_XSKEW BIT6
  576. #define SOTF_YSKEW BIT7
  577. /* Possible values for the clip mode */
  578. #define SO_DONOTCLIP 0
  579. #define SO_CLIPTOPATH 1
  580. /* Possible values for the point relation attribute */
  581. #define SOPR_ABSOLUTE 0
  582. #define SOPR_RELATIVE 1
  583. /* Possible values for the wDrawPathFlags */
  584. #define SODP_STROKE BIT0
  585. #define SODP_FILL BIT1
  586. typedef struct SOGROUPINFOtag
  587. {
  588. WORD  wStructSize;
  589. SORECT  BoundingRect;
  590. SHORT  nTransforms;
  591. } SOGROUPINFO, VWPTR *PSOGROUPINFO;
  592. typedef struct SOPATHINFOtag
  593. {
  594. WORD  wStructSize;
  595. SORECT  BoundingRect;
  596. SHORT  nTransforms;
  597. } SOPATHINFO, VWPTR *PSOPATHINFO;
  598. #define SOFF_FIXUPBOUNDS BIT0
  599. typedef struct SOFRAMEINFOtag
  600. {
  601. SORECT  BoundingRect;
  602. WORD  wFlags;
  603. WORD  OriginalWidth;
  604. SOANGLE RotationAngle;
  605. SOPOINT ReferencePoint;
  606. } SOFRAMEINFO, VWPTR *PSOFRAMEINFO;
  607. typedef struct SOMPARAINDENTStag
  608. {
  609. SHORT  FirstLineIndent;
  610. SHORT  LeftIndent;
  611. SHORT  RightIndent;
  612. } SOMPARAINDENTS, VWPTR *PSOMPARAINDENTS;
  613. typedef struct SOMPARASPACINGtag
  614. {
  615. WORD  LineSpaceAdjust;
  616. WORD  ParaSpaceAdjust;
  617. } SOMPARASPACING, VWPTR *PSOMPARASPACING;
  618. /* Maximum Points provided by a filter in one SOPOINTS object call */
  619. #define SOMAXPOINTS 128
  620. /* SOVectorAttr Id's */
  621. #define SO_SELECTFONT 0x100
  622. #define SO_SELECTPEN 0x101
  623. #define SO_SELECTBRUSH 0x102
  624. #define SO_POLYFILLMODE  0x103
  625. #define SO_TEXTCHAREXTRA 0x104
  626. #define SO_DRAWMODE 0x105
  627. #define SO_TEXTCOLOR 0x106
  628. #define SO_BKMODE 0x107
  629. #define SO_BKCOLOR 0x108
  630. #define SO_OBJECTTRANSFORM 0x109
  631. #define SO_CLIPMODE 0x10A
  632. #define SO_POINTRELATION 0x10B
  633. #define SO_MPARAINDENT 0x10C
  634. #define SO_MPARAALIGN 0x10D
  635. #define SO_MPARASPACING  0x10E
  636. /* SOVectorObject Id's */
  637. #define SO_ARC 0x300
  638. #define SO_CHORD 0x301
  639. #define SO_TEXTINRECT 0x302
  640. #define SO_ELLIPSE 0x303
  641. #define SO_FLOODFILL 0x304
  642. #define SO_LINE  0x305
  643. #define SO_PIE 0x306
  644. #define SO_STARTPOLY 0x307
  645. #define SO_ENDPOLY 0x308
  646. #define SO_RECTANGLE 0x309
  647. #define SO_BEGINPATH 0x30A
  648. #define SO_ENDPATH 0x30B
  649. #define SO_CLOSESUBPATH 0x30C
  650. #define SO_DRAWPATH 0x30D
  651. #define SO_BEGINGROUP 0x30E
  652. #define SO_ENDGROUP 0x30F
  653. #define SO_ROUNDRECT 0x310
  654. #define SO_SETPIXEL 0x311
  655. #define SO_TEXTATPOINT 0x312
  656. #define SO_POINTS 0x313
  657. #define SO_ARCANGLE 0x314
  658. #define SO_CHORDANGLE 0x315
  659. #define SO_PIEANGLE 0x316
  660. #define SO_CPSET 0x317
  661. #define SO_CPLINE 0x318
  662. #define SO_CPRECTANGLE 0x319
  663. #define SO_CPTEXTATPOINT 0x31A
  664. #define SO_CPELLIPSE 0x31B
  665. #define SO_CPARCTRIPLE 0x31C
  666. #define SO_CPARCANGLE 0x31D
  667. #define SO_CPPIEANGLE 0x31E
  668. #define SO_ARCCLOCKWISE 0x31F
  669. #define SO_ARCANGLECLOCKWISE 0x320
  670. #define SO_TEXTATARCANGLE 0x321
  671. #define SO_BEGINSYMBOL 0x322
  672. #define SO_ENDSYMBOL 0x323
  673. #define SO_BEGINTEXTFRAME 0x324
  674. #define SO_ENDTEXTFRAME  0x325
  675. #define SO_TEXTINPARA 0x326
  676. #define SO_PARAEND 0x327
  677. #define SO_ARCTRIPLE 0x328
  678. #define SO_PIETRIPLE 0x329
  679. #define SO_CHORDTRIPLE 0x32A
  680. #define SO_ELLIPSERADII 0x32B
  681. #define SO_ARCRADII 0x32C
  682. #define SO_PIERADII 0x32D
  683. #define SO_CHORDRADII 0x32E
  684. #define SO_VECTORENDOFCHUNK 0xFFFF
  685. /*
  686. |  SO Header info
  687. */
  688. #define SOHDR_ARCNUMFILES 1
  689. #define SOHDR_ARCCREATEDATE 2
  690. #define SOHDR_ARCMODTIME 3
  691. #define SOHDR_ARCTYPE 4
  692. #define SOHDR_ARCOS 5
  693. #define SOHDR_ARCCOMMENT 6
  694. #define SOHDR_ARCVERSION 7
  695. /*
  696. |  Bored-er definitions
  697. */
  698. #define SO_BORDERSINGLE  0x0000 // Default
  699. #define SO_BORDERNONE 0x0001
  700. #define SO_BORDERDOUBLE  0x0002
  701. #define SO_BORDERHAIRLINE 0x0004
  702. #define SO_BORDERTHICK 0x0008
  703. #define SO_BORDERSHADOW  0x0010
  704. #define SO_BORDERDOTTED  0x0020
  705. #define SO_BORDERPRIORITY 0x0040
  706. /*
  707. |  Table stuff.
  708. */
  709. #define SO_MERGELEFT 0x0001
  710. #define SO_MERGERIGHT 0x0002
  711. #define SO_MERGEABOVE 0x0004
  712. #define SO_MERGEBELOW 0x0008
  713. typedef struct SOBORDERtag
  714. {
  715. WORD  wWidth;  // Width of border in twips
  716. SOCOLORREF  rgbColor;  // Color of border
  717. WORD  wFlags;  // Specifies the type of border and the edges to which it applies.
  718. } SOBORDER, VWPTR * PSOBORDER;
  719. typedef struct SOTABLECELLINFOtag
  720. {
  721. WORD  wWidth;  // Width of the cell, in twips
  722. WORD  wMerge;  // Bitfield that indicates whether the cell should be merged with any of the cells around it. Possible flags are SO_MERGELEFT, SO_MERGERIGHT, SO_MERGEABOVE, and SO_MERGEBELOW.
  723. WORD  wShading;  // Intensity value for background shading, in range of 0-255, where a value of zero indicates that there is no background shading.
  724. SOBORDER  LeftBorder;  // Specifies left border
  725. SOBORDER  RightBorder;  // Specifies right border
  726. SOBORDER  TopBorder;  // Specifies top border
  727. SOBORDER  BottomBorder;  // Specifies bottom border
  728. } SOTABLECELLINFO, VWPTR * PSOTABLECELLINFO, HUGE * HPSOTABLECELLINFO;
  729. /*
  730. |  SOTAB structure
  731. */
  732. typedef struct SOTABtag
  733. {
  734. WORD  wType;
  735. WORD  wChar;
  736. WORD  wLeader;
  737. DWORD  dwOffset;
  738. } SOTAB, VWPTR * PSOTAB;
  739. /*
  740. |  SOFILTERINFO structure
  741. */
  742. typedef struct SOFILTERINFOtag
  743. {
  744. WORD  wFilterType;
  745. WORD  wFilterCharSet;
  746. CHAR  szFilterName[32];
  747. } SOFILTERINFO, VWPTR * PSOFILTERINFO;
  748. /*
  749. |  SOCOLUMN structure
  750. */
  751. typedef struct SOCOLUMNtag
  752. {
  753. WORD  wStructSize;
  754. LONG  dwWidth;
  755. CHAR  szName[40];
  756. } SOCOLUMN, VWPTR * PSOCOLUMN;
  757. /*
  758. |  SOFIELD structure
  759. */
  760. typedef struct SOFIELDtag
  761. {
  762. WORD  wStructSize;
  763. LONG  dwWidth;
  764. CHAR  szName[40];
  765. WORD  wStorage;
  766. WORD  wDisplay;
  767. DWORD  dwSubDisplay;
  768. WORD  wPrecision;
  769. WORD  wAlignment;
  770. } SOFIELD, VWPTR * PSOFIELD;
  771. /*
  772. |  SOTEXTCELL structure
  773. */
  774. typedef struct SOTEXTCELLtag
  775. {
  776. WORD  wStructSize;
  777. WORD  wAlignment;
  778. WORD  wAttribute;
  779. } SOTEXTCELL, VWPTR * PSOTEXTCELL;
  780. /*
  781. |  SODATACELL structure
  782. */
  783. typedef union SONUMBERUNIONtag
  784. {
  785. SOINT32S   Int32S;
  786. SOINT32U   Int32U;
  787. BYTE   IEEE4[4];
  788. BYTE   IEEE8[8];
  789. BYTE   IEEE10[10];
  790. BYTE   BCD8[8];
  791. } SONUMBERUNION, VWPTR * PSONUMBERUNION;
  792. typedef struct SODATACELLtag
  793. {
  794. WORD  wStructSize;
  795. WORD  wStorage;
  796. WORD  wDisplay;
  797. DWORD  dwSubDisplay;
  798. WORD  wPrecision;
  799. WORD  wAlignment;
  800. WORD  wAttribute;
  801. /*
  802. union
  803. {
  804. SOINT32S   Int32S;
  805. SOINT32U   Int32U;
  806. BYTE   IEEE4[4];
  807. BYTE   IEEE8[8];
  808. BYTE   IEEE10[10];
  809. BYTE   BCD8[8];
  810. } uStorage;
  811. */
  812. SONUMBERUNION uStorage;
  813. } SODATACELL, VWPTR * PSODATACELL;
  814. typedef VOID FAR * SOFILE;
  815. /* Bitmap graphics header */
  816. typedef struct tagSOBITMAPHEADER
  817. {
  818. WORD  wStructSize;
  819. WORD  wImageFlags;
  820. WORD  wImageWidth;
  821. WORD  wImageLength;
  822. WORD  wTileWidth;
  823. WORD  wTileLength;
  824. WORD  wBitsPerPixel;
  825. WORD  wNPlanes;
  826. WORD  wHDpi;
  827. WORD  wVDpi;
  828. /**
  829. WORD  wEncoding;
  830. WORD  wImageLeft;
  831. WORD  wImageTop;
  832. WORD  wHScreenSize;
  833. WORD  wVScreenSize;
  834. **/
  835. } SOBITMAPHEADER, VWPTR * PSOBITMAPHEADER;
  836. /*
  837. | Structure defined for the DO special function for ARCHIVE formats
  838. */
  839. typedef struct tagSODOSPECIALARC
  840. {
  841. SOFILE  hOutFile;
  842. HANDLE  hFileName;
  843. LPSTR  lpFileName;
  844. WORD  wOptFlags;
  845. WORD  wRecordNum;
  846. DWORD  dwIndex;
  847. } SODOSPECIALARC, VWPTR * PSODOSPECIALARC;
  848. /*
  849.  |
  850.  | Embedded objects
  851.  |
  852. */
  853. #define SO_MAINTAINASPECT 0x0001 // image aspect ratio is preserved
  854. #define SO_CENTERIMAGE 0x0002 // if set, image is centered in its final rectangle.
  855. #define SOOBJECT_GRAPHIC 0x0001
  856. #define SOOBJECT_OLE 0x0002
  857. #define SOOBJECT_GRAPHIC_AND_OLE 0x0003
  858. #define SOOBJECT_OLESTATIC 0x0001
  859. typedef struct SOOBJECTLOCtag
  860. {
  861. BOOL  bLink;
  862. BYTE  szFile[144];
  863. DWORD  dwOffset;
  864. DWORD  dwLength;
  865. } SOOBJECTLOC, VWPTR * PSOOBJECTLOC;
  866. typedef struct SOGRAPHICtag
  867. {
  868. WORD  wId;
  869. DWORD  dwOrgHeight;
  870. DWORD  dwOrgWidth;
  871. LONG  lCropTop;
  872. LONG  lCropLeft;
  873. LONG  lCropBottom;
  874. LONG  lCropRight;
  875. DWORD  dwFinalHeight;
  876. DWORD  dwFinalWidth;
  877. SOBORDER  soLeftBorder;
  878. SOBORDER  soTopBorder;
  879. SOBORDER  soBottomBorder;
  880. SOBORDER  soRightBorder;
  881. DWORD  dwFlags;
  882. } SOGRAPHIC, VWPTR * PSOGRAPHIC;
  883. typedef struct SOGRAPHICOBJECTtag
  884. {
  885. WORD  wStructSize;
  886. DWORD  dwFlags;
  887. DWORD  dwType;
  888. SOGRAPHIC  soGraphic;
  889. SOOBJECTLOC  soGraphicLoc;
  890. SOOBJECTLOC  soOLELoc;
  891. } SOGRAPHICOBJECT, VWPTR * PSOGRAPHICOBJECT;
  892. #define SOPUTCHAR 1
  893. #define SOPUTCHARX 2
  894. #define SOPUTSPECIALCHARX 3
  895. #define SOPUTCHARATTR 4
  896. #define SOPUTCHARHEIGHT  5
  897. #define SOPUTPARAALIGN 6
  898. #define SOPUTPARAINDENTS 7
  899. #define SOSTARTTABSTOPS  8
  900. #define SOENDTABSTOPS 9
  901. #define SOPUTTABSTOP 10
  902. #define SOPUTMARGINS 11
  903. #define SOPUTSUBDOCINFO  12
  904. #define SOPUTBREAK 13
  905. #define SOPUTDATACELL 14
  906. #define SOPUTTEXTCELL 15
  907. #define SOPUTMORETEXT 16
  908. #define SOPUTFIELD 17
  909. #define SOPUTVARFIELD 18
  910. #define SOPUTMOREVARFIELD 19
  911. #define SOSTARTCOLUMNINFO 20
  912. #define SOSTARTFIELDINFO 21
  913. #define SOPUTCOLUMNINFO  22
  914. #define SOPUTFIELDINFO 23
  915. #define SOENDCOLUMNINFO  24
  916. #define SOENDFIELDINFO 25
  917. #define SOPUTSECTIONTYPE 26
  918. #define SOPUTSECTIONNAME 27
  919. #define SOSETDATEBASE 28
  920. #define SOBAILOUT 29
  921. #define SOTAGBEGIN 30
  922. #define SOTAGEND 31
  923. #define SOGETINFO 32
  924. #define SOPUTSTRING 33
  925. #define SUUSERSAVEDATA 34
  926. #define SUUSERRETRIEVEDATA 35
  927. #define SOPUTBITMAPHEADER 36
  928. #define SOSTARTPALETTE 37
  929. #define SOPUTPALETTEENTRY 38
  930. #define SOENDPALETTE 39
  931. #define SOPUTSCANLINEDATA 40
  932. #define SOSTARTFONTTABLE 41
  933. #define SOPUTFONTTABLEENTRY 42
  934. #define SOENDFONTTABLE 43
  935. #define SOPUTCHARFONTBYID 44
  936. #define SOPUTCHARFONTBYNAME 45
  937. #define SOPUTPARASPACING 46
  938. #define SOPUTARCHIVEFIELD 47
  939. #define SOSTARTHDRINFO 48
  940. #define SOENDHDRINFO 49
  941. #define SOPUTHDRENTRY 50
  942. #define SOPUTVECTORHEADER 51
  943. #define SOVECTOROBJECT 52
  944. #define SOVECTORATTR 53
  945. #define SOBEGINTABLE 54
  946. #define SOENDTABLE 55
  947. #define SOPUTTABLEROWFORMAT 56
  948. #define SOPUTTABLECELLINFO 57
  949. #define SOPUTGRAPHICOBJECT 58
  950. #define SOGOTOPOSITION 59
  951. #define SODRAWLINE 60
  952. typedef struct SORTNStag
  953. {
  954. VOID (SO_ENTRYMOD * SOPutChar     )(WORD, DWORD, DWORD);
  955. VOID (SO_ENTRYMOD * SOPutCharX      )(WORD, WORD, DWORD, DWORD);
  956. VOID (SO_ENTRYMOD * SOPutSpecialCharX )(WORD, WORD, DWORD, DWORD);
  957. VOID (SO_ENTRYMOD * SOPutCharAttr     )(WORD, WORD, DWORD, DWORD);
  958. VOID (SO_ENTRYMOD * SOPutCharHeight   )(WORD, DWORD, DWORD);
  959. VOID (SO_ENTRYMOD * SOPutParaAlign    )(WORD, DWORD, DWORD);
  960. VOID (SO_ENTRYMOD * SOPutParaIndents  )(DWORD, DWORD, DWORD, DWORD, DWORD);
  961. VOID (SO_ENTRYMOD * SOStartTabStops   )(DWORD, DWORD);
  962. VOID (SO_ENTRYMOD * SOEndTabStops     )(DWORD, DWORD);
  963. VOID (SO_ENTRYMOD * SOPutTabStop      )(PSOTAB, DWORD, DWORD);
  964. VOID (SO_ENTRYMOD * SOPutMargins      )(DWORD, DWORD, DWORD, DWORD);
  965. VOID (SO_ENTRYMOD * SOPutSubdocInfo   )(WORD, WORD, DWORD, DWORD);
  966. WORD (SO_ENTRYMOD * SOPutBreak      )(WORD, DWORD, DWORD, DWORD);
  967. VOID (SO_ENTRYMOD * SOPutTextCell     )(PSOTEXTCELL,WORD,CHAR VWPTR *,WORD,DWORD,DWORD);
  968. VOID (SO_ENTRYMOD * SOPutMoreText     )(WORD,CHAR VWPTR *,WORD,DWORD,DWORD);
  969. VOID (SO_ENTRYMOD * SOPutDataCell     )(PSODATACELL,DWORD,DWORD);
  970. VOID (SO_ENTRYMOD * SOPutField      )(VOID VWPTR *,DWORD,DWORD);
  971. VOID (SO_ENTRYMOD * SOPutVarField     )(VOID VWPTR *,WORD,WORD,DWORD,DWORD);
  972. VOID (SO_ENTRYMOD * SOPutMoreVarField )(VOID VWPTR *,WORD,WORD,DWORD,DWORD);
  973. VOID (SO_ENTRYMOD * SOStartColumnInfo )(DWORD,DWORD);
  974. VOID (SO_ENTRYMOD * SOStartFieldInfo  )(DWORD,DWORD);
  975. VOID (SO_ENTRYMOD * SOPutColumnInfo   )(PSOCOLUMN,DWORD,DWORD);
  976. VOID (SO_ENTRYMOD * SOPutFieldInfo    )(PSOFIELD,DWORD,DWORD);
  977. VOID (SO_ENTRYMOD * SOEndColumnInfo   )(DWORD,DWORD);
  978. VOID (SO_ENTRYMOD * SOEndFieldInfo    )(DWORD,DWORD);
  979. VOID (SO_ENTRYMOD * SOPutSectionType  )(WORD,DWORD,DWORD);
  980. VOID (SO_ENTRYMOD * SOPutSectionName  )(CHAR VWPTR *,DWORD,DWORD);
  981. VOID (SO_ENTRYMOD * SOSetDateBase     )(DWORD,WORD,DWORD,DWORD);
  982. VOID (SO_ENTRYMOD * SOBailOut     )(WORD,DWORD,DWORD);
  983. VOID (SO_ENTRYMOD * SOTagBegin      )(DWORD,DWORD,DWORD);
  984. VOID (SO_ENTRYMOD * SOTagEnd   )(DWORD,DWORD);
  985. VOID (SO_ENTRYMOD * SOGetInfo     )(WORD,VOID VWPTR *,DWORD,DWORD);
  986. VOID (SO_ENTRYMOD * SOPutString     )(LPSTR, WORD, DWORD, DWORD);
  987. WORD (SO_ENTRYMOD * SUUserSaveData    )(VOID VWPTR *,DWORD,DWORD);
  988. WORD (SO_ENTRYMOD * SUUserRetrieveData)(WORD,VOID VWPTR *,DWORD,DWORD);
  989. VOID (SO_ENTRYMOD * SOPutBitmapHeader )(PSOBITMAPHEADER, DWORD, DWORD);
  990. VOID (SO_ENTRYMOD * SOStartPalette    )(DWORD, DWORD);
  991. VOID (SO_ENTRYMOD * SOPutPaletteEntry )(CHAR,CHAR,CHAR,DWORD,DWORD);
  992. VOID (SO_ENTRYMOD * SOEndPalette      )(DWORD,DWORD);
  993. WORD (SO_ENTRYMOD * SOPutScanLineData )(VOID VWPTR *,DWORD,DWORD);
  994. VOID (SO_ENTRYMOD * SOStartFontTable  )(DWORD,DWORD);
  995. VOID (SO_ENTRYMOD * SOPutFontTableEntry)(DWORD,WORD,LPSTR,DWORD,DWORD);
  996. VOID (SO_ENTRYMOD * SOEndFontTable  )(DWORD,DWORD);
  997. VOID (SO_ENTRYMOD * SOPutCharFontById  )(DWORD,DWORD,DWORD);
  998. VOID (SO_ENTRYMOD * SOPutCharFontByName)(WORD,LPSTR,DWORD,DWORD);
  999. VOID (SO_ENTRYMOD * SOPutParaSpacing  )(WORD,DWORD,DWORD,DWORD,DWORD,DWORD);
  1000. VOID (SO_ENTRYMOD * SOPutArchiveField  )(WORD,WORD,LPSTR,DWORD,DWORD);
  1001. VOID (SO_ENTRYMOD * SOStartHdrInfo  )(DWORD,DWORD);
  1002. VOID (SO_ENTRYMOD * SOEndHdrInfo  )(DWORD,DWORD);
  1003. VOID (SO_ENTRYMOD * SOPutHdrEntry  )(LPSTR,LPSTR,WORD,DWORD,DWORD);
  1004. VOID (SO_ENTRYMOD * SOPutVectorHeader  )(PSOVECTORHEADER,DWORD,DWORD);
  1005. VOID (SO_ENTRYMOD * SOVectorObject  )(SHORT,WORD,VOID VWPTR *,DWORD,DWORD);
  1006. VOID (SO_ENTRYMOD * SOVectorAttr  )(SHORT,WORD,VOID VWPTR *,DWORD,DWORD);
  1007. VOID (SO_ENTRYMOD * SOBeginTable  )(DWORD,DWORD);
  1008. VOID (SO_ENTRYMOD * SOEndTable   )(DWORD,DWORD);
  1009. VOID (SO_ENTRYMOD * SOPutTableRowFormat)(LONG,WORD,WORD,WORD,WORD,WORD,DWORD,DWORD);
  1010. VOID (SO_ENTRYMOD * SOPutTableCellInfo  )(PSOTABLECELLINFO,DWORD,DWORD);
  1011. VOID (SO_ENTRYMOD * SOPutGraphicObject  )(PSOGRAPHICOBJECT,DWORD,DWORD);
  1012. VOID (SO_ENTRYMOD * SOGoToPosition  )(PSOPAGEPOSITION,DWORD,DWORD);
  1013. VOID (SO_ENTRYMOD * SODrawLine   )(PSOPAGEPOSITION,SOCOLORREF,WORD,DWORD,DWORD,DWORD,DWORD);
  1014. } SORTNS;
  1015. #endif /*SO_DEFS.H*/