source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/windows.foundation.idl

Last change on this file was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 4.0 KB
Line 
1/*
2 * Copyright 2015 Jacek Caban for CodeWeavers
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifdef __WIDL__
20#pragma winrt ns_prefix
21#endif
22
23import "inspectable.idl";
24import "asyncinfo.idl";
25import "windowscontracts.idl";
26/* import "eventtoken.idl"; */
27/* import "ivectorchangedeventargs.idl"; */
28import "windows.foundation.collections.idl";
29
30namespace Windows {
31 namespace Foundation {
32 typedef enum PropertyType PropertyType;
33 typedef struct Point Point;
34 typedef struct Size Size;
35 typedef struct Rect Rect;
36 typedef struct DateTime DateTime;
37 typedef struct TimeSpan TimeSpan;
38
39 [contract(Windows.Foundation.FoundationContract, 1.0)]
40 enum PropertyType {
41 Empty = 0,
42 UInt8 = 1,
43 Int16 = 2,
44 UInt16 = 3,
45 Int32 = 4,
46 UInt32 = 5,
47 Int64 = 6,
48 UInt64 = 7,
49 Single = 8,
50 Double = 9,
51 Char16 = 10,
52 Boolean = 11,
53 String = 12,
54 Inspectable = 13,
55 DateTime = 14,
56 TimeSpan = 15,
57 Guid = 16,
58 Point = 17,
59 Size = 18,
60 Rect = 19,
61 OtherType = 20,
62 UInt8Array = 1025,
63 Int16Array = 1026,
64 UInt16Array = 1027,
65 Int32Array = 1028,
66 UInt32Array = 1029,
67 Int64Array = 1030,
68 UInt64Array = 1031,
69 SingleArray = 1032,
70 DoubleArray = 1033,
71 Char16Array = 1034,
72 BooleanArray = 1035,
73 StringArray = 1036,
74 InspectableArray = 1037,
75 DateTimeArray = 1038,
76 TimeSpanArray = 1039,
77 GuidArray = 1040,
78 PointArray = 1041,
79 SizeArray = 1042,
80 RectArray = 1043,
81 OtherTypeArray = 1044
82 };
83
84 [contract(Windows.Foundation.FoundationContract, 1.0)]
85 struct Point {
86 FLOAT X;
87 FLOAT Y;
88 };
89
90 [contract(Windows.Foundation.FoundationContract, 1.0)]
91 struct Size {
92 FLOAT Width;
93 FLOAT Height;
94 };
95
96 [contract(Windows.Foundation.FoundationContract, 1.0)]
97 struct Rect {
98 FLOAT X;
99 FLOAT Y;
100 FLOAT Width;
101 FLOAT Height;
102 };
103
104 [contract(Windows.Foundation.FoundationContract, 1.0)]
105 struct DateTime {
106 INT64 UniversalTime;
107 };
108
109 [contract(Windows.Foundation.FoundationContract, 1.0)]
110 struct TimeSpan {
111 INT64 Duration;
112 };
113
114 [
115 contract(Windows.Foundation.FoundationContract, 1.0),
116 uuid(96369f54-8eb6-48f0-abce-c1b211e627c3)
117 ]
118 interface IStringable : IInspectable
119 {
120 HRESULT ToString([out, retval] HSTRING *value);
121 }
122 }
123}
124
125namespace Windows {
126 namespace Foundation {
127 declare {
128 interface Windows.Foundation.AsyncOperationCompletedHandler<boolean>;
129 interface Windows.Foundation.IAsyncOperation<boolean>;
130 interface Windows.Foundation.Collections.IVectorView<HSTRING>;
131 }
132 }
133}
Note: See TracBrowser for help on using the repository browser.