X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e924e848f74c0857443255d5a4ac300e08ba7c47..2a45803fc3877afd0ae3ce356dfe216505165882:/include/wx/msw/missing.h diff --git a/include/wx/msw/missing.h b/include/wx/msw/missing.h index 2b6280b287..9efb9f6ab5 100644 --- a/include/wx/msw/missing.h +++ b/include/wx/msw/missing.h @@ -77,6 +77,9 @@ #ifndef WM_MOUSEWHEEL #define WM_MOUSEWHEEL 0x020A #endif + #ifndef WM_MOUSEHWHEEL + #define WM_MOUSEHWHEEL 0x020E + #endif #ifndef WHEEL_DELTA #define WHEEL_DELTA 120 #endif @@ -94,6 +97,7 @@ #define VK_OEM_5 0xDC #define VK_OEM_6 0xDD #define VK_OEM_7 0xDE + #define VK_OEM_102 0xE2 #endif #ifndef VK_OEM_COMMA @@ -516,55 +520,127 @@ typedef struct #endif -// Various definitions are missing from mingw -// Used by webview_ie.cpp -#ifdef __MINGW32__ -typedef enum CommandStateChangeConstants { - CSC_UPDATECOMMANDS = (int) 0xFFFFFFFF, - CSC_NAVIGATEFORWARD = 0x1, - CSC_NAVIGATEBACK = 0x2 -} CommandStateChangeConstants; +//Various defines that will be needed by mingw and possibly VC++6 +//Used by the webview library +#ifndef DISPID_COMMANDSTATECHANGE #define DISPID_COMMANDSTATECHANGE 105 +#endif + +#ifndef DISPID_NAVIGATECOMPLETE2 #define DISPID_NAVIGATECOMPLETE2 252 +#endif + +#ifndef DISPID_NAVIGATEERROR #define DISPID_NAVIGATEERROR 271 +#endif + +#ifndef DISPID_NEWWINDOW3 #define DISPID_NEWWINDOW3 273 +#endif + +#ifndef INET_E_ERROR_FIRST #define INET_E_ERROR_FIRST 0x800C0002L +#endif + +#ifndef INET_E_INVALID_URL #define INET_E_INVALID_URL 0x800C0002L +#endif + +#ifndef INET_E_NO_SESSION #define INET_E_NO_SESSION 0x800C0003L +#endif + +#ifndef INET_E_CANNOT_CONNECT #define INET_E_CANNOT_CONNECT 0x800C0004L +#endif + +#ifndef INET_E_RESOURCE_NOT_FOUND #define INET_E_RESOURCE_NOT_FOUND 0x800C0005L +#endif + +#ifndef INET_E_OBJECT_NOT_FOUND #define INET_E_OBJECT_NOT_FOUND 0x800C0006L +#endif + +#ifndef INET_E_DATA_NOT_AVAILABLE #define INET_E_DATA_NOT_AVAILABLE 0x800C0007L +#endif + +#ifndef INET_E_DOWNLOAD_FAILURE #define INET_E_DOWNLOAD_FAILURE 0x800C0008L +#endif + +#ifndef INET_E_AUTHENTICATION_REQUIRED #define INET_E_AUTHENTICATION_REQUIRED 0x800C0009L +#endif + +#ifndef INET_E_NO_VALID_MEDIA #define INET_E_NO_VALID_MEDIA 0x800C000AL +#endif + +#ifndef INET_E_CONNECTION_TIMEOUT #define INET_E_CONNECTION_TIMEOUT 0x800C000BL +#endif + +#ifndef INET_E_INVALID_REQUEST #define INET_E_INVALID_REQUEST 0x800C000CL +#endif + +#ifndef INET_E_UNKNOWN_PROTOCOL #define INET_E_UNKNOWN_PROTOCOL 0x800C000DL +#endif + +#ifndef INET_E_SECURITY_PROBLEM #define INET_E_SECURITY_PROBLEM 0x800C000EL +#endif + +#ifndef INET_E_CANNOT_LOAD_DATA #define INET_E_CANNOT_LOAD_DATA 0x800C000FL +#endif + +#ifndef INET_E_CANNOT_INSTANTIATE_OBJECT #define INET_E_CANNOT_INSTANTIATE_OBJECT 0x800C0010L +#endif + +#ifndef INET_E_QUERYOPTION_UNKNOWN #define INET_E_QUERYOPTION_UNKNOWN 0x800C0013L +#endif + +#ifndef INET_E_REDIRECT_FAILED #define INET_E_REDIRECT_FAILED 0x800C0014L +#endif + +#ifndef INET_E_REDIRECT_TO_DIR #define INET_E_REDIRECT_TO_DIR 0x800C0015L +#endif + +#ifndef INET_E_CANNOT_LOCK_REQUEST #define INET_E_CANNOT_LOCK_REQUEST 0x800C0016L +#endif + +#ifndef INET_E_USE_EXTEND_BINDING #define INET_E_USE_EXTEND_BINDING 0x800C0017L +#endif + +#ifndef INET_E_TERMINATED_BIND #define INET_E_TERMINATED_BIND 0x800C0018L +#endif + +#ifndef INET_E_INVALID_CERTIFICATE #define INET_E_INVALID_CERTIFICATE 0x800C0019L +#endif + +#ifndef INET_E_CODE_DOWNLOAD_DECLINED #define INET_E_CODE_DOWNLOAD_DECLINED 0x800C0100L -#define INET_E_RESULT_DISPATCHED 0x800C0200L -#define INET_E_CANNOT_REPLACE_SFP_FILE 0x800C0300L -#define INET_E_CODE_INSTALL_BLOCKED_BY_HASH_POLICY 0x800C0500L -#define INET_E_CODE_INSTALL_SUPPRESSED 0x800C0400L +#endif -#define REFRESH_NORMAL 0 -#define REFRESH_COMPLETELY 3 +#ifndef INET_E_RESULT_DISPATCHED +#define INET_E_RESULT_DISPATCHED 0x800C0200L #endif -// For Visual C++ 6 and MinGW32. Used by webview_ie.cpp -#ifndef INET_E_INVALID_CERTIFICATE -#define INET_E_INVALID_CERTIFICATE 0x800C0019L +#ifndef INET_E_CANNOT_REPLACE_SFP_FILE +#define INET_E_CANNOT_REPLACE_SFP_FILE 0x800C0300L #endif #ifndef INET_E_CODE_INSTALL_BLOCKED_BY_HASH_POLICY @@ -575,121 +651,23 @@ typedef enum CommandStateChangeConstants { #define INET_E_CODE_INSTALL_SUPPRESSED 0x800C0400L #endif -#ifndef DISPID_NEWWINDOW3 -#define DISPID_NEWWINDOW3 273 +#ifndef MUI_LANGUAGE_NAME +#define MUI_LANGUAGE_NAME 0x8 #endif -//As MinGW is missing urlmon we replicate the definitions here for wxWebView -#ifdef __MINGW32__ +//We need to check if we are using MinGW or mingw-w64 as their +//definitions are different -EXTERN_C const IID CLSID_FileProtocol; -EXTERN_C const IID IID_IInternetProtocolRoot; -EXTERN_C const IID IID_IInternetProtocol; - -DEFINE_GUID(IID_IInternetProtocolRoot,0x79eac9e3,0xbaf9,0x11ce,0x8c,0x82,0,0xaa,0,0x4b,0xa9,0xb); -DEFINE_GUID(IID_IInternetProtocol,0x79eac9e4,0xbaf9,0x11ce,0x8c,0x82,0,0xaa,0,0x4b,0xa9,0xb); - -typedef enum __MIDL_IBindStatusCallback_0006 -{ - BSCF_FIRSTDATANOTIFICATION = 0x1, - BSCF_INTERMEDIATEDATANOTIFICATION = 0x2, - BSCF_LASTDATANOTIFICATION = 0x4, - BSCF_DATAFULLYAVAILABLE = 0x8, - BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10 -} BSCF; - -typedef struct _tagPROTOCOLDATA -{ - DWORD grfFlags; - DWORD dwState; - LPVOID pData; - ULONG cbData; -} PROTOCOLDATA; - -typedef struct _tagBINDINFO -{ - ULONG cbSize; - LPWSTR szExtraInfo; - STGMEDIUM stgmedData; - DWORD grfBindInfoF; - DWORD dwBindVerb; - LPWSTR szCustomVerb; - DWORD cbstgmedData; - DWORD dwOptions; - DWORD dwOptionsFlags; - DWORD dwCodePage; - SECURITY_ATTRIBUTES securityAttributes; - IID iid; - IUnknown *pUnk; - DWORD dwReserved; -} BINDINFO; - -class IInternetProtocolSink : public IUnknown -{ -public: - virtual HRESULT STDMETHODCALLTYPE Switch(PROTOCOLDATA*) = 0; - virtual HRESULT STDMETHODCALLTYPE ReportProgress(ULONG, LPCWSTR) = 0; - virtual HRESULT STDMETHODCALLTYPE ReportData(DWORD, ULONG, ULONG) = 0; - virtual HRESULT STDMETHODCALLTYPE ReportResult(HRESULT, DWORD, LPCWSTR) = 0; -}; - -class IInternetBindInfo : public IUnknown -{ -public: - virtual HRESULT STDMETHODCALLTYPE GetBindInfo(DWORD*, BINDINFO*) = 0; - virtual HRESULT STDMETHODCALLTYPE GetBindString(ULONG, LPOLESTR*, ULONG, - ULONG*) = 0; -}; - -class IInternetProtocolRoot : public IUnknown -{ -public: - virtual HRESULT STDMETHODCALLTYPE Start(LPCWSTR, IInternetProtocolSink*, - IInternetBindInfo*, DWORD, - HANDLE_PTR) = 0; - virtual HRESULT STDMETHODCALLTYPE Continue(PROTOCOLDATA*) = 0; - virtual HRESULT STDMETHODCALLTYPE Abort(HRESULT, DWORD) = 0; - virtual HRESULT STDMETHODCALLTYPE Terminate(DWORD) = 0; - virtual HRESULT STDMETHODCALLTYPE Suspend() = 0; - virtual HRESULT STDMETHODCALLTYPE Resume() = 0; -}; - -class IInternetProtocol : public IInternetProtocolRoot -{ -public: - virtual HRESULT STDMETHODCALLTYPE Read(void*, ULONG, ULONG*) = 0; - virtual HRESULT STDMETHODCALLTYPE Seek(LARGE_INTEGER, DWORD, - ULARGE_INTEGER*) = 0; - virtual HRESULT STDMETHODCALLTYPE LockRequest(DWORD) = 0; - virtual HRESULT STDMETHODCALLTYPE UnlockRequest() = 0; -}; - -class IInternetSession : public IUnknown -{ -public: - virtual HRESULT STDMETHODCALLTYPE RegisterNameSpace(IClassFactory*, - REFCLSID, LPCWSTR, - ULONG, const LPCWSTR*, - DWORD) = 0; - virtual HRESULT STDMETHODCALLTYPE UnregisterNameSpace(IClassFactory*, - LPCWSTR) = 0; - virtual HRESULT STDMETHODCALLTYPE RegisterMimeFilter(IClassFactory*, - REFCLSID, - LPCWSTR) = 0; - virtual HRESULT STDMETHODCALLTYPE UnregisterMimeFilter(IClassFactory*, - LPCWSTR) = 0; - virtual HRESULT STDMETHODCALLTYPE CreateBinding(LPBC, LPCWSTR, IUnknown*, - IUnknown**, - IInternetProtocol**, - DWORD) = 0; - virtual HRESULT STDMETHODCALLTYPE SetSessionOption(DWORD, LPVOID, DWORD, - DWORD) = 0; - virtual HRESULT STDMETHODCALLTYPE GetSessionOption(DWORD, LPVOID, DWORD*, - DWORD) = 0; -}; - -STDAPI CoInternetGetSession(DWORD, IInternetSession**, DWORD); +#ifdef __MINGW32__ +#include <_mingw.h> +#endif +#if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) +typedef enum CommandStateChangeConstants { + CSC_UPDATECOMMANDS = (int) 0xFFFFFFFF, + CSC_NAVIGATEFORWARD = 0x1, + CSC_NAVIGATEBACK = 0x2 +} CommandStateChangeConstants; #endif /*