PageRenderTime 119ms CodeModel.GetById 45ms app.highlight 64ms RepoModel.GetById 2ms app.codeStats 0ms

/Sources/sdk/sccop.h

http://github.com/Nashev/OracleOutsideIn4Delphi
C Header | 2189 lines | 1727 code | 211 blank | 251 comment | 0 complexity | b1d9deb09432da2c9ac8048ce0d514f3 MD5 | raw file

Large files files are truncated, but you can click here to view the full file

   1/* Copyright (c) 2001, 2010, Oracle and/or its affiliates. 
   2All rights reserved. */
   3/*
   4|   SCC Viewer Technology - Source file
   5|
   6|   File:           sccopt.h
   7|   Module:         SCC Common Options Model
   8|   Environment:    Portable
   9|   Function:       Common Options Model Structures and Macros
  10*/
  11
  12
  13#ifndef _SCCOPT_H
  14#define _SCCOPT_H
  15
  16#ifdef WINDOWS
  17#ifndef SCC_PACK_SET
  18#define SCC_PACK_SET 1
  19#define SCC_PACKED_BY_SCCOP_H 1
  20#pragma pack(push,8)
  21#endif /* SCC_PACK_SET */
  22#endif /* WINDOWS */
  23
  24#include "sccid.h"
  25#include "sccopval.h"
  26#include "baseio.h"
  27
  28#ifdef __cplusplus
  29extern "C"
  30{
  31#endif
  32
  33typedef VTHANDLE HOPTIONSET, * PHOPTIONSET;
  34
  35/* Used by VW for the tempfile naming callback */
  36typedef VTSYSVAL (IO_ENTRYMODPTR VWCALLBACKPROC)(VTSYSVAL,VTDWORD,VTDWORD,VTLPVOID);
  37
  38/* Used by redirect temp file callback */
  39typedef VTDWORD (IO_ENTRYMODPTR REDIRECTTEMPFILECALLBACKPROC)(HIOFILE *phFile,  VTVOID *pSpec,  VTDWORD dwFileFlags);
  40
  41
  42/*-----------------------------------------------------------------------------
  43|   IMPORTANT!!!!!                IMPORTANT!!!!!!                 IMPORTANT!!!
  44|
  45|   If you are adding an option, there are several things that must be done.
  46|   First of all, an SCCOPT_ must be added for it in sccop.h.  Any values that
  47|   the options will take must be defined in sccopval.h.  An entry for the
  48|   the option should be added to the structure that will track the option.
  49|   If the structure is an existing structure, a copy of it must be made and
  50|   given a name with the PREVIOUS release number in it.  This is done so that
  51|   when people upgrade to new technology, they will be able to keep their
  52|   existing options.  See UTLoadDefaultOptions for more info on this.
  53|   Lastly, make sure that the code to handle the option is in UTSetOption,
  54|   UTGetOption, and UTCopyOptionChanges.  If the option allocated memory,
  55|   make sure to handle it in UTFreeAllocatedOptions.  Also, do not forget to
  56|   add entries to the UTOPTIONDELTA struct so that we don't get any array
  57|   overruns.  Finally, please note that the global option set (gOptions) is
  58|   NOT to be written to except by UTSetGlobalOption or UTSetGlobalOptionSet.
  59|------------------------------------------------------------------------------
  60|   The UTOPTIONDELTA stuct contains an array of Option IDs which is used to
  61|   identify which options have been changed, so that they may be updated in
  62|   the global option set before it is saved to disk.  When adding options,
  63|   make sure that the size of this struct is increased if neccesary to account
  64|   for the increased number of options which may change.
  65|------------------------------------------------------------------------------
  66*/
  67/*
  68|-------------------------------------------------------------
  69|   Option numbers used are 1-132 (except for 11-14).
  70|   Option 98 is actually the character value.
  71|-------------------------------------------------------------
  72*/
  73
  74/*
  75|   Options callback Action IDs
  76*/
  77#define SCCOPT_CALLBACK_BEGIN                           0
  78#define SCCOPT_CALLBACK_END                             1
  79#define SCCOPT_CALLBACK_OPTION                          2
  80
  81#define SCCUT_FILENAMEMAX       256
  82
  83/*
  84|   O P T I O N   I D S
  85|   High nibble is flags, next three are the option ID, low word
  86|   is data size (0 = no intrinsic data size)
  87*/
  88
  89
  90#define SCCOPT_INVALID                                      0       /* Invalid option */
  91
  92/*
  93|   HTML/Wireless Export Options
  94*/
  95#define SCCOPT_EX_OUTPUTCHARACTERSET                        1       /* Output character set                                                     */
  96#define SCCOPT_EX_TEMPLATE                                  3       /* Template file                                                            */
  97#define SCCOPT_EX_FLAVOR                                    7       /* Output flavor                                                            */
  98#define SCCOPT_EX_USEDEFTIMEFORDRAMCOMPARE                  15      /* Use default Date/Time for Dramamine compare                              */
  99#define SCCOPT_EX_COMPLIANCEFLAGS                           27      /* Option flags for HTML Export                                             */
 100#define SCCOPT_EX_CHARBYTEORDER                             31      /* Describes what format of Unicode to use in HTML Export.                  */
 101#define SCCOPT_EX_UNICODECALLBACKSTR                        32      /* Determines whether callbacks should use the Unicode structs              */
 102#define SCCOPT_EX_NOSOURCEFORMATTING                        33      /* Determines whether the exported text is formatted for user readability   */
 103#define SCCOPT_EX_FALLBACKFONT                              35      /* Indicates the default font to use                                        */
 104#define SCCOPT_EX_SIMPLESTYLENAMES                          36      /* Discard invalid style names characters                                   */
 105#define SCCOPT_EX_TEXTBUFFERSIZE                            37      /* Size of the device's text/primary buffer in bytes                        */
 106#define SCCOPT_EX_GENBULLETSANDNUMS                         41      /* Generate list numbers instead of using list tags                         */
 107#define SCCOPT_EX_LABELFLAGS                                45      /* Flags for labeling text in WML                                           */
 108#define SCCOPT_EX_GRAPHICSKIPSIZE                           47      /* Skip graphics this size or smaller                                       */
 109#define SCCOPT_EX_GRAPHICBUFFERSIZE                         48      /* Size in bytes of the device's graphics buffer                            */
 110#define SCCOPT_EX_JAVASCRIPTTABS                            49      /* Using JavaScript to handle the tab stop                                  */
 111#define SCCOPT_EX_PAGESIZE                                  50      /* Page size in characters                                                  */
 112#define SCCOPT_EX_COLLAPSEWHITESPACE                        51      /* Remove excess whitespace                                                 */
 113#define SCCOPT_EX_MAXURLLENGTH                              52      /* Max. length of URLs in characters                                        */
 114#define SCCOPT_EX_SEPARATEGRAPHICSBUFFER                    53      /* Use separate buffer for graphics                                         */
 115#define SCCOPT_EX_CALLBACKS                                 54      /* Use callback flags to turn on/off individual EX callbacks                */
 116#define SCCOPT_EX_GRIDROWS                                  55      /* Number of rows in a grid                                                 */
 117#define SCCOPT_EX_GRIDCOLS                                  56      /* Number of columns in a grid                                              */
 118#define SCCOPT_EX_GRIDADVANCE                               57      /* Indicates the traversal direction of a grid when using next/previous     */
 119#define SCCOPT_EX_GRIDWRAP                                  58      /* Indicates that sheet traversal should continue when an edge is reached   */
 120#define SCCOPT_EX_PREVENTGRAPHICOVERLAP                     59      /* Prevent graphics from overlapping                                        */
 121#define SCCOPT_EX_FONTFLAGS                                 60      /* Option flags to suppress different font attributes                       */
 122#define SCCOPT_EX_SHOWHIDDENTEXT                            79      /* Show hidden text                                                         */
 123#define SCCOPT_EX_EXTRACTEMBEDDEDFILES                      94      /* extraction of the attachments */
 124#define SCCOPT_EX_SHOWHIDDENSSDATA                          95      /* Show hidden rows, columns and sheets for the spread sheet                */
 125#define SCCOPT_EX_CHANGETRACKING                            96      /* Export the tracking change for the word processing document              */
 126#define SCCOPT_EX_SHOWSPREADSHEETBORDER                     97      /* Show spreadsheet border                                                  */
 127#define SCCOPT_EX_SSDBROWCOLHEADINGS                        106     /* Show row and columns headings                                            */
 128#define SCCOPT_EX_SSDBBORDERS                               107     /* Show SS/DB border                                                        */
 129#define SCCOPT_EX_SUPPRESSMETADATA                          131     /* PHTML only - suppress output of input file metadata                      */
 130
 131/* XML Export options */
 132#define SCCOPT_XML_DEF_METHOD                               61      /* XML definition method                                                    */
 133#define SCCOPT_XML_DEF_REFERENCE                            62      /* Path to XML definition file                                              */
 134#define SCCOPT_XML_SEARCHML_FLAGS                           63      /* Option flags for XML Export                                              */
 135#define SCCOPT_XML_SEARCHML_UNMAPPEDTEXT                    109     /* Control production of unmapped text in SearchML.                         */
 136#define SCCOPT_CA_FLAGS               SCCOPT_XML_SEARCHML_FLAGS     /* Option flags for CA.  Actually an alias for similar SearchML flags.      */
 137#define SCCOPT_CA_XMLOUTPUT                                 105     /*  CATest should produce UTF8 encoded XML output.  */
 138
 139/*  SearchML options.  */
 140#define SCCOPT_XML_SEARCHML_CHAR_ATTRS                      75      /*  The character attributes to track                                       */
 141#define SCCOPT_XML_SEARCHML_PARA_ATTRS                      76      /*  The paragraph attributes to track                                       */
 142#define SCCOPT_XML_SEARCHML_OFFSET                          77      /*  Should offset be tracked?                                               */
 143#define SCCOPT_XML_NULLREPLACECHAR                          102     /*  Replace null path separator characters with this character.             */
 144
 145/* PageML options */
 146#define SCCOPT_XML_PAGEML_FLAGS                             64      /* Option flags for PageML                                                  */
 147#define SCCOPT_XML_PAGEML_PRINTERNAME                       74      /* Option for the format device for the PageML                              */
 148
 149/* EXXML option.  (EXXML is the XML Writer that consumes from the XChunker) */
 150#define SCCOPT_EXXML_SUBSTREAMROOTS                         78      /* A wide string consisting of comma-delimited substrings                   */
 151#define SCCOPT_EXXML_DEF_METHOD                             91      /* XML definition method for EXXML                                          */
 152#define SCCOPT_EXXML_DEF_REFERENCE                          92      /* Path to XML definition file for EXXML                                    */
 153
 154/* CCFLEX options (Chunker to Flexiondoc component) */
 155#define SCCOPT_CCFLEX_FULLYATTRIBUTESTYLES                  85      /* TRUE to fully attribute styles                                           */
 156#define SCCOPT_CCFLEX_REMOVECURRENTPOINT                    86      /* TRUE to remove references to current point in vector output              */
 157#define SCCOPT_CCFLEX_REMOVEFONTGROUPS                      87      /* TRUE to replace font groups with references to individual fonts          */
 158#define SCCOPT_CCFLEX_INCLUDETEXTOFFSETS                    88      /* TRUE to include text_offset attribute on tx.p and tx.r elements          */
 159#define SCCOPT_CCFLEX_EXTRACTEMBEDDINGS                     89      /* List of FI Id's for embeddings to extract without conversion             */
 160#define SCCOPT_CCFLEX_CONVERTEMBEDDINGS                     90      /* List of FI Id's for embeddings to extract and convert. Converted to type */
 161                                                                    /* specified by SCCOPT_GRAPHIC_TYPE                                         */
 162#define SCCOPT_CCFLEX_FORMATOPTIONS                         99      /* Options for how to convert various formats - see sccopval.h              */
 163#define SCCOPT_CCFLEX_UNITS                                 111     /* Measurement units to use - see sccopval.h                                */
 164
 165/* CCOD options (Flexiondoc to Open Document component) */
 166#define SCCOPT_CCOD_GRAPHICOPTIONS                          110
 167
 168/* these are left for backward compatibility */
 169#define SCCOPT_OUTPUTCHARACTERSET                           1
 170#define SCCOPT_HTML_OUTPUTCHARACTERSET                      1
 171#define SCCOPT_HTML_TEMPLATE                                3
 172#define SCCOPT_HTML_FLAVOR                                  7
 173#define SCCOPT_USE_DEFAULTS_FOR_DRAMAMINE_COMPARE           15
 174#define SCCOPT_HTML_ENABLEPSCALLBACK                        16      /* HTML Export option to enable publishing server callback **UNUSED**       */
 175#define SCCOPT_HTML_FLAGS                                   27
 176#define SCCOPT_CHARBYTEORDER                                31
 177#define SCCOPT_UNICODECALLBACKSTR                           32
 178#define SCCOPT_NO_SOURCEFORMATTING                          33
 179#define SCCOPT_HTML_FALLBACKFONT                            35
 180#define SCCOPT_SIMPLESTYLENAMES                             36
 181#define SCCOPT_HTML_SIMPLESTYLENAMES                        36
 182#define SCCOPT_WML_DECKSIZE                                 37
 183#define SCCOPT_HTML_GENBULLETSANDNUMS                       41
 184#define SCCOPT_WML_OUTPUTCHARACTERSET                       42
 185#define SCCOPT_WML_TEMPLATE                                 43      /* mapped to SCCOPT_EX_TEMPLATE */
 186#define SCCOPT_WML_FLAVOR                                   44
 187#define SCCOPT_WML_LABELFLAGS                               45
 188#define SCCOPT_HTML_JAVASCRIPTTABS                          49
 189#define SCCOPT_WML_GRAPHICSKIPSIZE                          47
 190#define SCCOPT_HTML_PAGESIZE                                50
 191#define SCCOPT_WML_COLLAPSEWHITESPACE                       51
 192#define SCCOPT_WML_MAXURLLENGTH                             52
 193
 194/*
 195|  General graphic options
 196*/
 197#define SCCOPT_GRAPHIC_WIDTH                                4       /* Width in pixels of exported graphic */
 198#define SCCOPT_GRAPHIC_HEIGHT                               5       /* Height in pixels of exported graphic */
 199#define SCCOPT_GRAPHIC_TYPE                                 6       /* Graphic output type */
 200#define SCCOPT_HTML_GRAPHICTYPE                             6       /* for backward compatibility */
 201#define SCCOPT_GRAPHIC_FLAGS                                19      /* Flags that specify whether aspect ratio should be */
 202                                                                    /* maintained, and whether the image should be centered. */
 203#define SCCOPT_GRAPHIC_CROP                                 8
 204#define SCCOPT_GRAPHIC_XDPI                                 25
 205#define SCCOPT_GRAPHIC_YDPI                                 26
 206#define SCCOPT_GRAPHIC_OUTPUTDPI                            34      /* Output DPI for exported images ... if supplied! */
 207#define SCCOPT_GDSF_DEFAULTGRAPHICONERROR                   29
 208#define SCCOPT_GRAPHIC_SIZELIMIT                            38      /* Maximum size of exported graphics in pixels */
 209#define SCCOPT_GRAPHIC_WIDTHLIMIT                           39      /* Maximum width of exported graphic  - overrides SCCOPT_GRAPHIC_WIDTH */
 210#define SCCOPT_GRAPHIC_HEIGHTLIMIT                          40      /* Maximum height of exported graphic - overrides SCCOPT_GRAPHIC_HEIGHT */
 211#define SCCOPT_GRAPHIC_PAGENUMBER                           80
 212#define SCCOPT_GRAPHIC_LASTPAGE                             81
 213#define SCCOPT_GRAPHIC_MULTIPAGE                            82
 214#define SCCOPT_GRAPHIC_IMAGEEXPORT                          83
 215#define SCCOPT_IMAGEX_TIFFOPTIONS                           84
 216#define SCCOPT_ACCEPT_ALT_GRAPHICS                          93
 217#define SCCOPT_GRAPHIC_TRANSPARENCYCOLOR                    103
 218#define SCCOPT_GRAPHIC_CROPPING                             104
 219
 220#define SCCOPT_GRAPHIC_WATERMARK_OPACITY                    113
 221#define SCCOPT_GRAPHIC_WATERMARK_POSITION                   114
 222#define SCCOPT_GRAPHIC_WATERMARK_SCALETYPE                  115
 223#define SCCOPT_GRAPHIC_WATERMARK_SCALEPERCENT               116
 224#define SCCOPT_GRAPHIC_WATERMARK_SCALEHEIGHT                117
 225#define SCCOPT_GRAPHIC_WATERMARK_SCALEWIDTH                 118
 226#define SCCOPT_GRAPHIC_WATERMARK_HORIZONTALPOS              119
 227#define SCCOPT_GRAPHIC_WATERMARK_VERTICALPOS                120
 228#define SCCOPT_GRAPHIC_WATERMARK_PATH                       121
 229#define SCCOPT_GRAPHIC_WATERMARK_IOTYPE                     122
 230#define SCCOPT_GRAPHIC_WATERMARK_FUTURE1                    123
 231#define SCCOPT_GRAPHIC_WATERMARK_FUTURE2                    124
 232#define SCCOPT_GRAPHIC_WATERMARK_FUTURE3                    125
 233#define SCCOPT_GRAPHIC_WATERMARK_FUTURE4                    126
 234/*  Skip 127 here because it is used elsewhere for an option acutally in use  .  */
 235#define SCCOPT_GRAPHIC_WATERMARK_FUTURE5                    128
 236
 237
 238
 239/*
 240|   General options
 241*/
 242#define SCCOPT_FALLBACKFORMAT                               2       /* Fallback format options                                                  */
 243#define SCCOPT_UNMAPPABLECHAR                               98      /* Sets the unmappable Unicode character                                    */
 244#define SCCOPT_FORMATFLAGS                                  SCCID_FORMATFLAGS     /* Generic bit field for flags applicable to a wide range of products.  ISO formatting of Date/Times for example.  */
 245
 246/*
 247|   RAINBOW OPTIONS - NB 3/17/97
 248*/
 249#define SCCOPT_RAINBOW_DATADIRECTORY                        9       /* directory location of FCM and PEM Files */
 250#define SCCOPT_RAINBOW_CONVERSION_SEL                       10      /* Defines which section types get converted */
 251
 252/*
 253|   GIF export options
 254*/
 255#define SCCOPT_GIF_INTERLACED                               17      /* Interlaced or non-interlaced GIF output */
 256#define SCCOPT_GIF_SPLASHPALETTE                            28      /* Use splash palette for GIF (turn off for quantization) */
 257
 258/*
 259|   JPEG export options
 260*/
 261#define SCCOPT_JPEG_QUALITY                                 18      /* Quality of JPEG output (0-100) - 100 means high quality, */
 262                                                                    /* less compression. */
 263/*
 264|   TIF export options
 265*/
 266#define SCCOPT_TIFF_FORMAT                                  20
 267#define SCCOPT_TIFF_COMPRESSION                             21
 268#define SCCOPT_TIFF_COLORTRANSITION                         22
 269#define SCCOPT_TIFF_XRESOLUTION                             23
 270#define SCCOPT_TIFF_YRESOLUTION                             24
 271
 272/*
 273|   Graphic sizing option
 274|   (DWORD) Algorithm to use when sizing graphics. The smoothing
 275|   algorithm takes approximately twice as long as the quick
 276|   algorithm for color images and 25% longer for grayscale.
 277*/
 278#define SCCOPT_GRAPHIC_SIZEMETHOD                           30
 279#define SCCOPT_GRAPHICSIZEMETHOD                            30      /* for backward compatibility */
 280
 281#define	SCCOPT_QUICKTHUMBNAIL								130
 282
 283/* New Stack Buffer Overrun handler option */
 284#define SCCOPT_USENEWSBOHANDLER                             108
 285
 286/* Option for setting the disk I/O buffer sizes              */
 287#define SCCOPT_IO_BUFFERSIZE                                112
 288
 289/* Option for extract XML metadata from filter */
 290#define SCCOPT_EXTRACTXMPMETADATA                                   127
 291/*OCR Options*/
 292#define SCCOPT_OCR_TECH                                     65
 293#define SCCOPT_OCR_QUALITY                                  66
 294
 295
 296/* Redirect temp file option */
 297#define SCCOPT_REDIRECTTEMPFILE                              67            
 298
 299/* Lotus Notes directory. NSF import filter option. */     
 300#define SCCOPT_LOTUSNOTESDIRECTORY                          132
 301
 302/*
 303|   General Viewer Technology Options
 304|
 305|   These are all defined to be the same as their VW equivalents,
 306|   but they don't have to be.  I just did this for neatness' sake.
 307|
 308*/
 309#define SCCOPT_RESOURCELIBRARYID                            SCCID_RESOURCELIBRARYID
 310#define SCCOPT_DEFAULTDISPLAYFONT                           SCCID_DEFAULTDISPLAYFONT
 311#define SCCOPT_PRINTHEADER                                  SCCID_PRINTHEADER
 312#define SCCOPT_DEFAULTPRINTMARGINS                          SCCID_DEFAULTPRINTMARGINS
 313#define SCCOPT_DEFAULTPRINTFONT                             SCCID_DEFAULTPRINTFONT
 314#define SCCOPT_PRINTHEADERFONT                              SCCID_PRINTHEADERFONT
 315#define SCCOPT_PRINTINFO                                    SCCID_PRINTINFO
 316#define SCCOPT_PRINTJOBNAME                                 SCCID_PRINTJOBNAME
 317#define SCCOPT_WHATTOPRINT                                  SCCID_WHATTOPRINT
 318#define SCCOPT_PRINTSTARTPAGE                               SCCID_PRINTSTARTPAGE
 319#define SCCOPT_PRINTENDPAGE                                 SCCID_PRINTENDPAGE
 320#define SCCOPT_PRINTCOLLATE                                 SCCID_PRINTCOLLATE
 321#define SCCOPT_PRINTCOPIES                                  SCCID_PRINTCOPIES
 322#define SCCOPT_HAVESELECTION                                SCCID_HAVESELECTION
 323#define SCCOPT_USEDOCPAGESETTINGS                           SCCID_USEDOCPAGESETTINGS
 324
 325/*
 326|   Added to avoid namespace collisions with the original SCCOPT_FALLBACKFORMAT.
 327*/
 328#define SCCOPT_FALLBACKFORMAT_VT                            SCCID_FALLBACKFORMAT
 329
 330/*
 331|   Added to avoid namespace collisions with the original SCCOPT_UNMAPPABLECHAR.
 332*/
 333#define SCCOPT_UNMAPPABLECHAR_VT                            SCCID_UNMAPPABLECHAR
 334
 335#define SCCOPT_DEFAULTINPUTCHARSET                          SCCID_DEFAULTINPUTCHARSET
 336
 337/*
 338|   Font Options
 339*/
 340#define SCCOPT_FONTSCALINGFACTOR                            SCCID_FONTSCALINGFACTOR
 341#define SCCOPT_DISPLAYFONTALIAS                             SCCID_DISPLAYFONTALIAS
 342#define SCCOPT_PRINTFONTALIAS                               SCCID_PRINTFONTALIAS
 343#define SCCOPT_ORIGFONTSCALINGFACTOR                        SCCID_ORIGFONTSCALINGFACTOR
 344#define SCCOPT_FONTFILTER                                   SCCID_FONTFILTER
 345/*
 346|   Document Options
 347*/
 348#define SCCOPT_WPDISPLAYMODE                                SCCID_WPDISPLAYMODE
 349#define SCCOPT_WPZOOM                                       SCCID_WPZOOM
 350#define SCCOPT_WPFITMODE                                    SCCID_WPFITMODE
 351#define SCCOPT_WPWRAPTOWINDOW                               SCCID_WPWRAPTOWINDOW
 352#define SCCOPT_WPPRINTMODE                                  SCCID_WPPRINTMODE
 353#define SCCOPT_WPDISABLEHYPERLINKS                          SCCID_WPDISABLEHYPERLINKS
 354#define SCCOPT_WPDISABLEPOSITIONALFRAMES                    SCCID_WPDISABLEPOSITIONALFRAMES
 355#define SCCOPT_WPDISABLEEMAILHEADER							SCCID_WPDISABLEEMAILHEADER
 356
 357/*
 358|   Bitmap Options
 359*/
 360#define SCCOPT_BMPROTATION                                  SCCID_BMPROTATION
 361#define SCCOPT_BMPPRINTASPECT                               SCCID_BMPPRINTASPECT
 362#define SCCOPT_BMPPRINTBORDER                               SCCID_BMPPRINTBORDER
 363#define SCCOPT_BMPDITHER                                    SCCID_BMPDITHER
 364#define SCCOPT_BMPFITMODE                                   SCCID_BMPFITMODE
 365#define SCCOPT_BMPZOOM                                      SCCID_BMPZOOM
 366#define SCCOPT_BMPSHOWFULLSCREEN                            SCCID_BMPSHOWFULLSCREEN
 367#define SCCOPT_BMPZOOMEVENT                                 SCCID_BMPZOOMEVENT
 368#define SCCOPT_BMPDITHERAVAILABLE                           SCCID_BMPDITHERAVAILABLE
 369
 370/*
 371|   Vector Options
 372*/
 373#define SCCOPT_VECPRINTASPECT                               SCCID_VECPRINTASPECT
 374#define SCCOPT_VECPRINTBORDER                               SCCID_VECPRINTBORDER
 375#define SCCOPT_VECFITMODE                                   SCCID_VECFITMODE
 376#define SCCOPT_VECZOOM                                      SCCID_VECZOOM
 377#define SCCOPT_VECSHOWFULLSCREEN                            SCCID_VECSHOWFULLSCREEN
 378#define SCCOPT_VECZOOMEVENT                                 SCCID_VECZOOMEVENT
 379#define SCCOPT_VECSHOWBACKGROUND                            SCCID_VECSHOWBACKGROUND
 380#define SCCOPT_VECPRINTBACKGROUND                           SCCID_VECPRINTBACKGROUND
 381#define SCCOPT_VECDRAFTMODE                                 SCCID_VECDRAFTMODE
 382
 383/*
 384|   Spreadsheet Options
 385*/
 386#define SCCOPT_SSSHOWGRIDLINES                              SCCID_SSSHOWGRIDLINES
 387#define SCCOPT_SSPRINTGRIDLINES                             SCCID_SSPRINTGRIDLINES
 388#define SCCOPT_SSPRINTHEADINGS                              SCCID_SSPRINTHEADINGS
 389#define SCCOPT_SSCLIPBOARD                                  SCCID_SSCLIPBOARD
 390#define SCCOPT_SSBADTYPE                                    SCCID_SSBADTYPE
 391#define SCCOPT_SSDRAFTMODE                                  SCCID_SSDRAFTMODE
 392#define SCCOPT_SSPRINTFITTOPAGE                             SCCID_SSPRINTFITTOPAGE
 393#define SCCOPT_SSPRINTSCALEPERCENT                          SCCID_SSPRINTSCALEPERCENT
 394#define SCCOPT_SSPRINTSCALEXHIGH                            SCCID_SSPRINTSCALEXHIGH
 395#define SCCOPT_SSPRINTSCALEXWIDE                            SCCID_SSPRINTSCALEXWIDE
 396#define SCCOPT_SSPRINTDIRECTION                             SCCID_SSPRINTDIRECTION
 397#define SCCOPT_SSSHOWHEADINGS                               SCCID_SSSHOWHEADINGS
 398#define SCCOPT_SS4DIGITDATES                                SCCID_SS4DIGITDATES
 399#define SCCOPT_SSSHOWHIDDENCELLS                            SCCID_SSSHOWHIDDENCELLS
 400
 401/*IX specific SS/DB options*/
 402#define SCCOPT_MAXSSDBPAGEWIDTH                             100
 403#define SCCOPT_MAXSSDBPAGEHEIGHT                            101
 404/*
 405|   Database options
 406*/
 407#define SCCOPT_DBSHOWGRIDLINES                              SCCID_DBSHOWGRIDLINES
 408#define SCCOPT_DBPRINTGRIDLINES                             SCCID_DBPRINTGRIDLINES
 409#define SCCOPT_DBPRINTHEADINGS                              SCCID_DBPRINTHEADINGS
 410#define SCCOPT_DBCLIPBOARD                                  SCCID_DBCLIPBOARD
 411#define SCCOPT_DBFIELDNAMESTOCLIP                           SCCID_DBFIELDNAMESTOCLIP
 412#define SCCOPT_DBDRAFTMODE                                  SCCID_DBDRAFTMODE
 413#define SCCOPT_DBPRINTFITTOPAGE                             SCCID_DBPRINTFITTOPAGE
 414/*
 415|PDF Export Filter options
 416*/
 417#define SCCOPT_APPLYFILTER                                  SCCID_APPLYFILTER
 418#define SCCOPT_DOLINEARIZATION                              SCCID_DOLINEARIZATION
 419/*
 420|   Watermark options
 421*/
 422#define SCCOPT_ENABLEWATERMARK                              SCCID_ENABLEWATERMARK
 423#define SCCOPT_WATERMARKPOSITION                            SCCID_WATERMARKPOSITION
 424#define SCCOPT_WATERMARKIO                                  SCCID_WATERMARKIO
 425
 426/*
 427|   Page layout options
 428*/
 429#define SCCOPT_DEFAULTPAGESIZE                              SCCID_DEFAULTPAGESIZE
 430#define SCCOPT_FONTDIRECTORY                                SCCID_FONTDIRECTORY
 431#define SCCOPT_EMBEDFONTS                                   SCCID_EMBEDFONTS
 432/*
 433|   Clipboard Options
 434*/
 435#define SCCOPT_TOCLIPBOARD                                  SCCID_TOCLIPBOARD
 436#define SCCOPT_DEFAULTCLIPBOARDFONT                         SCCID_DEFAULTCLIPBOARDFONT
 437
 438/*
 439|   System Options
 440*/
 441#define SCCOPT_DIALOGFLAGS                                  SCCID_DIALOGFLAGS
 442#define SCCOPT_SYSTEMFLAGS                                  SCCID_SYSTEMFLAGS
 443#define SCCOPT_INTLFLAGS                                    SCCID_INTLFLAGS
 444#define SCCOPT_SCROLLFLAGS                                  SCCID_SCROLLFLAGS
 445#define SCCOPT_OLEFLAGS                                     SCCID_OLEFLAGS
 446#define SCCOPT_FIFLAGS                                      SCCID_FIFLAGS
 447#define SCCOPT_TEMPDIR                                      SCCID_TEMPDIR
 448#define SCCOPT_NATIVEFILTERFLAG                             SCCID_NATIVEFILTERFLAG
 449#define SCCOPT_TEMPFUNC                                     SCCID_TEMPFUNC
 450#define SCCOPT_DOCUMENTMEMORYMODE							SCCID_DOCUMENTMEMORYMODE
 451
 452#define SCCOPT_RENDERING_PREFER_OIT                         SCCID_RENDERING_PREFER_OIT
 453
 454
 455/* compression licensing options (to disable patented methods) */
 456
 457#define SCCOPT_FILTERLZW                                    SCCID_FILTERLZW
 458#define SCCOPT_FILTERJPG                                    SCCID_FILTERJPG
 459
 460/* Option to turn off pagebreaks... For example, on very large system dumps. Used by the text filter. */
 461#define SCCOPT_ASCIIFILTERPAGEOFF									SCCID_ASCIIFILTERPAGEOFF
 462
 463/* Excel option to disable putting out blank cells after last valid data cell */
 464#define SCCOPT_FILTERNOBLANK                                SCCID_FILTERNOBLANK
 465
 466/* Option to ignore verification of the PST File password */
 467#define SCCOPT_IGNORE_PASSWORD                              SCCID_IGNORE_PASSWORD
 468
 469/* Mime option to restrict the number of viewable email headers.*/
 470/* depreciating SCCOPT_WPMIMEHEADEROUTPUT, but leaving it for backward compatibility */
 471#define SCCOPT_WPMIMEHEADEROUTPUT							SCCID_WPMIMEHEADEROUTPUT
 472#define SCCOPT_WPEMAILHEADEROUTPUT							SCCID_WPEMAILHEADEROUTPUT
 473
 474/* antialiasing options */
 475#define SCCOPT_ANTIALIAS                                    SCCID_ANTIALIAS
 476
 477/* Option to enable output of full TIFF/EXIF properties */
 478#define SCCOPT_FILTEREXIFFULL                               SCCID_FILTEREXIFFULL
 479
 480/*
 481|   Archive Flags
 482*/
 483#define SCCOPT_ARCSAVEEVENT                                 SCCID_ARCSAVEEVENT
 484#define SCCOPT_ARCSORTORDER                                 SCCID_ARCSORTORDER
 485#define SCCOPT_ARCOUTPUTPATH                                SCCID_ARCOUTPUTPATH
 486#define SCCOPT_ARCFLAGS                                     SCCID_ARCFLAGS
 487#define SCCOPT_ARCSAVETHIS                                  SCCID_ARCSAVETHIS
 488#define SCCOPT_ARCVIEWTHIS                                  SCCID_ARCVIEWTHIS
 489#define SCCOPT_ARCFULLPATH                                  SCCID_ARCFULLPATH
 490#define SCCOPT_ARCRENAME                                    SCCID_ARCRENAME
 491
 492/*
 493|   International Options
 494*/
 495#define SCCOPT_NUMBERFORMAT                                 SCCID_NUMBERFORMAT
 496#define SCCOPT_DAYNAMES                                     SCCID_DAYNAMES
 497#define SCCOPT_MONTHNAMES                                   SCCID_MONTHNAMES
 498
 499#define SCCOPT_TIMEZONE                                     SCCID_TIMEZONE
 500
 501/*
 502|   Bidirectional Text Options
 503*/
 504#define SCCOPT_REORDERMETHOD                                SCCID_REORDERMETHOD
 505
 506/*
 507|   Unix Options file name option
 508*/
 509#define SCCOPT_GETUNIXOPTIONSFILENAME                       SCCID_GETUNIXOPTIONSFILENAME
 510
 511/*
 512|   Option for running filter in optimized mode
 513*/
 514#define SCCOPT_FILTERPERFORMANCE                            SCCID_FILTERPERFORMANCE
 515#define SCCOPT_ENABLEALLSUBOBJECTS                          SCCID_ENABLEALLSUBOBJECTS   /* This will override filter performance */
 516#define SCCOPT_FILTERRESERVED                               SCCID_FILTERRESERVED
 517
 518/* 
 519|   Option for filter handle xmp metadata 
 520*/
 521#define SCCOPT_PARSEXMPMETADATA                             SCCID_PARSEXMPMETADATA
 522
 523/*
 524|   Structures used for options.
 525*/
 526typedef struct SCCUTPRINTMARGINStag
 527{
 528    VTDWORD dwTop;
 529    VTDWORD dwBottom;
 530    VTDWORD dwLeft;
 531    VTDWORD dwRight;
 532} SCCUTPRINTMARGINS, * PSCCUTPRINTMARGINS;
 533
 534typedef struct SCCUTTEMPDIRSPECtag
 535{
 536    VTDWORD dwSize;
 537    VTDWORD dwSpecType;
 538    VTTCHAR szTempDirName[SCCUT_FILENAMEMAX];
 539} SCCUTTEMPDIRSPEC, * PSCCUTTEMPDIRSPEC;
 540
 541typedef struct SCCUTTEMPFILSPECtag
 542{
 543    VTLPVOID pViewInfo;
 544    VWCALLBACKPROC pCallback;
 545/*
 546|   For now, dwCallbackData will only be valid when an export app uses this
 547|   structure.
 548*/
 549    VTDWORD dwCallbackData;
 550} SCCUTTEMPFILSPEC, * PSCCUTTEMPFILSPEC;
 551
 552/*
 553|   Struct used by OI Export filters to recieve the default font.
 554*/
 555#define SCCUT_MAXFALLBACKFONTLEN    40      /* Max len of *pName in characters (not bytes) */
 556typedef struct SCCUTFALLBACKFONTtag
 557{
 558    VTLPVOID pName;
 559    VTWORD   wType;
 560} SCCUTFALLBACKFONT, * LPSCCUTFALLBACKFONT;
 561
 562typedef struct SCCUTFONTSPECtag
 563{
 564    VTTCHAR szFace[40];
 565    VTWORD wHeight;
 566    VTWORD wAttr;
 567    VTWORD wType;
 568} SCCUTFONTSPEC, * LPSCCUTFONTSPEC;
 569
 570#define SCCUT_FONTALIAS_COUNT               0x0001
 571#define SCCUT_FONTALIAS_ALIASNAME           0x0002
 572#define SCCUT_FONTALIAS_GETALIASBYID        0x0004
 573#define SCCUT_FONTALIAS_GETALIASID          0x0008
 574#define SCCUT_FONTALIAS_REMOVEALIASBYID     0x0010
 575#define SCCUT_FONTALIAS_REMOVEALIASBYNAME   0x0020
 576#define SCCUT_FONTALIAS_REMOVEALL           0x0040
 577#define SCCUT_FONTALIAS_USEDEFAULTS         0x0080
 578
 579#define SCCUT_FONTNAMEMAX                   128
 580#define SCCUT_MAXFONTMAPENTRIES             100
 581#define SCCUT_MAXALIASES                     16
 582
 583typedef struct SCCUTFONTALIAS832tag
 584{
 585    VTDWORD dwSize;                                         /* sizeof(SCCUTFONTALIAS) */
 586    VTDWORD dwAliasID;                                      /* ID of the aliasing in the current list of aliases */
 587    VTDWORD dwFlags;                                        /* set of flags */
 588    VTWORD  szwOriginal[SCCUT_FONTNAMEMAX];                 /* original name of the font */
 589    VTWORD  szwAlias[SCCUT_FONTNAMEMAX];                    /* new font name to use in place of original name */
 590} SCCUTFONTALIAS832, * PSCCUTFONTALIAS832;
 591
 592typedef struct SCCUTFONTALIAStag
 593{
 594    VTDWORD dwSize;                                           /* sizeof( SCCUTFONTALIAS ) */
 595    VTDWORD dwAliasID;                                        /* ID of the aliasing in the current list of aliases */
 596    VTDWORD dwFlags;                                          /* set of flags */
 597    VTWORD  szwOriginal[ SCCUT_FONTNAMEMAX ];                 /* original name of the font */
 598    VTWORD  szwAlias[ SCCUT_FONTNAMEMAX * SCCUT_MAXALIASES ]; /* new font name(s) to use in place of original name */
 599} SCCUTFONTALIAS, * PSCCUTFONTALIAS;
 600
 601typedef struct SCCUTFONTALIASMAPtag
 602{
 603    VTDWORD     dwCount;                                /* number of entries in the map */
 604    VTHANDLE    hOriginal[SCCUT_MAXFONTMAPENTRIES];     /* memory handles for original font names */
 605    VTHANDLE    hAlias[SCCUT_MAXFONTMAPENTRIES];        /* memory handles for alias font names */
 606    VTLPWORD    szwOriginal[SCCUT_MAXFONTMAPENTRIES];   /* array of all the original font names */
 607    VTLPWORD    szwAlias[SCCUT_MAXFONTMAPENTRIES];      /* array of all the alias font names */
 608} SCCUTFONTALIASMAP, * PSCCUTFONTALIASMAP;
 609
 610typedef struct FONTNAMELISTtag *PFONTNAMELIST;
 611typedef struct FONTNAMELISTtag
 612{
 613    VTBYTE          szFontName[SCCUT_FILENAMEMAX];          /* Name of font to include or exclude*/
 614    PFONTNAMELIST   pNextFont;                              /* Pointer to a FONTNAMELIST structure that contains the name of the next font to include or exclude*/   
 615}FONTNAMELIST;
 616
 617typedef struct FONTFILTERLISTtag
 618{
 619    VTBOOL          bExclude;                               /* If true then the accompaning font list is an exclusion list, if false the list is an inclusion list*/
 620    PFONTNAMELIST   pFontList;                              /* Pointer to a FONTNAMELIST structure that contains the names of the fonts to include or exclude*/
 621}FONTFILTERLIST;
 622
 623typedef struct SCCUTUNIXOPTIONSFILEINFOtag
 624{
 625    VTDWORD dwSize;                                         /* sizeof(SCCVWUNIXOPTIONSFILEINFO) */
 626    VTBYTE  szFName[SCCUT_FILENAMEMAX];                     /* array holding the name of the options file */
 627}SCCUTUNIXOPTIONSFILEINFO;
 628
 629typedef struct SCCUTIMAGEZOOMtag
 630{
 631    VTDWORD  dwXNu;
 632    VTDWORD  dwXDe;
 633    VTDWORD  dwYNu;
 634    VTDWORD  dwYDe;
 635} SCCUTIMAGEZOOM, * PSCCUTIMAGEZOOM;
 636
 637#define SCCUT_RESOURCEIDMAX 6
 638typedef struct SCCUTRESOURCEIDtag
 639{
 640    VTDWORD dwSize;                                         /* sizeof(SCCVWRESOURCEID) */
 641    VTTCHAR szResourceID[SCCUT_RESOURCEIDMAX];              /* 0-5 character ID defining version of the LO DLL w/ unique resources */
 642} SCCUTRESOURCEID, * PSCCUTRESOURCEID;
 643
 644typedef struct SCCUTNUMBERFORMAT775tag
 645{
 646    VTTCHAR cDecimalSep;
 647    VTTCHAR cThousandSep;
 648    VTTCHAR cDateSep;
 649    VTTCHAR cTimeSep;
 650    VTTCHAR szCurrencySymbol[8];
 651    VTTCHAR szAM[8];
 652    VTTCHAR szPM[8];
 653    VTDWORD dwNumBytesAM;  /* store the number of bytes in the "AM" string */
 654    VTDWORD dwNumBytesPM;  /* store the number of bytes in the "PM" string */
 655    VTWORD wCurrencyPosition;
 656    VTWORD wShortDateOrder;
 657} SCCUTNUMBERFORMAT775, * PSCCUTNUMBERFORMAT775;
 658
 659typedef struct SCCUTNUMBERFORMATtag
 660{
 661    VTTCHAR cDecimalSep;
 662    VTTCHAR cThousandSep;
 663    VTTCHAR cDateSep;
 664    VTTCHAR cTimeSep;
 665    VTTCHAR szCurrencySymbol[8];
 666    VTTCHAR szAM[8];
 667    VTTCHAR szPM[8];
 668    VTDWORD dwNumBytesAM;  /* store the number of bytes in the "AM" string */
 669    VTDWORD dwNumBytesPM;  /* store the number of bytes in the "PM" string */
 670    VTWORD  wCurrencyPosition;
 671    VTWORD  wShortDateOrder;
 672    VTWORD  wShortDateYearDigits;
 673    VTWORD  wShortDateMonthDigits;
 674    VTWORD  wShortDateDayDigits;
 675    VTWORD  wShortDateFlags;
 676} SCCUTNUMBERFORMAT, * PSCCUTNUMBERFORMAT;
 677
 678typedef struct SCCUTDAYNAMEStag
 679{
 680    VTWORD aFullNames[7][16];
 681    VTWORD aAbbrevNames[7][16];
 682} SCCUTDAYNAMES, * PSCCUTDAYNAMES;
 683
 684typedef struct SCCUTMONTHNAMEStag
 685{
 686    VTWORD aFullNames[13][16];
 687    VTWORD aAbbrevNames[13][16];
 688} SCCUTMONTHNAMES, * PSCCUTMONTHNAMES;
 689
 690typedef struct SCCUTTIFFOPTIONStag
 691{
 692    VTDWORD dwFormat;
 693    VTDWORD dwCompression;
 694    VTDWORD dwColorTransition;
 695    VTDWORD XResolution;
 696    VTDWORD YResolution;
 697} SCCUTTIFFOPTIONS, * PSCCUTTIFFOPTIONS;
 698
 699typedef struct
 700{
 701    VTDWORD     dwSize;
 702    VTDWORD     dwColorSpace;
 703    VTDWORD     dwCompression;
 704    VTDWORD     dwByteOrder;
 705    VTDWORD     dwTIFFFlags;
 706    VTDWORD     dwFillOrder;
 707} EXTIFFOPTIONS, * LPEXTIFFOPTIONS;
 708
 709typedef struct WATERMARKPOStag
 710{
 711    VTDWORD dwWatermarkPos;
 712    VTLONG  lVerticalPos;
 713    VTLONG  lHorizontalPos;
 714}WATERMARKPOS, *LPWATERMARKPOS;
 715
 716typedef struct WATERMARKPATHtag
 717{
 718    VTCHAR  szWaterMarkPath[SCCUT_FILENAMEMAX];
 719    VTDWORD dwMaxSize;
 720}WATERMARKPATH, *LPWATERMARKPATH; 
 721
 722typedef struct WATERMARKIOtag
 723{
 724    VTVOID*         phDoc;
 725    VTDWORD         dwType;
 726    WATERMARKPATH   Path;
 727    VTDWORD         dwScalingMethod;
 728    VTDWORD         dwScalePercent;
 729}WATERMARKIO, *LPWATERMARKIO; 
 730
 731typedef struct DEFAULTPAGESIZEtag
 732{
 733    VTFLOAT fHeight;
 734    VTFLOAT fWidth;
 735    VTDWORD wUnits;
 736}DEFAULTPAGESIZE, *LPDEFAULTPAGESIZE;
 737
 738#define  MAX_DEF_REFERENCE_LENGTH  1024
 739
 740typedef struct SCCUTXXDEFREFtag
 741{
 742    VTDWORD dwSize;
 743    VTBYTE  utf8RefName[MAX_DEF_REFERENCE_LENGTH];
 744}SCCUTXXDEFREFINFO;
 745
 746#define SCCUTFORMATLIST_LENGTH  128
 747
 748typedef struct SCCUTFORMATLISTtag
 749{
 750    VTDWORD   dwSize;
 751    VTDWORD   dwFormats[SCCUTFORMATLIST_LENGTH];
 752} SCCUTFORMATLIST, * PSCCUTFORMATLIST;
 753
 754
 755/* Here lies the structure/values to support the SCCOPT_IO_BUFFERSIZE option */
 756
 757typedef struct SCCBUFFEROPTIONStag
 758{
 759    VTDWORD dwReadBufferSize;   /* size of the default I/O Read buffer in KB        */
 760    VTDWORD dwMMapBufferSize;   /* size of the default I/O Memory Map buffer in KB  */
 761    VTDWORD dwTempBufferSize;   /* Maximum amount of in-memory cache per file in KB */
 762    VTDWORD dwFlags;            /* set flags                                        */
 763} SCCBUFFEROPTIONS, *PSCCBUFFEROPTIONS;
 764
 765/* dwFlags values */
 766#define SCCBUFOPT_SET_READBUFSIZE   1
 767#define SCCBUFOPT_SET_MMAPBUFSIZE   2
 768#define SCCBUFOPT_SET_TEMPBUFSIZE   4
 769
 770/* stock buffer sizes in KB */
 771#define SCCBUFOPT_DEFAULT_READBUFSIZE      2
 772#define SCCBUFOPT_DEFAULT_MMAPBUFSIZE   8192
 773#define SCCBUFOPT_DEFAULT_TEMPBUFSIZE   2048
 774
 775#define SCCBUFOPT_MIN_READBUFSIZE          1
 776#define SCCBUFOPT_MIN_MMAPBUFSIZE          0
 777#define SCCBUFOPT_MIN_TEMPBUFSIZE          0
 778
 779#define SCCBUFOPT_MAX_READBUFSIZE 0x003fffff
 780#define SCCBUFOPT_MAX_MMAPBUFSIZE 0x003fffff
 781#define SCCBUFOPT_MAX_TEMPBUFSIZE 0x003fffff
 782
 783
 784/*
 785|   General Structures Used in Option Processing
 786|
 787|   Note:   If you change a struct, the old struct must be kept.
 788|           Name it UTSTRUCTNAMEXXX where XXX is the previous release.
 789|           Then, create a copy of the UTOPTIONS struct (named UTOPTIONSXXX),
 790|           and replace UTSTRUCTNAME with UTSTRUCTNAMEXXX.  This is so that
 791|           new versions of the technology can read in old options files.
 792|           Also, add new members to structs at the END of the struct!
 793*/
 794
 795typedef struct UTPRINTOPTIONStag
 796{
 797    SCCUTPRINTMARGINS sMargins;
 798    VTBOOL            bHeader;
 799    SCCUTFONTSPEC     sHeaderFont;
 800    SCCUTFONTSPEC     sDefaultFont;
 801    VTDWORD           dwWhatToPrint;
 802    VTDWORD           dwStartPage;
 803    VTDWORD           dwEndPage;
 804    VTBOOL            bCollate;
 805    VTDWORD           dwCopies;
 806    VTTCHAR           szJobName[128];
 807    VTBOOL            bUseDocPageSettings;
 808    SCCUTFONTALIASMAP sFontAlias;
 809} UTPRINTOPTIONS, * PUTPRINTOPTIONS;
 810
 811typedef struct UTDISPLAYOPTIONS521tag
 812{
 813    SCCUTFONTSPEC     sDefaultFont;
 814    VTDWORD           dwFallbackFormat;
 815    VTBOOL            bHaveSelection;
 816    VTWORD            wDummy;
 817    VTDWORD           aDummy[5];
 818    VTDWORD           dwScaleFactor;        /* ranges from 40 to 300, with 100 as the default */
 819    VTDWORD           dwOriginalFontScale;
 820    SCCUTFONTALIASMAP sFontAlias;
 821} UTDISPLAYOPTIONS521, * PUTDISPLAYOPTIONS521;
 822
 823typedef struct UTDISPLAYOPTIONStag
 824{
 825    SCCUTFONTSPEC     sDefaultFont;
 826    VTDWORD           dwFallbackFormat;
 827    VTBOOL            bHaveSelection;
 828    VTWORD            wDummy;
 829    VTDWORD           aDummy[5];
 830    VTDWORD           dwScaleFactor;        /* ranges from 40 to 300, with 100 as the default */
 831    VTDWORD           dwOriginalFontScale;
 832    SCCUTFONTALIASMAP sFontAlias;
 833    VTDWORD           dwReorderMethod;
 834} UTDISPLAYOPTIONS, * PUTDISPLAYOPTIONS;
 835
 836typedef struct UTSSOPTIONS75tag
 837{
 838    VTDWORD dwClipboard;
 839    VTBOOL  bShowGridlines;
 840    VTBOOL  bPrintGridlines;
 841    VTBOOL  bPrintHeadings;
 842    VTDWORD dwPrintFitToPage;
 843    VTBOOL  bDraftMode;
 844    VTDWORD dwPrintScalePercent;
 845    VTDWORD dwPrintScaleXWide;
 846    VTDWORD dwPrintScaleXHigh;
 847    VTDWORD dwPrintDirection;
 848} UTSSOPTIONS75, * PUTSSOPTIONS75;
 849
 850typedef struct UTSSOPTIONS832tag
 851{
 852    VTDWORD dwClipboard;
 853    VTBOOL  bShowGridlines;
 854    VTBOOL  bPrintGridlines;
 855    VTBOOL  bPrintHeadings;
 856    VTDWORD dwPrintFitToPage;
 857    VTBOOL  bDraftMode;
 858    VTDWORD dwPrintScalePercent;
 859    VTDWORD dwPrintScaleXWide;
 860    VTDWORD dwPrintScaleXHigh;
 861    VTDWORD dwPrintDirection;
 862    VTBOOL  bShowHeadings;
 863} UTSSOPTIONS832, *PUTSSOPTIONS832;
 864
 865typedef struct UTSSOPTIONStag
 866{
 867    VTDWORD dwClipboard;
 868    VTDWORD dwPrintFitToPage;
 869    VTDWORD dwPrintScalePercent;
 870    VTDWORD dwPrintScaleXWide;
 871    VTDWORD dwPrintScaleXHigh;
 872    VTDWORD dwPrintDirection;
 873    VTDWORD dwSSFlags;
 874} UTSSOPTIONS, *PUTSSOPTIONS;
 875
 876typedef struct UTDBOPTIONStag
 877{
 878    VTDWORD dwClipboard;
 879    VTBOOL  bShowGridlines;
 880    VTBOOL  bPrintGridlines;
 881    VTBOOL  bClipboardHeadings;
 882    VTBOOL  bPrintHeadings;
 883    VTBOOL  bFieldNamesToClip;
 884    VTDWORD dwPrintFitToPage;
 885    VTBOOL  bDraftMode;
 886} UTDBOPTIONS, * PUTDBOPTIONS;
 887
 888typedef struct UTWATERMARKOPTIONStag
 889{
 890    VTBOOL          bEnableWatermark;
 891    WATERMARKPOS    WatermarkPos;
 892    WATERMARKIO     WatermarkIO;
 893} UTWATERMARKOPTIONS, *PUTWATERMARKOPTIONS;
 894
 895typedef struct UTWPOPTIONS820tag
 896{
 897	VTDWORD			dwMode;
 898	SCCUTIMAGEZOOM	sZoom;
 899	VTDWORD			dwFitMode;
 900	VTDWORD			dwWrapToWindow;
 901	VTBOOL 			bDraftPrintMode;
 902	VTBOOL 			bDisableHyperlinks;
 903	VTBOOL 			bDisablePositionalFrames;
 904} UTWPOPTIONS820, * PUTWPOPTIONS820;
 905
 906typedef struct UTWPOPTIONStag
 907{
 908    VTDWORD         dwMode;
 909    SCCUTIMAGEZOOM  sZoom;
 910    VTDWORD         dwFitMode;
 911    VTDWORD         dwWrapToWindow;
 912    VTBOOL          bDraftPrintMode;
 913    VTBOOL          bDisableHyperlinks;
 914    VTBOOL          bDisablePositionalFrames;
 915	VTDWORD			dwWPFlags;
 916} UTWPOPTIONS, * PUTWPOPTIONS;
 917
 918typedef struct UTARCOPTIONS600tag
 919{
 920    VTDWORD dwSaveEvent;
 921    VTDWORD dwSortOrder;
 922    VTDWORD dwArcFlags;
 923    VTTCHAR  szOutputDir[260];
 924} UTARCOPTIONS600, * PUTARCOPTIONS600;
 925
 926typedef struct UTARCOPTIONS77tag
 927{
 928    VTDWORD dwSaveEvent;
 929    VTDWORD dwSortOrder;
 930    VTDWORD dwArcFlags;
 931    VTTCHAR szOutputDir[260];
 932    VTBOOL  bFullPath;
 933} UTARCOPTIONS77, * PUTARCOPTIONS77;
 934
 935typedef struct UTARCOPTIONStag
 936{
 937    VTDWORD dwSaveEvent;
 938    VTDWORD dwSortOrder;
 939    VTDWORD dwArcFlags;
 940    VTTCHAR szOutputDir[260];
 941    VTBOOL  bFullPath;
 942    VTDWORD dwPromptDiag;
 943} UTARCOPTIONS, * PUTARCOPTIONS;
 944
 945typedef struct UTBMPOPTIONStag
 946{
 947    VTDWORD             dwFitMode;
 948    SCCUTIMAGEZOOM      sZoom;
 949    VTDWORD             dwRotation;
 950    VTBOOL              bDither;
 951    VTBOOL              bDitherAvailable;
 952    VTDWORD             dwPrintAspect;
 953    VTBOOL              bPrintBorder;
 954    VTBOOL              bShowFullScreen;
 955    VTDWORD             dwZoomEvent;
 956} UTBMPOPTIONS, * PUTBMPOPTIONS;
 957
 958typedef struct UTVECOPTIONStag
 959{
 960    VTDWORD             dwFitMode;
 961    SCCUTIMAGEZOOM      sZoom;
 962    VTDWORD             dwPrintAspect;
 963    VTBOOL              bPrintBorder;
 964    VTBOOL              bShowFullScreen;
 965    VTDWORD             dwZoomEvent;
 966    VTBOOL              bShowBackground;
 967    VTBOOL              bPrintBackground;
 968    VTBOOL              bDraftMode;
 969} UTVECOPTIONS, * PUTVECOPTIONS;
 970
 971typedef struct UTOPTIONDELTA521tag
 972{
 973    VTDWORD dwCount;
 974    VTDWORD aChanges[20];
 975} UTOPTIONDELTA521, * PUTOPTIONDELTA521;
 976
 977/* NB! If this number is incremented, a legacy UTOPTIONDELTA structure must be
 978 * created. Back in 832 it was incremented by 1, so we need to track that. If
 979 * you need a larger options delta structure, make it *much* larger (200?) so
 980 * we don't need to mess with this again in the near future.
 981 */
 982#define SCCUT_MAX_OPTIONTRACK830    120
 983#define SCCUT_MAX_OPTIONTRACK       121
 984
 985typedef struct UTOPTIONDELTAtag830
 986{
 987    VTDWORD dwCount;
 988    VTDWORD aChanges[SCCUT_MAX_OPTIONTRACK830];
 989} UTOPTIONDELTA830, * PUTOPTIONDELTA830;
 990
 991typedef struct UTOPTIONDELTAtag
 992{
 993    VTDWORD dwCount;
 994    VTDWORD aChanges[SCCUT_MAX_OPTIONTRACK];
 995} UTOPTIONDELTA, * PUTOPTIONDELTA;
 996
 997typedef struct UTCLIPOPTIONStag
 998{
 999    VTDWORD         dwToClipboard;
1000    SCCUTFONTSPEC   sDefaultFont;
1001} UTCLIPOPTIONS, * PUTCLIPOPTIONS;
1002
1003typedef struct UTSYSTEMOPTIONS521tag
1004{
1005    VTDWORD         dwDialogFlags;
1006    VTDWORD         dwSystemFlags;
1007    VTDWORD         dwIntlFlags;
1008    VTDWORD         dwScrollFlags;
1009    VTDWORD         dwHardOptions;
1010    VTDWORD         dwOleFlags;
1011    SCCUTRESOURCEID sResourceLibraryID;
1012} UTSYSTEMOPTIONS521, * PUTSYSTEMOPTIONS521;
1013
1014typedef struct UTSYSTEMOPTIONS610tag
1015{
1016    VTDWORD         dwDialogFlags;
1017    VTDWORD         dwSystemFlags;
1018    VTDWORD         dwIntlFlags;
1019    VTDWORD         dwScrollFlags;
1020    VTDWORD         dwHardOptions;
1021    VTDWORD         dwOleFlags;
1022    SCCUTRESOURCEID sResourceLibraryID;
1023    VTWORD          wUnmappableChar;
1024    VTDWORD         dwFIFlags;
1025} UTSYSTEMOPTIONS610, * PUTSYSTEMOPTIONS610;
1026
1027typedef struct UTSYSTEMOPTIONS70tag
1028{
1029    VTDWORD          dwDialogFlags;
1030    VTDWORD          dwSystemFlags;
1031    VTDWORD          dwIntlFlags;
1032    VTDWORD          dwScrollFlags;
1033    VTDWORD          dwHardOptions;
1034    VTDWORD          dwOleFlags;
1035    SCCUTRESOURCEID  sResourceLibraryID;
1036    VTWORD           wUnmappableChar;
1037    VTDWORD          dwFIFlags;
1038    SCCUTTEMPDIRSPEC sTempDirName;
1039    VTBOOL           bUseNativeFilter;
1040} UTSYSTEMOPTIONS70, * PUTSYSTEMOPTIONS70;
1041
1042typedef struct UTSYSTEMOPTIONS71tag
1043{
1044    VTDWORD          dwDialogFlags;
1045    VTDWORD          dwSystemFlags;
1046    VTDWORD          dwIntlFlags;
1047    VTDWORD          dwScrollFlags;
1048    VTDWORD          dwHardOptions;
1049    VTDWORD          dwOleFlags;
1050    SCCUTRESOURCEID  sResourceLibraryID;
1051    VTWORD           wUnmappableChar;
1052    VTDWORD          dwFIFlags;
1053    SCCUTTEMPDIRSPEC sTempDirName;
1054    VTBOOL           bUseNativeFilter;
1055    SCCUTTEMPFILSPEC sTmpNameCallback;
1056
1057} UTSYSTEMOPTIONS71, * PUTSYSTEMOPTIONS71;
1058
1059typedef struct UTSYSTEMOPTIONS77tag
1060{
1061    VTDWORD          dwDialogFlags;
1062    VTDWORD          dwSystemFlags;
1063    VTDWORD          dwIntlFlags;
1064    VTDWORD          dwScrollFlags;
1065    VTDWORD          dwHardOptions;
1066    VTDWORD          dwOleFlags;
1067    SCCUTRESOURCEID  sResourceLibraryID;
1068    VTWORD           wUnmappableChar;
1069    VTDWORD          dwFIFlags;
1070    SCCUTTEMPDIRSPEC sTempDirName;
1071    VTBOOL           bUseNativeFilter;
1072    SCCUTTEMPFILSPEC sTmpNameCallback;
1073    VTDWORD          dwFilterFlags;
1074
1075} UTSYSTEMOPTIONS77, * PUTSYSTEMOPTIONS77;
1076
1077typedef struct UTSYSTEMOPTIONS80tag
1078{
1079    VTDWORD          dwDialogFlags;
1080    VTDWORD          dwSystemFlags;
1081    VTDWORD          dwIntlFlags;
1082    VTDWORD          dwScrollFlags;
1083    VTDWORD          dwHardOptions;
1084    VTDWORD          dwOleFlags;
1085    SCCUTRESOURCEID  sResourceLibraryID;
1086    VTWORD           wUnmappableChar;
1087    VTDWORD          dwFIFlags;
1088    SCCUTTEMPDIRSPEC sTempDirName;
1089    VTBOOL           bUseNativeFilter;
1090    SCCUTTEMPFILSPEC sTmpNameCallback;
1091    VTDWORD          dwFilterFlags;
1092    VTBOOL           bRenderingPreferOIT;
1093
1094} UTSYSTEMOPTIONS80, * PUTSYSTEMOPTIONS80;
1095
1096typedef struct UTSYSTEMOPTIONS81tag
1097{
1098    VTDWORD          dwDialogFlags;
1099    VTDWORD          dwSystemFlags;
1100    VTDWORD          dwIntlFlags;
1101    VTDWORD          dwScrollFlags;
1102    VTDWORD          dwHardOptions;
1103    VTDWORD          dwOleFlags;
1104    SCCUTRESOURCEID  sResourceLibraryID;
1105    VTWORD           wUnmappableChar;
1106    VTDWORD          dwFIFlags;
1107    SCCUTTEMPDIRSPEC sTempDirName;
1108    VTBOOL           bUseNativeFilter;
1109    SCCUTTEMPFILSPEC sTmpNameCallback;
1110    VTDWORD          dwFilterFlags;
1111    VTBOOL           bRenderingPreferOIT;
1112
1113} UTSYSTEMOPTIONS81, * PUTSYSTEMOPTIONS81;
1114
1115typedef struct UTSYSTEMOPTIONS82tag
1116{
1117    VTDWORD          dwDialogFlags;
1118    VTDWORD          dwSystemFlags;
1119    VTDWORD          dwIntlFlags;
1120    VTDWORD          dwScrollFlags;
1121    VTDWORD          dwHardOptions;                
1122    VTDWORD          dwOleFlags;
1123    SCCUTRESOURCEID  sResourceLibraryID;
1124    VTWORD           wUnmappableChar;
1125    VTDWORD          dwFIFlags;
1126    SCCUTTEMPDIRSPEC sTempDirName;
1127    VTBOOL           bUseNativeFilter;
1128    SCCUTTEMPFILSPEC sTmpName

Large files files are truncated, but you can click here to view the full file