See
- 
https://docs.microsoft.com/en-us/uwp/api/windows.system.threading.timerelapsedhandler
- 
https://docs.microsoft.com/en-us/uwp/api/windows.system.threading.timerdestroyedhandler
- 
https://docs.microsoft.com/en-us/uwp/api/windows.system.threading.workitemhandler
---
 .../include/windows.system.threading.idl      | 37 ++++++++++---------
 1 file changed, 19 insertions(+), 18 deletions(-)

diff --git a/mingw-w64-headers/include/windows.system.threading.idl 
b/mingw-w64-headers/include/windows.system.threading.idl
index ab9247ab3..892ebe9fd 100644
--- a/mingw-w64-headers/include/windows.system.threading.idl
+++ b/mingw-w64-headers/include/windows.system.threading.idl
@@ -16,9 +16,6 @@ namespace Windows {
         namespace Threading {
             typedef enum WorkItemPriority WorkItemPriority;
             typedef enum WorkItemOptions WorkItemOptions;
-            interface TimerElapsedHandler;   //delegate
-            interface TimerDestroyedHandler; //delegate
-            interface WorkItemHandler;       //delegate
             interface IThreadPoolStatics;
             interface IThreadPoolTimer;
             interface IThreadPoolTimerStatics;
@@ -41,21 +38,25 @@ namespace Windows {
                 TimeSliced = 1
             };
 
-            [uuid(FAAEA667-FBEB-49CB-ADB2-71184C556E43)]
-            interface TimerElapsedHandler : IUnknown {
-                HRESULT Invoke(IThreadPoolTimer* timer);
-            }
-
-            [uuid(34ED19FA-8384-4EB9-8209-FB5094EEEC35)]
-            interface TimerDestroyedHandler : IUnknown {
-                HRESULT Invoke(IThreadPoolTimer* timer);
-            }
-
-            [uuid(1D1A8B8B-FA66-414F-9CBD-B65FC99D17FA)]
-            interface WorkItemHandler : IUnknown {
-                HRESULT Invoke(
-                        Windows.Foundation.IAsyncAction* operation);
-            }
+#ifdef __WIDL__
+            [
+                contract(Windows.Foundation.FoundationContract, 1.0),
+                uuid(faaea667-fbeb-49cb-adb2-71184c556e43)
+            ]
+            delegate HRESULT TimerElapsedHandler(IThreadPoolTimer* timer);
+
+            [
+                contract(Windows.Foundation.FoundationContract, 1.0),
+                uuid(34ed19fa-8384-4eb9-8209-fb5094eeec35)
+            ]
+            delegate HRESULT TimerDestroyedHandler(IThreadPoolTimer* timer);
+
+            [
+                contract(Windows.Foundation.FoundationContract, 1.0),
+                uuid(1d1a8b8b-fa66-414f-9cbd-b65fc99d17fa)
+            ]
+            delegate HRESULT WorkItemHandler(Windows.Foundation.IAsyncAction* 
operation);
+#endif
 
             [uuid(B6BF67DD-84BD-44F8-AC1C-93EBCB9DBA91)]
             interface IThreadPoolStatics : IInspectable
-- 
2.29.2



_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to