📄 editods.h
字号:
{
LSIG Header; /* Signature and Length */
WORD DataSize; /* Actual Size of metafile bits in bytes, ignoring any filler */
WORD SegSize; /* Size of segment, is equal to or larger than DataSize
if filler byte added to maintain word boundary */
/* PM Metafile Bits for this segment. Must be <= 64K bytes. */
} CDPMMETASEG;
/* MACIntosh Metafile (PICT) */
typedef struct
{
LSIG Header; /* Signature and Length */
RECTSIZE OriginalDisplaySize; /* Original display size of metafile in twips */
DWORD MetafileSize; /* Total size of metafile raw data in bytes */
WORD SegCount; /* Number of CDMACMETASEG records */
/* Metafile segments Follow */
} CDMACMETAHEADER;
typedef struct
{
LSIG Header; /* Signature and Length */
WORD DataSize; /* Actual Size of metafile bits in bytes, ignoring any filler */
WORD SegSize; /* Size of segment, is equal to or larger than DataSize
if filler byte added to maintain word boundary */
/* Metafile Bits for this segment */
} CDMACMETASEG;
#define CDIMAGETYPE_GIF 1
#define CDIMAGETYPE_JPEG 2
#define CDIMAGETYPE_BMP 3
typedef struct
{
LSIG Header; /* Signature and Length */
WORD ImageType; /* Type of image (e.g., GIF, JPEG) */
WORD Width; /* Width of the image (in pixels) */
WORD Height; /* Height of the image (in pixels) */
DWORD ImageDataSize; /* Size (in bytes) of the image data */
DWORD SegCount; /* Number of CDIMAGESEGMENT records expected to follow */
DWORD Flags; /* Flags (currently unused) */
DWORD Reserved; /* Reserved for future use */
} CDIMAGEHEADER;
typedef struct
{
LSIG Header; /* Signature and Length */
WORD DataSize; /* Actual Size of image bits in bytes, ignoring any filler */
WORD SegSize; /* Size of segment, is equal to or larger than DataSize
if filler byte added to maintain word boundary */
/* Image bits for this segment */
} CDIMAGESEGMENT;
typedef struct
{
LSIG Header; /* Signature and Length */
WORD FileExtLen; /* Length of file extenstion */
DWORD FileDataSize; /* Size (in bytes) of the file data */
DWORD SegCount; /* Number of CDFILESEGMENT records expected to follow */
DWORD Flags; /* Flags (currently unused) */
DWORD Reserved; /* Reserved for future use */
/* Variable length string follows (not null terminated). This
string is the file extension for the file. */
} CDFILEHEADER;
typedef struct
{
LSIG Header; /* Signature and Length */
WORD DataSize; /* Actual Size of image bits in bytes, ignoring any filler */
WORD SegSize; /* Size of segment, is equal to or larger than DataSize
if filler byte added to maintain word boundary */
DWORD Flags; /* currently unused, but someday someone will be happy this is here */
DWORD Reserved; /* Reserved for future use */
/* File bits for this segment */
} CDFILESEGMENT;
/* Document Record stored in $INFO field of a document. This contains
document-wide attributes. */
/* for FormFlags */
#define TPL_FLAG_REFERENCE 0x0001 /* Use Reference Note */
#define TPL_FLAG_MAIL 0x0002 /* Mail during DocSave */
#define TPL_FLAG_NOTEREF 0x0004 /* Add note ref. to "reference note" */
#define TPL_FLAG_NOTEREF_MAIN 0x0008 /* Add note ref. to main parent of "reference note" */
#define TPL_FLAG_RECALC 0x0010 /* Recalc when leaving fields */
#define TPL_FLAG_BOILERPLATE 0x0020 /* Store form item in with note */
#define TPL_FLAG_FGCOLOR 0x0040 /* Use foreground color to paint */
#define TPL_FLAG_SPARESOK 0x0080 /* Spare DWORDs have been zeroed */
#define TPL_FLAG_ACTIVATE_OBJECT_COMP 0x0100 /* Activate OLE objects when composing a new doc */
#define TPL_FLAG_ACTIVATE_OBJECT_EDIT 0x0200 /* Activate OLE objects when editing an existing doc */
#define TPL_FLAG_ACTIVATE_OBJECT_READ 0x0400 /* Activate OLE objects when reading an existing doc */
#define TPL_FLAG_SHOW_WINDOW_COMPOSE 0x0800 /* Show Editor window if TPL_FLAG_ACTIVATE_OBJECT_COMPOSE */
#define TPL_FLAG_SHOW_WINDOW_EDIT 0x1000 /* Show Editor window if TPL_FLAG_ACTIVATE_OBJECT_EDIT */
#define TPL_FLAG_SHOW_WINDOW_READ 0x2000 /* Show Editor window if TPL_FLAG_ACTIVATE_OBJECT_READ */
#define TPL_FLAG_UPDATE_RESPONSE 0x4000 /* V3 Updates become responses */
#define TPL_FLAG_UPDATE_PARENT 0x8000 /* V3 Updates become parents */
/* for FormFlags2 */
#define TPL_FLAG_INCLUDEREF 0x0001 /* insert copy of ref note */
#define TPL_FLAG_RENDERREF 0x0002 /* render ref (else it's a doclink) */
#define TPL_FLAG_RENDCOLLAPSE 0x0004 /* render it collapsed? */
#define TPL_FLAG_EDITONOPEN 0x0008 /* edit mode on open */
#define TPL_FLAG_OPENCNTXT 0x0010 /* open context panes */
#define TPL_FLAG_CNTXTPARENT 0x0020 /* context pane is parent */
#define TPL_FLAG_MANVCREATE 0x0040 /* manual versioning */
#define TPL_FLAG_UPDATE_SIBLING 0x0080 /* V4 versioning - updates are sibblings */
#define TPL_FLAG_ANONYMOUS 0x0100 /* V4 Anonymous form */
#define TPL_FLAG_NAVIG_DOCLINK_IN_PLACE 0x0200 /* Doclink dive into same window */
#define TPL_FLAG_INTERNOTES 0x0400 /* InterNotes special form */
#define TPL_FLAG_DISABLE_FX 0x0800 /* Disable FX for this doc*/
#define TPL_FLAG_NOMENUS 0x1000 /* Disable menus for this DOC */
#define TPL_FLAG_CHECKDISPLAY 0x2000 /* check display before displaying background */
#define TPL_FLAG_FORMISRTL 0x4000 /* This is a Right To Left Form */
#define TPL_FLAG_HIDEBKGRAPHIC 0x8000 /* hide background graphic in design mode */
/* for FormFlags3 */
#define TPL_FLAG_RESIZEHEADER 0x0001 /* editor resizes header area to contents */
#define TPL_FLAG_NOINITIALFOCUS 0x0002 /* No initial focus to any object on a form or page*/
#define TPL_FLAG_SIGNWHENSAVED 0x0004 /* Sign this document when it gets saved */
#define TPL_FLAG_NOFOCUSWHENF6 0x0008 /* No focus when doing F6 or tabbing. */
#define TPL_FLAG_RENDERPASSTHROUGH 0x0010 /* Render pass through HTML in the client. */
#define TPL_FLAG_NOADDFIELDNAMESTOINDEX 0x0020 /* Don't automatically add form fields to field index */
#define TPL_FLAG_CANAUTOSAVE 0x0040 /* Autosave Documents created using this form */
typedef struct {
BSIG Header;
WORD PaperColor; /* Color of the paper being used */
WORD FormFlags; /* Form Flags */
WORD NotePrivileges; /* Privs for notes created when using form */
/* WARNING!!! Fields below this comment were not zeroed in builds
prior to 100. A mechanism has been set up to use them however.
dload checks the TPL_FLAG_SPARESOK bit in the flags word. If it
is not set, all of the storage after this comment is zeroed. On
save, dsave makes sure the unused storage is zero and sets the bit. */
WORD FormFlags2; /* more Form Flags */
WORD InherFieldNameLength; /* Length of the name, which follows this struct */
WORD PaperColorExt; /* Palette Color of the paper being used. New in V4. */
#define ODS_COLOR_MASK 0x00FF /* Palette color is an index into a 240 entry table */
COLOR_VALUE PaperColorValue; /* Paper Color: As of v5.0 stored as RGB, other formats possible */
WORD FormFlags3;
WORD Spare[1];
/* ... now the Inherit Field Name string */
/* ... now the Text Field Name string indicating
which field to append version number to */
} CDDOCUMENT;
/* Header/Footer Record, stored in $HEADER and $FOOTER fields of a
document. This contains the header and footer used in the document. */
typedef struct {
WSIG Header;
BYTE FontPitchAndFamily;
char FontName[MAXFACESIZE];
FONTID Font;
WORD HeadLength; /* total header string length */
/* ... now comes the string */
} CDHEADER;
/* Font Table Record, stored in the $FONTS field of a document.
This contains the list of "non-standard" fonts used in the
document. */
typedef struct {
WSIG Header; /* Tag and length */
WORD Fonts; /* Number of CDFACEs following */
} CDFONTTABLE; /* Now come the CDFACE records... */
typedef struct {
BYTE Face; /* ID number of face */
BYTE Family; /* Font Family */
char Name[MAXFACESIZE];
} CDFACE;
typedef struct {
WSIG Header;
WORD NumberOfEntries;
} CDTEXTPROPERTIESTABLE;
#define MAX_TEXTSTYLE_NAME 128
#define MAX_ISO_LANG_SIZE 8 /* 2-letter ISO Language Code
'-'
2-letter ISO Country Code
'\0'
+ 1 to make it and even number
*/
typedef struct {
WSIG Header; /* Signature and length of this record */
char TextStyleName[MAX_TEXTSTYLE_NAME]; /* Text Style Name */
char LangName[MAX_ISO_LANG_SIZE]; /* Language Tagging information */
DWORD PropID;
/* There should be more info here */
DWORD Flags;
DWORD Reserved2;
DWORD Reserved3;
} CDTEXTPROPERTY;
/* Print settings data structure - (stored in desktop file per icon) */
typedef struct {
WORD Flags; /* PS_ flags below */
WORD StartingPageNum; /* Starting page number */
WORD TopMargin; /* Height between main body & top of page (TWIPS) */
WORD BottomMargin; /* Height between main body & bottom of page (TWIPS) */
WORD ExtraLeftMargin; /* Extra left margin width (TWIPS) */
/* (beyond whats already specified in document) */
WORD ExtraRightMargin; /* Extra right margin width (TWIPS) */
/* (beyond whats already specified in document) */
WORD HeaderMargin; /* Height between header & top of page (TWIPS) */
WORD FooterMargin; /* Height between footer & bottom of page (TWIPS) */
WORD PageWidth; /* Page width override (TWIPS) */
/* (0 = "use printer's page width") */
WORD PageHeight; /* Page height override (TWIPS) */
/* (0 = "use printer's page height") */
WORD BinFirstPage; /* Index of bin for 1st page */
WORD BinOtherPage; /* Index of bin for other pages */
DWORD spare[3]; /* (spare words) */
} PRINTNEW_SETTINGS;
typedef struct {
WORD Flags;
#ifdef LITTLE_ENDIAN_ORDER
#define PS_Initialized 0x0001 /* Print settings have been initialized */
#define PS_HeaderFooterOnFirst 0x0002 /* Print header/footer on first page */
#define PS_CropMarks 0x0004 /* Print crop marks */
#define PS_ChangeBin 0x0008 /* Paper source should be set for 1st & Other Pg. */
#define PS_HeaderFooterRTL 0x0010 /* Paper source should be set for 1st & Other Pg. */
#define PS_ReleaseRightMargin 0x0020 /* Release the right margin when printing (to print into gutter) */
#else
#define PS_Initialized 0x8000
#define PS_HeaderFooterOnFirst 0x4000
#define PS_CropMarks 0x2000
#define PS_ChangeBin 0x1000
#define PS_HeaderFooterRTL 0x0800 /* Paper source should be set for 1st & Other Pg. */
#define PS_ReleaseRightMargin 0x0400 /* Release the right margin when printing (to print into gutter) */
#endif
/* Note -- The sense of PS_ReleaseRightMargin is inverse so that zero will produce
R5 behaviour. PS_ReleaseRightMargin was introduced in R6. The bit not
being set means "do release right margin" (like R5 always does). If it
is set, we don't release the right margin, ie. we clip to right margin. */
WORD StartingPageNum; /* Starting page number */
WORD TopMargin; /* Height between main body & top of page (TWIPS) */
WORD BottomMargin; /* Height between main body & bottom of page (TWIPS) */
WORD ExtraLeftMargin; /* Extra left margin width (TWIPS) */
/* (beyond whats already specified in document) */
WORD ExtraRightMargin; /* Extra right margin width (TWIPS) */
/* (beyond whats already specified in document) */
WORD HeaderMargin; /* Height between header & top of page (TWIPS) */
WORD FooterMargin; /* Height between footer & bottom of page (TWIPS) */
WORD PageWidth; /* Page width override (TWIPS) */
/* (0 = "use printer's page width") */
WORD PageHeight; /* Page height override (TWIPS) */
/* (0 = "use printer's page height") */
WORD BinFirstPage;
WORD BinOtherPage;
WORD PageOrientation; /* New in R6. 0 = undefined, 1 = Portrait, 2 = Landscape */
#define PSPO_UNDEFINED 0x0000
#define PSPO_PORTRAIT 0x0001
#define PSPO_LANDSCAPE 0x0002
WORD wSpare; /* Spare word */
DWORD spare[2]; /* (spare dwords) */
} PRINT_SETTINGS;
/* Header/Footer data structure - passed into import/export modules */
typedef struct {
BYTE FontPitchAndFamily;
char FontName[MAXFACESIZE];
FONTID Font;
WORD HeadLength; /* string length not including '\0' */
/* Header string (ASCIIZ) follows */
} HEAD_DESC;
#define MAXHEADERSTRING 256 /* maximum header string size */
typedef struct { /* used for stack-local ones */
HEAD_DESC Desc;
char String[MAXHEADERSTRING]; /* Must be terminated by '\0' */
} HEAD_DESC_BUFFER;
/* DDE composite data On Disk structures */
#define DDESERVERNAMEMAX 32
#define DDEITEMNAMEMAX 64
#define DDESERVERCOMMANDMAX 256
typedef struct
{
WSIG Header; /* Signature and length of this record */
char ServerName[DDESERVERNAMEMAX]; /* Null terminated server name */
char TopicName[100]; /* Null terminated DDE Topic (usually a file name) */
char ItemName[DDEITEMNAMEMAX]; /* Null terminated Place reference string */
DWORD Flags; /* See DDEFLAGS_xxx flag definitions below */
char PasteEmbedDocName[80]; /* only used on when making new link during Paste Special */
WORD EmbeddedDocCount; /* Number of embedded docs for this link */
/* (MUST BE 0 or 1) */
WORD ClipFormat; /* Clipboard format with which data should be rendered */
/* (DDEFORMAT_xxx defined below) */
/* Null terminated embedded document name which is attached to the note follows.. */
}CDDDEBEGIN;
/* CDDDEBEGIN flags */
#define DDEFLAGS_AUTOLINK 0x01 /* Link type == Automatic (hot) */
#define DDEFLAGS_MANUALLINK 0x02 /* Link type == Manual (warm) */
#define DDEFLAGS_EMBEDDED 0x04 /* Embedded document exists */
#define DDEFLAGS_INITIATE 0x08 /* Used on paste to indicate not to
prompt user to initiate link */
#define DDEFLAGS_CDP 0x10 /* Used on paste to indicate that
server uses Compound Document
protocol */
#define DDEFLAGS_NOTES_LAUNCHED 0x20 /* Used on CDP paste/load to indicate that
Notes lauched app to establish
original conversation. */
#define DDEFLAGS_CONV_ACTIVE 0x40 /* Used on non-CDP paste/load to indicate that
conversation is already active
for this embedded doc */
#define DDEFLAGS_EMBEDEXTRACTED 0x80 /* Used on non-CDP paste/load to indicate
that Notes extracted the embedded
file so that we may later close
it */
#define DDEFLAGS_NEWOBJECT 0x100 /* Set if this DDE Range is a new
inserted object which contains
no embedded object yet, i.e. a
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -