[PATCH v2 2/5] include/windows.foundation.idl: Add IAsyncAction interface.

Bernhard Kölbl besentv at gmail.com
Mon Jan 31 06:51:46 CST 2022


Signed-off-by: Bernhard Kölbl <besentv at gmail.com>
---
v2: Add missing required interface.
---
 include/windows.foundation.idl | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/include/windows.foundation.idl b/include/windows.foundation.idl
index 292522f2c49..a4ee7303ddb 100644
--- a/include/windows.foundation.idl
+++ b/include/windows.foundation.idl
@@ -27,6 +27,12 @@ import "windowscontracts.idl";
 /* import "ivectorchangedeventargs.idl"; */
 import "windows.foundation.collections.idl";
 
+namespace Windows {
+    namespace Foundation {
+        interface IAsyncAction;
+    }
+}
+
 namespace Windows {
     namespace Foundation {
         typedef enum PropertyType PropertyType;
@@ -36,6 +42,12 @@ namespace Windows {
         typedef struct DateTime DateTime;
         typedef struct TimeSpan TimeSpan;
 
+        [
+            contract(Windows.Foundation.FoundationContract, 1.0),
+            uuid(a4ed5c81-76c9-40bd-8be6-b1d90fb20ae7)
+        ]
+        delegate HRESULT AsyncActionCompletedHandler([in] Windows.Foundation.IAsyncAction *action, [in] AsyncStatus status);
+
         [contract(Windows.Foundation.FoundationContract, 1.0)]
         enum PropertyType {
             Empty       = 0,
@@ -128,6 +140,18 @@ namespace Windows {
         {
             HRESULT Close();
         }
+
+        [
+            contract(Windows.Foundation.FoundationContract, 1.0),
+            uuid(5a648006-843a-4da9-865b-9d26e5dfad7b)
+        ]
+        interface IAsyncAction : IInspectable
+            requires IAsyncInfo
+        {
+            [propput] HRESULT Completed([in] Windows.Foundation.AsyncActionCompletedHandler *handler);
+            [propget] HRESULT Completed([out, retval] Windows.Foundation.AsyncActionCompletedHandler **handler);
+            HRESULT GetResults();
+        }
     }
 }
 
-- 
2.34.1




More information about the wine-devel mailing list