⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 editods.h

📁 IBM Lotus C++ API 7.0a for IBM Lotus Notes/Domino Directory Release --------- ------------------
💻 H
📖 第 1 页 / 共 5 页
字号:
	{
	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 + -