Module: wine Branch: master Commit: 7f78caa81c0b33f40b0958974a8e5d4fb144856c URL: http://source.winehq.org/git/wine.git/?a=commit;h=7f78caa81c0b33f40b0958974a...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Fri Apr 5 22:28:52 2013 +0400
include: Added IRowsetNotify definition and proxy/stub stub implementation.
---
dlls/msdaps/usrmarshal.c | 40 +++++++++++++++++++++++++ include/Makefile.in | 1 + include/oledb.idl | 3 ++ include/rstnot.idl | 74 ++++++++++++++++++++++++++++++++++++++++++++++ tools/make_makefiles | 1 + 5 files changed, 119 insertions(+), 0 deletions(-)
diff --git a/dlls/msdaps/usrmarshal.c b/dlls/msdaps/usrmarshal.c index 3f2b9e6..39e4e4b 100644 --- a/dlls/msdaps/usrmarshal.c +++ b/dlls/msdaps/usrmarshal.c @@ -967,3 +967,43 @@ HRESULT __RPC_STUB IDBAsynchStatus_GetStatus_Stub(IDBAsynchStatus* This, HCHAPTE peAsynchPhase, ppwszStatusText, ppErrorInfoRem); return E_NOTIMPL; } + +HRESULT CALLBACK IRowsetNotify_OnRowChange_Proxy(IRowsetNotify* This, IRowset *rowset, DBCOUNTITEM rows, HROW *hrows, DBREASON reason, + DBEVENTPHASE phase, BOOL cantdeny) +{ + FIXME("(%p)->(%p %ld %p %d %d %d): stub\n", This, rowset, rows, hrows, reason, phase, cantdeny); + return E_NOTIMPL; +} + +HRESULT __RPC_STUB IRowsetNotify_OnRowChange_Stub(IRowsetNotify* This, IRowset *rowset, DBCOUNTITEM rows, HROW *hrows, DBREASON reason, + DBEVENTPHASE phase, BOOL cantdeny) +{ + FIXME("(%p)->(%p %ld %p %d %d %d): stub\n", This, rowset, rows, hrows, reason, phase, cantdeny); + return E_NOTIMPL; +} + +HRESULT CALLBACK IRowsetNotify_OnFieldChange_Proxy(IRowsetNotify* This, IRowset *rowset, HROW row, DBORDINAL ccols, DBORDINAL *columns, + DBREASON reason, DBEVENTPHASE phase, BOOL cantdeny) +{ + FIXME("(%p)->(%p %lx %ld %p %d %d %d): stub\n", This, rowset, row, ccols, columns, reason, phase, cantdeny); + return E_NOTIMPL; +} + +HRESULT __RPC_STUB IRowsetNotify_OnFieldChange_Stub(IRowsetNotify* This, IRowset *rowset, HROW row, DBORDINAL ccols, DBORDINAL *columns, + DBREASON reason, DBEVENTPHASE phase, BOOL cantdeny) +{ + FIXME("(%p)->(%p %lx %ld %p %d %d %d): stub\n", This, rowset, row, ccols, columns, reason, phase, cantdeny); + return E_NOTIMPL; +} + +HRESULT CALLBACK IRowsetNotify_OnRowsetChange_Proxy(IRowsetNotify* This, IRowset *rowset, DBREASON reason, DBEVENTPHASE phase, BOOL cantdeny) +{ + FIXME("(%p)->(%p %d %d %d): stub\n", This, rowset, reason, phase, cantdeny); + return E_NOTIMPL; +} + +HRESULT __RPC_STUB IRowsetNotify_OnRowsetChange_Stub(IRowsetNotify* This, IRowset *rowset, DBREASON reason, DBEVENTPHASE phase, BOOL cantdeny) +{ + FIXME("(%p)->(%p %d %d %d): stub\n", This, rowset, reason, phase, cantdeny); + return E_NOTIMPL; +} diff --git a/include/Makefile.in b/include/Makefile.in index 47df84c..9589c34 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -484,6 +484,7 @@ SRCDIR_INCLUDES = \ rstbas.idl \ rstinf.idl \ rstloc.idl \ + rstnot.idl \ rtutils.h \ scarderr.h \ schannel.h \ diff --git a/include/oledb.idl b/include/oledb.idl index fb57501..57b404d 100644 --- a/include/oledb.idl +++ b/include/oledb.idl @@ -34,6 +34,8 @@ typedef LONG_PTR DBROWCOUNT; typedef ULONG_PTR DBCOUNTITEM; typedef ULONG_PTR DBLENGTH; typedef ULONG_PTR DBORDINAL; +typedef DWORD DBREASON; +typedef DWORD DBEVENTPHASE; typedef ULONG_PTR DBBKMARK; typedef DWORD_PTR DB_DWRESERVE; typedef ULONG_PTR DBREFCOUNT; @@ -66,6 +68,7 @@ typedef struct { #include "asynot.idl" #include "asysta.idl" #include "sesprp.idl" +#include "rstnot.idl" #include "opnrst.idl" #include "row.idl" #include "rowchg.idl" diff --git a/include/rstnot.idl b/include/rstnot.idl new file mode 100644 index 0000000..c76691e --- /dev/null +++ b/include/rstnot.idl @@ -0,0 +1,74 @@ +/* + * Copyright (C) 2013 Nikolay Sivov + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +[ + object, + uuid(0c733a83-2a1c-11ce-ade5-00aa0044773d), + pointer_default(unique) +] +interface IRowsetNotify : IUnknown +{ + [local] + HRESULT OnFieldChange([in] IRowset *rowset, + [in] HROW row, + [in] DBORDINAL ccols, + [in, size_is((ULONG)ccols)] DBORDINAL *columns, + [in] DBREASON reason, + [in] DBEVENTPHASE phase, + [in] BOOL cantdeny); + + [call_as(OnFieldChange)] + HRESULT RemoteOnFieldChange( + [in] IRowset *rowset, + [in] HROW row, + [in] DBORDINAL ccols, + [in, size_is((ULONG)ccols)] DBORDINAL *columns, + [in] DBREASON reason, + [in] DBEVENTPHASE phase, + [in] BOOL cantdeny); + + [local] + HRESULT OnRowChange([in] IRowset *rowset, + [in] DBCOUNTITEM rows, + [in, size_is((ULONG)rows)] HROW *hrows, + [in] DBREASON reason, + [in] DBEVENTPHASE phase, + [in] BOOL cantdeny); + + [call_as(OnRowChange)] + HRESULT RemoteOnRowChange( + [in] IRowset *rowset, + [in] DBCOUNTITEM rows, + [in, size_is((ULONG)rows)] HROW *hrows, + [in] DBREASON reason, + [in] DBEVENTPHASE phase, + [in] BOOL cantdeny); + + [local] + HRESULT OnRowsetChange([in] IRowset *rowset, + [in] DBREASON reason, + [in] DBEVENTPHASE phase, + [in] BOOL cantdeny); + + [call_as(OnRowsetChange)] + HRESULT RemoteOnRowsetChange( + [in] IRowset *rowset, + [in] DBREASON reason, + [in] DBEVENTPHASE phase, + [in] BOOL cantdeny); +} diff --git a/tools/make_makefiles b/tools/make_makefiles index f408545..91b136d 100755 --- a/tools/make_makefiles +++ b/tools/make_makefiles @@ -157,6 +157,7 @@ my %private_idl_headers = ( "rstbas.idl" => 1, "rstinf.idl" => 1, "rstloc.idl" => 1, + "rstnot.idl" => 1, "sesprp.idl" => 1, "vmrender.idl" => 1, "xmldom.idl" => 1,