You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
252 lines
5.6 KiB
252 lines
5.6 KiB
enum DESCRIPTOR_TYPE
|
|
{
|
|
TYPE_FILE,
|
|
TYPE_INTERFACE,
|
|
TYPE_EVAL,
|
|
TYPE_ENUM,
|
|
TYPE_CLASS,
|
|
TYPE_IMPLEMENTS,
|
|
TYPE_PROPERTY,
|
|
TYPE_METHOD,
|
|
TYPE_METHOD_ARG,
|
|
TYPE_REFPROP,
|
|
TYPE_REFMETHOD,
|
|
TYPE_EVENT,
|
|
TYPE_IMPORT,
|
|
TYPE_TEAROFF,
|
|
TYPE_TEAROFFMETHOD,
|
|
TYPE_STRUCT,
|
|
TYPE_STRUCTMEMBER,
|
|
NUM_DESCRIPTOR_TYPES
|
|
};
|
|
|
|
enum
|
|
{
|
|
FILE_TAG
|
|
};
|
|
|
|
enum
|
|
{
|
|
INTERFACE_NAME,
|
|
INTERFACE_SUPER,
|
|
INTERFACE_GUID,
|
|
INTERFACE_ABSTRACT,
|
|
INTERFACE_CUSTOM,
|
|
INTERFACE_NOPRIMARYTEAROFF
|
|
};
|
|
|
|
enum
|
|
{
|
|
EVAL_NAME,
|
|
EVAL_VALUE,
|
|
EVAL_STRING,
|
|
EVAL_ODLNAME
|
|
};
|
|
|
|
enum
|
|
{
|
|
ENUM_NAME,
|
|
ENUM_PREFIX,
|
|
ENUM_GUID,
|
|
ENUM_HIDDEN
|
|
};
|
|
|
|
enum
|
|
{
|
|
CLASS_NAME,
|
|
CLASS_SUPER,
|
|
CLASS_INTERFACE,
|
|
CLASS_GUID,
|
|
CLASS_ABSTRACT,
|
|
CLASS_COCLASSNAME,
|
|
CLASS_EVENTS,
|
|
CLASS_CASCADEDMETHODS,
|
|
CLASS_NOAAMETHODS,
|
|
CLASS_KEEPNOPERSIST,
|
|
CLASS_NOCPC,
|
|
CLASS_CONTROL,
|
|
CLASS_MONDOGUID,
|
|
CLASS_NONPRIMARYEVENTS1,
|
|
CLASS_NONPRIMARYEVENTS2,
|
|
CLASS_NONPRIMARYEVENTS3,
|
|
CLASS_NONPRIMARYEVENTS4,
|
|
};
|
|
|
|
enum
|
|
{
|
|
IMPLEMENTS_NAME,
|
|
IMPLEMENTS_GUID
|
|
};
|
|
|
|
enum
|
|
{
|
|
PROPERTY_NAME,
|
|
PROPERTY_ATYPE,
|
|
PROPERTY_DISPID,
|
|
PROPERTY_TYPE,
|
|
PROPERTY_MEMBER,
|
|
PROPERTY_GET,
|
|
PROPERTY_SET,
|
|
PROPERTY_BINDABLE,
|
|
PROPERTY_DISPLAYBIND,
|
|
PROPERTY_DWFLAGS,
|
|
PROPERTY_ABSTRACT,
|
|
PROPERTY_PPFLAGS,
|
|
PROPERTY_NOTPRESENTDEFAULT,
|
|
PROPERTY_NOTSETDEFAULT,
|
|
PROPERTY_MIN,
|
|
PROPERTY_MAX,
|
|
PROPERTY_GETSETMETHODS,
|
|
PROPERTY_HELP,
|
|
PROPERTY_VT,
|
|
PROPERTY_CAA,
|
|
PROPERTY_OBJECT,
|
|
PROPERTY_INDEX,
|
|
PROPERTY_INDEX1,
|
|
PROPERTY_INDEXTYPE,
|
|
PROPERTY_INDEXTYPE1,
|
|
PROPERTY_SZATTRIBUTE,
|
|
PROPERTY_HIDDEN,
|
|
PROPERTY_NONBROWSABLE,
|
|
PROPERTY_RESTRICTED,
|
|
PROPERTY_SUBOBJECT,
|
|
PROPERTY_PARAM1,
|
|
PROPERTY_PRECALLFUNCTION,
|
|
PROPERTY_ENUMREF,
|
|
PROPERTY_VIRTUAL,
|
|
PROPERTY_GETAA,
|
|
PROPERTY_SETAAHR,
|
|
PROPERTY_SOURCE,
|
|
PROPERTY_MINOUT,
|
|
PROPERTY_CASCADED,
|
|
PROPERTY_UPDATECOLLECTION,
|
|
PROPERTY_SCRIPTLET,
|
|
PROPERTY_CLEARCACHES,
|
|
PROPERTY_STYLEPROP,
|
|
PROPERTY_DONTUSENOTASSIGN,
|
|
PROPERTY_RESIZE, // parent calls calcsize
|
|
PROPERTY_REMEASURE, // remeasure your contents
|
|
PROPERTY_REMEASUREALL, // remeasure self and all nested layouts
|
|
PROPERTY_SITEREDRAW,
|
|
PROPERTY_SETDESIGNMODE, // Writeable only at Design time
|
|
PROPERTY_INVALIDASNOASSIGN,
|
|
PROPERTY_NOTPRESENTASDEFAULT,
|
|
PROPERTY_THUNKCONTEXT,
|
|
PROPERTY_THUNKNODECONTEXT,
|
|
PROPERTY_BASEIMPLEMENTATION,
|
|
PROPERTY_NOPERSIST, // replaces PPFLAGS:PROPPARAM_NOPERSIST
|
|
PROPERTY_INTERNAL, // Don't include in propertydesc array
|
|
PROPERTY_REFDTOCLASS, // Internal to remember the class that the refprop is to.
|
|
PROPERTY_MAXSTRLEN, // Used in vtable computation.
|
|
PROPERTY_NOPROPDESC, // indicates this property doesn't participate in the mondo
|
|
PROPERTY_EXCLUSIVETOSCRIPT, // expose this property on primary interface if any name clashes in
|
|
// other supported interfaces.
|
|
PROPERTY_SZINTERFACEEXPOSE, // Expose this method name for the interface should be used in
|
|
// conjunction with nopropdesc.
|
|
PROPERTY_DATAEVENT, // non-abstract property calls put_DataEvent instead of put_Variant
|
|
PROPERTY_ACCESSIBILITYSTATE,// the property is an accessibility state.
|
|
PROPERTY_CUSTOMENUM // enum property - becomes a string treated as an url
|
|
};
|
|
|
|
enum
|
|
{
|
|
METHODARG_NAME, // Never used
|
|
METHODARG_ATYPE,
|
|
METHODARG_TYPE,
|
|
METHODARG_IN,
|
|
METHODARG_OUT,
|
|
METHODARG_ARGNAME,
|
|
METHODARG_RETURNVALUE,
|
|
METHODARG_DEFAULTVALUE,
|
|
METHODARG_OPTIONAL
|
|
};
|
|
|
|
enum
|
|
{
|
|
METHOD_NAME, // Name of the Method
|
|
METHOD_RETURNTYPE,
|
|
METHOD_DISPID,
|
|
METHOD_ABSTRACT,
|
|
METHOD_VIRTUAL,
|
|
// This slot is used internaly to store the class that was refproped.
|
|
// Whether the method is refd to a class or not - need this for
|
|
// DISPID Generation. Also, for vtable computation.
|
|
METHOD_REFDTOCLASS,
|
|
METHOD_VARARG,
|
|
METHOD_CANCELABLE,
|
|
METHOD_BUBBLING,
|
|
METHOD_RESTRICTED,
|
|
METHOD_THUNKCONTEXT,
|
|
METHOD_THUNKNODECONTEXT,
|
|
METHOD_MAXSTRLEN,
|
|
METHOD_NOPROPDESC, // indicates this method isn't exposed in DISPInterface or primary interface.
|
|
METHOD_EXCLUSIVETOSCRIPT, // expose this property on primary interface if any name clashes in
|
|
// other supported interfaces.
|
|
METHOD_SZINTERFACEEXPOSE // Expose this method name for the interface should be used in
|
|
// conjunction with nopropdesc.
|
|
};
|
|
|
|
enum
|
|
{
|
|
REFPROP_NAME, // Never used
|
|
REFPROP_CLASSNAME,
|
|
REFPROP_PROPERTYNAME
|
|
};
|
|
|
|
enum
|
|
{
|
|
REFMETHOD_NAME, // Never used
|
|
REFMETHOD_CLASSNAME,
|
|
REFMETHOD_METHODNAME
|
|
};
|
|
|
|
enum
|
|
{
|
|
EVENT_NAME,
|
|
EVENT_SUPER,
|
|
EVENT_GUID,
|
|
EVENT_ABSTRACT
|
|
};
|
|
|
|
enum
|
|
{
|
|
IMPORT_NAME
|
|
};
|
|
|
|
enum
|
|
{
|
|
TEAROFF_NAME,
|
|
TEAROFF_INTERFACE,
|
|
TEAROFF_BASEIMPL
|
|
};
|
|
|
|
enum
|
|
{
|
|
TEAROFFMETHOD_NAME,
|
|
TEAROFFMETHOD_MAPTO
|
|
};
|
|
|
|
enum
|
|
{
|
|
STRUCT_NAME,
|
|
};
|
|
|
|
enum
|
|
{
|
|
STRUCTMEMBER_NAME,
|
|
STRUCTMEMBER_TYPE
|
|
};
|
|
|
|
extern AssociateDataType DataTypes[];
|
|
extern Associate vt[];
|
|
extern TokenDescriptor *AllDescriptors[ NUM_DESCRIPTOR_TYPES ];
|
|
extern TokenDescriptor MethodArgDescriptor;
|
|
extern CCachedAttrArrayInfo rgCachedAttrArrayInfo[];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|