Alistair Leslie-Hughes : include: Add IRowsetUpdate interface.

Alexandre Julliard julliard at winehq.org
Wed Nov 11 15:31:43 CST 2020


Module: wine
Branch: master
Commit: ec9311ebd6642d336a0567f1afca7363ec27a7ad
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=ec9311ebd6642d336a0567f1afca7363ec27a7ad

Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date:   Wed Nov 11 21:32:55 2020 +1100

include: Add IRowsetUpdate interface.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 include/Makefile.in |  1 +
 include/oledb.idl   |  1 +
 include/rstupd.idl  | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 59 insertions(+)

diff --git a/include/Makefile.in b/include/Makefile.in
index 24439dc7522..3df4da64233 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -616,6 +616,7 @@ SOURCES = \
 	rstinf.idl \
 	rstloc.idl \
 	rstnot.idl \
+	rstupd.idl \
 	rtutils.h \
 	rtworkq.idl \
 	sal.h \
diff --git a/include/oledb.idl b/include/oledb.idl
index 256d5fc7917..5609e219320 100644
--- a/include/oledb.idl
+++ b/include/oledb.idl
@@ -75,6 +75,7 @@ typedef DWORD_PTR DBHASHVALUE;
 #include "cvttyp.idl"
 #include "cmdpre.idl"
 #include "rstchg.idl"
+#include "rstupd.idl"
 
 cpp_quote("#include <accctrl.h>")
 
diff --git a/include/rstupd.idl b/include/rstupd.idl
new file mode 100644
index 00000000000..c823658edba
--- /dev/null
+++ b/include/rstupd.idl
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2020 Alistair Leslie-Hughes
+ *
+ * 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
+ */
+#if 0
+#pragma makedep install
+#endif
+
+[
+    local,
+    object,
+    uuid(0c733a6d-2a1c-11ce-ade5-00aa0044773d),
+    pointer_default(unique)
+]
+interface IRowsetUpdate : IRowsetChange
+{
+    typedef DWORD DBPENDINGSTATUS;
+
+    enum DBPENDINGSTATUSENUM
+    {
+        DBPENDINGSTATUS_NEW        = 0x01,
+        DBPENDINGSTATUS_CHANGED    = 0x02,
+        DBPENDINGSTATUS_DELETED    = 0x04,
+        DBPENDINGSTATUS_UNCHANGED  = 0x08,
+        DBPENDINGSTATUS_INVALIDROW = 0x10,
+    };
+
+    HRESULT GetOriginalData([in] HROW row, [in] HACCESSOR accessor, [out] void *data );
+
+    HRESULT GetPendingRows([in] HCHAPTER reserved, [in] DBPENDINGSTATUS status, [in, out] DBCOUNTITEM *pending_cnt,
+            [out, size_is(,*pending_cnt)] HROW **rending_rows,
+            [out, size_is(,*pending_cnt)] DBPENDINGSTATUS **pending_status);
+
+    HRESULT GetRowStatus([in] HCHAPTER reserved, [in] DBCOUNTITEM count, [in, size_is(count)] const HROW rows[],
+            [out, size_is(count)] DBPENDINGSTATUS status[]);
+
+    HRESULT Undo([in] HCHAPTER reserved, [in] DBCOUNTITEM count, [in, size_is(count)] const HROW rows[],
+            [in, out] DBCOUNTITEM *undone_cnt, [out, size_is(,*undone_cnt)] HROW **undone,
+            [out, size_is(,*undone_cnt)] DBROWSTATUS ** status);
+
+    HRESULT Update([in] HCHAPTER reserved, [in] DBCOUNTITEM count, [in, size_is(count)] const HROW rows[],
+            [in, out] DBCOUNTITEM *row_cnt, [out, size_is(,*row_cnt)] HROW **hrows,
+            [out, size_is(,*row_cnt)] DBROWSTATUS **status);
+}




More information about the wine-cvs mailing list