2004-03-02 Martin Fuchs <martin-fuchs@gmx.net>

* include/oleauto.h (VAR_VALIDDATE, VAR_FORMAT_NOSUBSTITUTE,
	VAR_FOURDIGITYEARS) Define new constants. Group VAR_*  defines
	together
	(V_UI2, V_UI4, V_UI4REF, V_UI, V_UI8REF) Define macros.
	(V_I8, V_I8REF): Correct macros.
	(V_DECIMAL): Correct macro deginitions.
	(V_INT_PTR, V_UINT_PTR, V_INT_PTRREF, V_UINT_PTRREF): Define
	constants.
	(VTBIT_*): Define constants.
	(UDATE): Add structure definition.
	(VarDateFromUdate, VarDateFromUdateEx, VarUdateFromDate): Declare
	functions.
	(SafeArrayCreateVector): Correct parameter type from UINT to ULONG
	(SafeArrayCreateVectorEx): Declare function.
	(Var*): declare VARIANT manipulation functions.
	* include/ocidl.h (IPicture_*): Define IPicture COBJ macros.
	* include/oaidl.h (IRecordInfo_*): Define IRecordInfo COBJ
	macros.
This commit is contained in:
Danny Smith 2004-03-02 09:15:16 +00:00
parent 0f8989463e
commit e30ffa5bdd
4 changed files with 167 additions and 10 deletions

View File

@ -1,3 +1,24 @@
2004-03-02 Martin Fuchs <martin-fuchs@gmx.net>
* include/oleauto.h (VAR_VALIDDATE, VAR_FORMAT_NOSUBSTITUTE,
VAR_FOURDIGITYEARS) Define new constants. Group VAR_* defines
together.
(V_UI2, V_UI4, V_UI4REF, V_UI, V_UI8REF) Define macros.
(V_I8, V_I8REF): Correct macros.
(V_DECIMAL): Correct macro deginitions.
(V_INT_PTR, V_UINT_PTR, V_INT_PTRREF, V_UINT_PTRREF): Define
constants.
(VTBIT_*): Define constants.
(UDATE): Add structure definition.
(VarDateFromUdate, VarDateFromUdateEx, VarUdateFromDate): Declare
functions.
(SafeArrayCreateVector): Correct parameter type from UINT to ULONG
(SafeArrayCreateVectorEx): Declare function.
(Var*): declare VARIANT manipulation functions.
* include/ocidl.h (IPicture_*): Define IPicture COBJ macros.
* include/oaidl.h (IRecordInfo_*): Define IRecordInfo COBJ
macros.
2004-03-01 Martin Fuchs <martin-fuchs@gmx.net>
* include/oaidl.h (FADF_*) Define missing constants.

View File

@ -729,6 +729,28 @@ DECLARE_INTERFACE_(IRecordInfo, IUnknown)
STDMETHOD(RecordDestroy )(THIS_ PVOID) PURE;
};
#ifdef COBJMACROS
#define IRecordInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IRecordInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IRecordInfo_Release(p) (p)->lpVtbl->Release(p)
#define IRecordInfo_RecordInit(p,a) (p)->lpVtbl->RecordInit(p,a)
#define IRecordInfo_RecordClear(p,a) (p)->lpVtbl->RecordClear(p,a)
#define IRecordInfo_RecordCopy(p,a,b) (p)->lpVtbl->RecordCopy(p,a,b)
#define IRecordInfo_GetGuid(p,a) (p)->lpVtbl->GetGuid(p,a)
#define IRecordInfo_GetName(p,a) (p)->lpVtbl->GetName(p,a)
#define IRecordInfo_GetSize(p,a) (p)->lpVtbl->GetSize(p,a)
#define IRecordInfo_GetTypeInfo(p,a) (p)->lpVtbl->GetTypeInfo(p,a)
#define IRecordInfo_GetField(p,a,b,c) (p)->lpVtbl->GetField(p,a,b,c)
#define IRecordInfo_GetFieldNoCopy(p,a,b,c,d) (p)->lpVtbl->GetFieldNoCopy(p,a,b,c,d)
#define IRecordInfo_PutField(p,a,b,c,d) (p)->lpVtbl->PutField(p,a,b,c,d)
#define IRecordInfo_PutFieldNoCopy(p,a,b,c,d) (p)->lpVtbl->PutFieldNoCopy(p,a,b,c,d)
#define IRecordInfo_GetFieldNames(p,a,b) (p)->lpVtbl->GetFieldNames(p,a,b)
#define IRecordInfo_IsMatchingType(p,a) (p)->lpVtbl->IsMatchingType(p,a)
#define IRecordInfo_RecordCreate(p) (p)->lpVtbl->RecordCreate(p)
#define IRecordInfo_RecordCreateCopy(p,a,b) (p)->lpVtbl->RecordCreateCopy(p,a,b)
#define IRecordInfo_RecordDestroy(p,a) (p)->lpVtbl->RecordDestroy(p,a)
#endif
EXTERN_C const IID IID_ITypeMarshal;
#undef INTERFACE
#define INTERFACE ITypeMarshal

View File

@ -610,6 +610,26 @@ DECLARE_INTERFACE_(IPicture,IUnknown)
STDMETHOD(get_Attributes)(THIS_ PDWORD) PURE;
};
#ifdef COBJMACROS
#define IPicture_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPicture_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPicture_Release(p) (p)->lpVtbl->Release(p)
#define IPicture_get_Handle(p,a) (p)->lpVtbl->get_Handle(p,a)
#define IPicture_get_hPal(p,a) (p)->lpVtbl->get_hPal(p,a)
#define IPicture_get_Type(p,a) (p)->lpVtbl->get_Type(p,a)
#define IPicture_get_Width(p,a) (p)->lpVtbl->get_Width(p,a)
#define IPicture_get_Height(p,a) (p)->lpVtbl->get_Height(p,a)
#define IPicture_Render(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Render(p,a,b,c,d,e,f,g,h,i,j)
#define IPicture_set_hPal(p,a) (p)->lpVtbl->set_hPal(p,a)
#define IPicture_get_CurDC(p,a) (p)->lpVtbl->get_CurDC(p,a)
#define IPicture_SelectPicture(p,a,b,c) (p)->lpVtbl->SelectPicture(p,a,b,c)
#define IPicture_get_KeepOriginalFormat(p,a) (p)->lpVtbl->get_KeepOriginalFormat(p,a)
#define IPicture_put_KeepOriginalFormat(p,a) (p)->lpVtbl->put_KeepOriginalFormat(p,a)
#define IPicture_PictureChanged(p) (p)->lpVtbl->PictureChanged(p)
#define IPicture_SaveAsFile(p,a,b,c) (p)->lpVtbl->SaveAsFile(p,a,b,c)
#define IPicture_get_Attributes(p,a) (p)->lpVtbl->get_Attributes(p,a)
#endif
EXTERN_C const IID IID_IPictureDisp;
#undef INTERFACE
#define INTERFACE IPictureDisp

View File

@ -10,12 +10,22 @@
#define STDOLE_MAJORVERNUM 1
#define STDOLE_MINORVERNUM 0
#define STDOLE_LCID 0
#define VARIANT_NOVALUEPROP 0x01
#define VARIANT_ALPHABOOL 0x02
#define VARIANT_NOUSEOVERRIDE 0x04
#define VARIANT_LOCALBOOL 0x08
#define VAR_TIMEVALUEONLY 0x0001
#define VAR_DATEVALUEONLY 0x0002
#define VAR_VALIDDATE 0x0004
#define VAR_CALENDAR_HIJRI 0x0008
#define VAR_LOCALBOOL 0x0010
#define VAR_FORMAT_NOSUBSTITUTE 0x0020
#define VAR_FOURDIGITYEARS 0x0040
#define VAR_CALENDAR_THAI 0x0080
#define VAR_CALENDAR_GREGORIAN 0x0100
#define MEMBERID_NIL DISPID_UNKNOWN
#define ID_DEFAULTINST (-2)
#define DISPATCH_METHOD 1
@ -42,11 +52,16 @@
#define V_UI1(X) V_UNION(X,bVal)
#define V_UI1REF(X) V_UNION(X,pbVal)
#define V_I2(X) V_UNION(X,iVal)
#define V_UI2(X) V_UNION(X,uiVal)
#define V_I2REF(X) V_UNION(X,piVal)
#define V_I4(X) V_UNION(X,lVal)
#define V_UI4(X) V_UNION(X,ulVal)
#define V_I4REF(X) V_UNION(X,plVal)
#define V_I8(X) V_UNION(X,hVal)
#define V_I8REF(X) V_UNION(X,phVal)
#define V_UI4REF(X) V_UNION(X,pulVal)
#define V_I8(X) V_UNION(X,llVal)
#define V_UI8(X) V_UNION(X,ullVal)
#define V_I8REF(X) V_UNION(X,pllVal)
#define V_UI8REF(X) V_UNION(X,pullVal)
#define V_R4(X) V_UNION(X,fltVal)
#define V_R4REF(X) V_UNION(X,pfltVal)
#define V_R8(X) V_UNION(X,dblVal)
@ -77,17 +92,31 @@
#define V_ARRAY(X) V_UNION(X,parray)
#define V_ARRAYREF(X) V_UNION(X,pparray)
#define V_BYREF(X) V_UNION(X,byref)
#define V_DECIMAL(X) V_UNION(X,decVal)
#if defined(NONAMELESSUNION)
#define V_DECIMAL(X) ((X)->n1.decVal)
#else
#define V_DECIMAL(X) ((X)->decVal)
#endif
#define V_DECIMALREF(X) V_UNION(X,pdecVal)
#define V_I1(X) V_UNION(X,cVal)
#ifdef _WIN64
#define V_INT_PTR(X) V_I8(X)
#define V_UINT_PTR(X) V_UI8(X)
#define V_INT_PTRREF(X) V_I8REF(X)
#define V_UINT_PTRREF(X) V_UI8REF(X)
#else
#define V_INT_PTR(X) V_I4(X)
#define V_UINT_PTR(X) V_UI4(X)
#define V_INT_PTRREF(X) V_I4REF(X)
#define V_UINT_PTRREF(X) V_UI4REF(X)
#endif
#define VARCMP_LT 0
#define VARCMP_EQ 1
#define VARCMP_GT 2
#define VARCMP_NULL 3
#define VAR_LOCALBOOL 0x10
#define LOCALE_USE_NLS 0x10000000
#define VARIANT_NOUSEROVERRIDE 0x04
@ -96,10 +125,6 @@
#define VARIANT_CALENDAR_GREGORIAN 0x40
#define VARIANT_USE_NLS 0x80
#define VAR_CALENDAR_HIJRI 0x08
#define VAR_CALENDAR_THAI 0x80
#define VAR_CALENDAR_GREGORIAN 0x100
#define NUMPRS_LEADING_WHITE 0x00001
#define NUMPRS_TRAILING_WHITE 0x00002
#define NUMPRS_LEADING_PLUS 0x00004
@ -117,6 +142,19 @@
#define NUMPRS_NEG 0x10000
#define NUMPRS_INEXACT 0x20000
#define VTBIT_I1 (1<<VT_I1)
#define VTBIT_UI1 (1<<VT_UI1)
#define VTBIT_I2 (1<<VT_I2)
#define VTBIT_UI2 (1<<VT_UI2)
#define VTBIT_I4 (1<<VT_I4)
#define VTBIT_UI4 (1<<VT_UI4)
#define VTBIT_I8 (1<<VT_I8)
#define VTBIT_UI8 (1<<VT_UI8)
#define VTBIT_R4 (1<<VT_R4)
#define VTBIT_R8 (1<<VT_R8)
#define VTBIT_CY (1<<VT_CY)
#define VTBIT_DECIMAL (1<<VT_DECIMAL)
#include <oaidl.h>
typedef enum tagREGKIND {
@ -143,6 +181,11 @@ typedef struct tagINTERFACEDATA {
UINT cMembers;
} INTERFACEDATA,*LPINTERFACEDATA;
typedef struct {
SYSTEMTIME st;
USHORT wDayOfYear;
} UDATE;
typedef struct {
int cDig;
unsigned long dwInFlags;
@ -164,6 +207,9 @@ WINOLEAUTAPI_(int) DosDateTimeToVariantTime(unsigned short,unsigned short,double
WINOLEAUTAPI_(int) VariantTimeToDosDateTime(double,unsigned short*,unsigned short*);
WINOLEAUTAPI_(int) VariantTimeToSystemTime(double,LPSYSTEMTIME);
WINOLEAUTAPI_(int) SystemTimeToVariantTime(LPSYSTEMTIME, double*);
WINOLEAUTAPI VarDateFromUdate(UDATE*,ULONG,DATE*);
WINOLEAUTAPI VarDateFromUdateEx(UDATE*,LCID,ULONG,DATE*);
WINOLEAUTAPI VarUdateFromDate(DATE,ULONG,UDATE*);
WINOLEAUTAPI SafeArrayAllocDescriptor(unsigned int,SAFEARRAY**);
WINOLEAUTAPI SafeArrayAllocData(SAFEARRAY*);
WINOLEAUTAPI_(SAFEARRAY*) SafeArrayCreate(VARTYPE,unsigned int,SAFEARRAYBOUND*);
@ -183,7 +229,8 @@ WINOLEAUTAPI SafeArrayGetElement(SAFEARRAY*,long*,void*);
WINOLEAUTAPI SafeArrayPutElement(SAFEARRAY*,long*,void*);
WINOLEAUTAPI SafeArrayCopy(SAFEARRAY*,SAFEARRAY**);
WINOLEAUTAPI SafeArrayPtrOfIndex(SAFEARRAY*,long*,void**);
WINOLEAUTAPI_(SAFEARRAY*) SafeArrayCreateVector(VARTYPE,LONG,UINT);
WINOLEAUTAPI_(SAFEARRAY*) SafeArrayCreateVector(VARTYPE,LONG,ULONG);
WINOLEAUTAPI_(SAFEARRAY*) SafeArrayCreateVectorEx(VARTYPE,LONG,ULONG,LPVOID);
WINOLEAUTAPI SafeArrayAllocDescriptorEx(VARTYPE,UINT,SAFEARRAY**);
WINOLEAUTAPI SafeArrayGetVartype(SAFEARRAY*,VARTYPE*);
WINOLEAUTAPI SafeArraySetRecordInfo(SAFEARRAY*,IRecordInfo*);
@ -554,6 +601,53 @@ WINOLEAUTAPI VarDecFromCy(CY,DECIMAL*);
WINOLEAUTAPI VarDecFromDisp(IDispatch*,LCID,DECIMAL*);
WINOLEAUTAPI VarDecNeg(const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarR4CmpR8(float,double);
WINOLEAUTAPI VarR8Pow(double,double,double*);
WINOLEAUTAPI VarR8Round(double,int,double*);
WINOLEAUTAPI VarDecAbs(const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarDecAdd(const DECIMAL*,const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarDecCmp(const DECIMAL*,const DECIMAL*);
WINOLEAUTAPI VarDecCmpR8(const DECIMAL*,DOUBLE);
WINOLEAUTAPI VarDecDiv(const DECIMAL*,const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarDecFix(const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarDecInt(const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarDecMul(const DECIMAL*,const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarDecRound(const DECIMAL*,int,DECIMAL*);
WINOLEAUTAPI VarDecSub(const DECIMAL*,const DECIMAL*,DECIMAL*);
WINOLEAUTAPI VarCyAbs(const CY,CY*);
WINOLEAUTAPI VarCyAdd(const CY,const CY,CY*);
WINOLEAUTAPI VarCyCmp(const CY,const CY);
WINOLEAUTAPI VarCyCmpR8(const CY,DOUBLE);
WINOLEAUTAPI VarCyFix(const CY,CY*);
WINOLEAUTAPI VarCyInt(const CY,CY*);
WINOLEAUTAPI VarCyMul(const CY,CY,CY*);
WINOLEAUTAPI VarCyMulI4(const CY,LONG,CY*);
WINOLEAUTAPI VarCyMulI8(const CY,LONG64,CY*);
WINOLEAUTAPI VarCyNeg(const CY,CY*);
WINOLEAUTAPI VarCyRound(const CY,INT,CY*);
WINOLEAUTAPI VarCySub(const CY,const CY,CY*);
WINOLEAUTAPI VarAdd(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarAnd(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarCat(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarDiv(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarEqv(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarIdiv(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarImp(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarMod(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarMul(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarOr(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarPow(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarSub(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarXor(LPVARIANT,LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarAbs(LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarFix(LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarInt(LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarNeg(LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarNot(LPVARIANT,LPVARIANT);
WINOLEAUTAPI VarRound(LPVARIANT,int,LPVARIANT);
WINOLEAUTAPI VarCmp(LPVARIANT,LPVARIANT,LCID,ULONG);
WINOLEAUTAPI VarBstrCmp(BSTR,BSTR,LCID,ULONG);
WINOLEAUTAPI VarBstrCat(BSTR,BSTR,BSTR*);
#pragma pack(pop)