Update of /cvsroot/pywin32/pywin32/com/TestSources/PyCOMTest
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20576/TestSources/PyCOMTest
Modified Files:
PyCOMImpl.cpp PyCOMImpl.h PyCOMTest.idl
Log Message:
Fix and test some limitations passing around currency objects.
Should fix [ 1935488 ] gencache and Delphi Currency
Index: PyCOMTest.idl
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/TestSources/PyCOMTest/PyCOMTest.idl,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** PyCOMTest.idl 4 Sep 2007 10:53:29 -0000 1.16
--- PyCOMTest.idl 8 Apr 2008 11:51:26 -0000 1.17
***************
*** 239,242 ****
--- 239,249 ----
HRESULT TestQueryInterface();
+ HRESULT AddCurrencies(
+ [in] CY v1,
+ [in] CY v2,
+ [out, retval] CY* pResult);
+ HRESULT DoubleCurrency([in] CY v,
+ [out, retval] CY *ret );
+ HRESULT DoubleCurrencyByVal([in, out] CY *v);
// Some test properties
[propget] HRESULT LongProp([out, retval] long* retval);
Index: PyCOMImpl.h
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/TestSources/PyCOMTest/PyCOMImpl.h,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** PyCOMImpl.h 4 Sep 2007 10:53:29 -0000 1.15
--- PyCOMImpl.h 8 Apr 2008 11:51:26 -0000 1.16
***************
*** 82,85 ****
--- 82,88 ----
STDMETHOD(SetVarArgs)(SAFEARRAY *);
STDMETHOD(GetLastVarArgs)(SAFEARRAY **);
+ STDMETHOD(DoubleCurrency)(CY, CY *);
+ STDMETHOD(DoubleCurrencyByVal)(CY *);
+ STDMETHOD(AddCurrencies)(CY v1, CY v2, CY *);
// method to broadcast a call on the current connections
Index: PyCOMImpl.cpp
===================================================================
RCS file: /cvsroot/pywin32/pywin32/com/TestSources/PyCOMTest/PyCOMImpl.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** PyCOMImpl.cpp 3 Apr 2008 07:21:41 -0000 1.17
--- PyCOMImpl.cpp 8 Apr 2008 11:51:26 -0000 1.18
***************
*** 742,745 ****
--- 742,763 ----
+ HRESULT CPyCOMTest::DoubleCurrencyByVal(CY *v)
+ {
+ v->int64 *= 2;
+ return S_OK;
+ }
+
+ HRESULT CPyCOMTest::DoubleCurrency(CY v, CY *ret)
+ {
+ ret->int64 = v.int64 * 2;
+ return S_OK;
+ }
+
+ HRESULT CPyCOMTest::AddCurrencies(CY v1, CY v2, CY *pret)
+ {
+ pret->int64 = v1.int64 + v2.int64;
+ return S_OK;
+ }
+
HRESULT CPyCOMTest::NotScriptable(int *val)
{
|