comparison fuhtark_test/include/winapi/intshcut.h @ 1500:91c8c3b7cbf0

add: futhark tests for generating vulkan api
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 21:36:48 +0700
parents
children
comparison
equal deleted inserted replaced
1499:1f58458b7ef7 1500:91c8c3b7cbf0
1 /**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the w64 mingw-runtime package.
4 * No warranty is given; refer to the file DISCLAIMER within this package.
5 */
6 #ifndef __INTSHCUT_H__
7 #define __INTSHCUT_H__
8
9 #include <isguids.h>
10
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14
15 #ifdef _INTSHCUT_
16 #define INTSHCUTAPI
17 #else
18 #define INTSHCUTAPI DECLSPEC_IMPORT
19 #endif
20
21 #define E_FLAGS MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x1000)
22 #define IS_E_EXEC_FAILED MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x2002)
23 #define URL_E_INVALID_SYNTAX MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x1001)
24 #define URL_E_UNREGISTERED_PROTOCOL MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x1002)
25
26 typedef enum iurl_seturl_flags {
27 IURL_SETURL_FL_GUESS_PROTOCOL = 0x0001,IURL_SETURL_FL_USE_DEFAULT_PROTOCOL = 0x0002
28 } IURL_SETURL_FLAGS;
29
30 typedef enum iurl_invokecommand_flags {
31 IURL_INVOKECOMMAND_FL_ALLOW_UI = 0x0001,IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB = 0x0002,IURL_INVOKECOMMAND_FL_DDEWAIT = 0x0004
32 } IURL_INVOKECOMMAND_FLAGS;
33
34 typedef struct urlinvokecommandinfoA {
35 DWORD dwcbSize;
36 DWORD dwFlags;
37 HWND hwndParent;
38 LPCSTR pcszVerb;
39 } URLINVOKECOMMANDINFOA;
40
41 typedef URLINVOKECOMMANDINFOA *PURLINVOKECOMMANDINFOA;
42 typedef const URLINVOKECOMMANDINFOA CURLINVOKECOMMANDINFOA;
43 typedef const URLINVOKECOMMANDINFOA *PCURLINVOKECOMMANDINFOA;
44
45 typedef struct urlinvokecommandinfoW {
46 DWORD dwcbSize;
47 DWORD dwFlags;
48 HWND hwndParent;
49 LPCWSTR pcszVerb;
50 } URLINVOKECOMMANDINFOW;
51
52 typedef URLINVOKECOMMANDINFOW *PURLINVOKECOMMANDINFOW;
53 typedef const URLINVOKECOMMANDINFOW CURLINVOKECOMMANDINFOW;
54 typedef const URLINVOKECOMMANDINFOW *PCURLINVOKECOMMANDINFOW;
55
56 #ifdef UNICODE
57 #define URLINVOKECOMMANDINFO URLINVOKECOMMANDINFOW
58 #define PURLINVOKECOMMANDINFO PURLINVOKECOMMANDINFOW
59 #define CURLINVOKECOMMANDINFO CURLINVOKECOMMANDINFOW
60 #define PCURLINVOKECOMMANDINFO PCURLINVOKECOMMANDINFOW
61 #else
62 #define URLINVOKECOMMANDINFO URLINVOKECOMMANDINFOA
63 #define PURLINVOKECOMMANDINFO PURLINVOKECOMMANDINFOA
64 #define CURLINVOKECOMMANDINFO CURLINVOKECOMMANDINFOA
65 #define PCURLINVOKECOMMANDINFO PCURLINVOKECOMMANDINFOA
66 #endif
67
68 #undef INTERFACE
69 #define INTERFACE IUniformResourceLocatorA
70
71 DECLARE_INTERFACE_(IUniformResourceLocatorA,IUnknown) {
72 STDMETHOD(QueryInterface)(THIS_ REFIID riid,PVOID *ppvObject) PURE;
73 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
74 STDMETHOD_(ULONG,Release)(THIS) PURE;
75 STDMETHOD(SetURL)(THIS_ LPCSTR pcszURL,DWORD dwInFlags) PURE;
76 STDMETHOD(GetURL)(THIS_ LPSTR *ppszURL) PURE;
77 STDMETHOD(InvokeCommand)(THIS_ PURLINVOKECOMMANDINFOA purlici) PURE;
78 };
79
80 #undef INTERFACE
81 #define INTERFACE IUniformResourceLocatorW
82 DECLARE_INTERFACE_(IUniformResourceLocatorW,IUnknown) {
83 STDMETHOD(QueryInterface)(THIS_ REFIID riid,PVOID *ppvObject) PURE;
84 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
85 STDMETHOD_(ULONG,Release)(THIS) PURE;
86 STDMETHOD(SetURL)(THIS_ LPCWSTR pcszURL,DWORD dwInFlags) PURE;
87 STDMETHOD(GetURL)(THIS_ LPWSTR *ppszURL) PURE;
88 STDMETHOD(InvokeCommand)(THIS_ PURLINVOKECOMMANDINFOW purlici) PURE;
89 };
90
91 #ifdef UNICODE
92 #define IUniformResourceLocator IUniformResourceLocatorW
93 #define IUniformResourceLocatorVtbl IUniformResourceLocatorWVtbl
94 #else
95 #define IUniformResourceLocator IUniformResourceLocatorA
96 #define IUniformResourceLocatorVtbl IUniformResourceLocatorAVtbl
97 #endif
98
99 typedef IUniformResourceLocator *PIUniformResourceLocator;
100 typedef const IUniformResourceLocator CIUniformResourceLocator;
101 typedef const IUniformResourceLocator *PCIUniformResourceLocator;
102
103 typedef enum translateurl_in_flags {
104 TRANSLATEURL_FL_GUESS_PROTOCOL = 0x0001,TRANSLATEURL_FL_USE_DEFAULT_PROTOCOL = 0x0002
105 } TRANSLATEURL_IN_FLAGS;
106
107 INTSHCUTAPI HRESULT WINAPI TranslateURLA(PCSTR pcszURL,DWORD dwInFlags,PSTR *ppszTranslatedURL);
108 INTSHCUTAPI HRESULT WINAPI TranslateURLW(PCWSTR pcszURL,DWORD dwInFlags,PWSTR UNALIGNED *ppszTranslatedURL);
109 #ifdef UNICODE
110 #define TranslateURL TranslateURLW
111 #else
112 #define TranslateURL TranslateURLA
113 #endif
114
115 typedef enum urlassociationdialog_in_flags {
116 URLASSOCDLG_FL_USE_DEFAULT_NAME = 0x0001,URLASSOCDLG_FL_REGISTER_ASSOC = 0x0002
117 } URLASSOCIATIONDIALOG_IN_FLAGS;
118
119 INTSHCUTAPI HRESULT WINAPI URLAssociationDialogA(HWND hwndParent,DWORD dwInFlags,PCSTR pcszFile,PCSTR pcszURL,PSTR pszAppBuf,UINT ucAppBufLen);
120 INTSHCUTAPI HRESULT WINAPI URLAssociationDialogW(HWND hwndParent,DWORD dwInFlags,PCWSTR pcszFile,PCWSTR pcszURL,PWSTR pszAppBuf,UINT ucAppBufLen);
121 #ifdef UNICODE
122 #define URLAssociationDialog URLAssociationDialogW
123 #else
124 #define URLAssociationDialog URLAssociationDialogA
125 #endif
126
127 typedef enum mimeassociationdialog_in_flags {
128 MIMEASSOCDLG_FL_REGISTER_ASSOC = 0x0001
129 } MIMEASSOCIATIONDIALOG_IN_FLAGS;
130
131 INTSHCUTAPI HRESULT WINAPI MIMEAssociationDialogA(HWND hwndParent,DWORD dwInFlags,PCSTR pcszFile,PCSTR pcszMIMEContentType,PSTR pszAppBuf,UINT ucAppBufLen);
132 INTSHCUTAPI HRESULT WINAPI MIMEAssociationDialogW(HWND hwndParent,DWORD dwInFlags,PCWSTR pcszFile,PCWSTR pcszMIMEContentType,PWSTR pszAppBuf,UINT ucAppBufLen);
133 #ifdef UNICODE
134 #define MIMEAssociationDialog MIMEAssociationDialogW
135 #else
136 #define MIMEAssociationDialog MIMEAssociationDialogA
137 #endif
138
139 INTSHCUTAPI WINBOOL WINAPI InetIsOffline(DWORD dwFlags);
140
141 #ifdef __cplusplus
142 }
143 #endif
144 #endif