Windows QPA: Remove qtwindows_additional.h.
Clean up helper definitions required for old SDKs and MinGW and move the remaining ones to the files that require them. Ensure compilations with MinGW 4.9. Task-number: QTBUG-51673 Change-Id: I607989dd1d9197f237c6d021209a2c94aeb84021 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>bb10
parent
03e9c6f4a6
commit
0d5b2422ce
|
|
@ -80,7 +80,7 @@
|
|||
#include <comdef.h>
|
||||
#endif
|
||||
|
||||
#include "../qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@
|
|||
#endif
|
||||
|
||||
|
||||
#include "../qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@
|
|||
#ifndef QT_NO_ACCESSIBILITY
|
||||
#include <QtCore/qglobal.h>
|
||||
|
||||
#include "../qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include <QtCore/qsharedpointer.h>
|
||||
#include <QtGui/qaccessible.h>
|
||||
#ifndef Q_CC_MINGW
|
||||
|
|
|
|||
|
|
@ -1,179 +0,0 @@
|
|||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2016 The Qt Company Ltd.
|
||||
** Contact: https://www.qt.io/licensing/
|
||||
**
|
||||
** This file is part of the plugins of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL$
|
||||
** Commercial License Usage
|
||||
** Licensees holding valid commercial Qt licenses may use this file in
|
||||
** accordance with the commercial license agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and The Qt Company. For licensing terms
|
||||
** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
** information use the contact form at https://www.qt.io/contact-us.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 3 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPL3 included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 3 requirements
|
||||
** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 2.0 or (at your option) the GNU General
|
||||
** Public license version 3 or any later version approved by the KDE Free
|
||||
** Qt Foundation. The licenses are as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
|
||||
** included in the packaging of this file. Please review the following
|
||||
** information to ensure the GNU General Public License requirements will
|
||||
** be met: https://www.gnu.org/licenses/gpl-2.0.html and
|
||||
** https://www.gnu.org/licenses/gpl-3.0.html.
|
||||
**
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef QTWINDOWS_ADDITIONAL_H
|
||||
#define QTWINDOWS_ADDITIONAL_H
|
||||
|
||||
#include <QtCore/QtGlobal> // get compiler define
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#ifndef WM_THEMECHANGED
|
||||
# define WM_THEMECHANGED 0x031A
|
||||
#endif
|
||||
|
||||
#ifndef WM_DWMCOMPOSITIONCHANGED
|
||||
# define WM_DWMCOMPOSITIONCHANGED 0x31E
|
||||
#endif
|
||||
|
||||
#ifndef GWL_HWNDPARENT
|
||||
# define GWL_HWNDPARENT (-8)
|
||||
#endif
|
||||
|
||||
/* Complement the definitions and declarations missing
|
||||
* when using MinGW or older Windows SDKs. */
|
||||
|
||||
#if defined(Q_CC_MINGW)
|
||||
# if !defined(ULW_ALPHA)
|
||||
# define ULW_ALPHA 0x00000002
|
||||
# define LWA_ALPHA 0x00000002
|
||||
# endif // !defined(ULW_ALPHA)
|
||||
# define SPI_GETFONTSMOOTHINGTYPE 0x200A
|
||||
# define FE_FONTSMOOTHINGCLEARTYPE 0x0002
|
||||
# define CLEARTYPE_QUALITY 5
|
||||
# define SPI_GETDROPSHADOW 0x1024
|
||||
# define COLOR_MENUHILIGHT 29
|
||||
# define COLOR_MENUBAR 30
|
||||
# define CF_DIBV5 17
|
||||
|
||||
#if !defined(CO_E_NOT_SUPPORTED)
|
||||
#define CO_E_NOT_SUPPORTED _HRESULT_TYPEDEF_(0x80004021L)
|
||||
#endif
|
||||
|
||||
#define IFMETHOD HRESULT STDMETHODCALLTYPE
|
||||
#define IFACEMETHODIMP STDMETHODIMP
|
||||
#define IFACEMETHODIMP_(type) STDMETHODIMP_(type)
|
||||
|
||||
// For accessibility:
|
||||
#ifdef __cplusplus
|
||||
#define EXTERN_C extern "C"
|
||||
#else
|
||||
#define EXTERN_C extern
|
||||
#endif
|
||||
|
||||
#define CHILDID_SELF 0
|
||||
#define WM_GETOBJECT 0x003D
|
||||
|
||||
#ifndef SHGFI_ADDOVERLAYS // Shell structures for icons.
|
||||
typedef struct _SHSTOCKICONINFO
|
||||
{
|
||||
DWORD cbSize;
|
||||
HICON hIcon;
|
||||
int iSysImageIndex;
|
||||
int iIcon;
|
||||
WCHAR szPath[MAX_PATH];
|
||||
} SHSTOCKICONINFO;
|
||||
|
||||
# define SIID_SHIELD 77
|
||||
# define SHGFI_ADDOVERLAYS 0x20
|
||||
# define SHGFI_OVERLAYINDEX 0x40
|
||||
#endif // SIID_SHIELD
|
||||
|
||||
#if !defined(__MINGW64_VERSION_MAJOR)
|
||||
|
||||
#define STATE_SYSTEM_HASPOPUP 0x40000000
|
||||
#define STATE_SYSTEM_PROTECTED 0x20000000
|
||||
|
||||
typedef struct tagUPDATELAYEREDWINDOWINFO {
|
||||
DWORD cbSize;
|
||||
HDC hdcDst;
|
||||
const POINT *pptDst;
|
||||
const SIZE *psize;
|
||||
HDC hdcSrc;
|
||||
const POINT *pptSrc;
|
||||
COLORREF crKey;
|
||||
const BLENDFUNCTION *pblend;
|
||||
DWORD dwFlags;
|
||||
const RECT *prcDirty;
|
||||
} UPDATELAYEREDWINDOWINFO, *PUPDATELAYEREDWINDOWINFO;
|
||||
|
||||
#endif // if !defined(__MINGW64_VERSION_MAJOR)
|
||||
|
||||
// OpenGL Pixelformat flags.
|
||||
#define PFD_SUPPORT_DIRECTDRAW 0x00002000
|
||||
#define PFD_DIRECT3D_ACCELERATED 0x00004000
|
||||
#define PFD_SUPPORT_COMPOSITION 0x00008000
|
||||
|
||||
// IME.
|
||||
#define IMR_CONFIRMRECONVERTSTRING 0x0005
|
||||
|
||||
#ifndef MAPVK_VK_TO_CHAR
|
||||
# define MAPVK_VK_TO_CHAR 2
|
||||
#endif
|
||||
|
||||
#endif // if defined(Q_CC_MINGW)
|
||||
|
||||
/* Touch is supported from Windows 7 onwards and data structures
|
||||
* are present in the Windows SDK's, but not in older MSVC Express
|
||||
* versions. */
|
||||
|
||||
#if defined(Q_CC_MINGW) || !defined(TOUCHEVENTF_MOVE)
|
||||
|
||||
#define WM_TOUCH 0x0240
|
||||
|
||||
typedef struct tagTOUCHINPUT {
|
||||
LONG x;
|
||||
LONG y;
|
||||
HANDLE hSource;
|
||||
DWORD dwID;
|
||||
DWORD dwFlags;
|
||||
DWORD dwMask;
|
||||
DWORD dwTime;
|
||||
ULONG_PTR dwExtraInfo;
|
||||
DWORD cxContact;
|
||||
DWORD cyContact;
|
||||
} TOUCHINPUT, *PTOUCHINPUT;
|
||||
typedef TOUCHINPUT const * PCTOUCHINPUT;
|
||||
|
||||
# define TOUCHEVENTF_MOVE 0x0001
|
||||
# define TOUCHEVENTF_DOWN 0x0002
|
||||
# define TOUCHEVENTF_UP 0x0004
|
||||
# define TOUCHEVENTF_INRANGE 0x0008
|
||||
# define TOUCHEVENTF_PRIMARY 0x0010
|
||||
# define TOUCHEVENTF_NOCOALESCE 0x0020
|
||||
# define TOUCHEVENTF_PALM 0x0080
|
||||
# define TOUCHINPUTMASKF_CONTACTAREA 0x0004
|
||||
# define TOUCHINPUTMASKF_EXTRAINFO 0x0002
|
||||
|
||||
#endif // if defined(Q_CC_MINGW) || !defined(TOUCHEVENTF_MOVE)
|
||||
|
||||
#ifndef WM_GESTURE
|
||||
# define WM_GESTURE 0x0119
|
||||
#endif
|
||||
|
||||
#endif // QTWINDOWS_ADDITIONAL_H
|
||||
|
|
@ -41,9 +41,21 @@
|
|||
#ifndef QTWINDOWSGLOBAL_H
|
||||
#define QTWINDOWSGLOBAL_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include <QtCore/qnamespace.h>
|
||||
|
||||
#ifndef WM_DWMCOMPOSITIONCHANGED // MinGW.
|
||||
# define WM_DWMCOMPOSITIONCHANGED 0x31E
|
||||
#endif
|
||||
|
||||
#ifndef WM_TOUCH
|
||||
# define WM_TOUCH 0x0240
|
||||
#endif
|
||||
|
||||
#ifndef WM_GESTURE
|
||||
# define WM_GESTURE 0x0119
|
||||
#endif
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
namespace QtWindows
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSBACKINGSTORE_H
|
||||
#define QWINDOWSBACKINGSTORE_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <qpa/qplatformbackingstore.h>
|
||||
#include <QtCore/QScopedPointer>
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
#define QWINDOWSCONTEXT_H
|
||||
|
||||
#include "qtwindowsglobal.h"
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QScopedPointer>
|
||||
#include <QtCore/QSharedPointer>
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSCURSOR_H
|
||||
#define QWINDOWSCURSOR_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <qpa/qplatformcursor.h>
|
||||
#include <QtCore/QSharedPointer>
|
||||
|
|
|
|||
|
|
@ -70,300 +70,10 @@
|
|||
|
||||
#include <algorithm>
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
// #define USE_NATIVE_COLOR_DIALOG /* Testing purposes only */
|
||||
|
||||
#ifdef Q_CC_MINGW /* Add missing declarations for MinGW */
|
||||
|
||||
#ifndef __IShellLibrary_FWD_DEFINED__
|
||||
|
||||
/* Constants obtained by running the below stream operator for
|
||||
* CLSID, IID on the constants in the Windows SDK libraries. */
|
||||
|
||||
static const IID IID_IFileOpenDialog = {0xd57c7288, 0xd4ad, 0x4768, {0xbe, 0x02, 0x9d, 0x96, 0x95, 0x32, 0xd9, 0x60}};
|
||||
static const IID IID_IFileSaveDialog = {0x84bccd23, 0x5fde, 0x4cdb,{0xae, 0xa4, 0xaf, 0x64, 0xb8, 0x3d, 0x78, 0xab}};
|
||||
#ifdef __MINGW64_VERSION_MAJOR
|
||||
static const IID q_IID_IShellItem = {0x43826d1e, 0xe718, 0x42ee, {0xbc, 0x55, 0xa1, 0xe2, 0x61, 0xc3, 0x7b, 0xfe}};
|
||||
#define IID_IShellItem q_IID_IShellItem
|
||||
#else
|
||||
static const IID IID_IShellItem = {0x43826d1e, 0xe718, 0x42ee, {0xbc, 0x55, 0xa1, 0xe2, 0x61, 0xc3, 0x7b, 0xfe}};
|
||||
static const IID IID_IShellItemArray = {0xb63ea76d, 0x1f85, 0x456f, {0xa1, 0x9c, 0x48, 0x15, 0x9e, 0xfa, 0x85, 0x8b}};
|
||||
# define LFF_FORCEFILESYSTEM 1
|
||||
#endif
|
||||
static const IID IID_IFileDialogEvents = {0x973510db, 0x7d7f, 0x452b,{0x89, 0x75, 0x74, 0xa8, 0x58, 0x28, 0xd3, 0x54}};
|
||||
static const CLSID CLSID_FileOpenDialog = {0xdc1c5a9c, 0xe88a, 0x4dde, {0xa5, 0xa1, 0x60, 0xf8, 0x2a, 0x20, 0xae, 0xf7}};
|
||||
static const CLSID CLSID_FileSaveDialog = {0xc0b4e2f3, 0xba21, 0x4773,{0x8d, 0xba, 0x33, 0x5e, 0xc9, 0x46, 0xeb, 0x8b}};
|
||||
|
||||
typedef struct _COMDLG_FILTERSPEC
|
||||
{
|
||||
LPCWSTR pszName;
|
||||
LPCWSTR pszSpec;
|
||||
} COMDLG_FILTERSPEC;
|
||||
|
||||
|
||||
#define FOS_OVERWRITEPROMPT 0x2
|
||||
#define FOS_STRICTFILETYPES 0x4
|
||||
#define FOS_NOCHANGEDIR 0x8
|
||||
#define FOS_PICKFOLDERS 0x20
|
||||
#define FOS_FORCEFILESYSTEM 0x40
|
||||
#define FOS_ALLNONSTORAGEITEMS 0x80
|
||||
#define FOS_NOVALIDATE 0x100
|
||||
#define FOS_ALLOWMULTISELECT 0x200
|
||||
#define FOS_PATHMUSTEXIST 0x800
|
||||
#define FOS_FILEMUSTEXIST 0x1000
|
||||
#define FOS_CREATEPROMPT 0x2000
|
||||
#define FOS_SHAREAWARE 0x4000
|
||||
#define FOS_NOREADONLYRETURN 0x8000
|
||||
#define FOS_NOTESTFILECREATE 0x10000
|
||||
#define FOS_HIDEMRUPLACES 0x20000
|
||||
#define FOS_HIDEPINNEDPLACES 0x40000
|
||||
#define FOS_NODEREFERENCELINKS 0x100000
|
||||
#define FOS_DONTADDTORECENT 0x2000000
|
||||
#define FOS_FORCESHOWHIDDEN 0x10000000
|
||||
#define FOS_DEFAULTNOMINIMODE 0x20000000
|
||||
#define FOS_FORCEPREVIEWPANEON 0x40000000
|
||||
|
||||
#if __MINGW64_VERSION_MAJOR < 2
|
||||
typedef int GETPROPERTYSTOREFLAGS;
|
||||
#define GPS_DEFAULT 0x00000000
|
||||
#define GPS_HANDLERPROPERTIESONLY 0x00000001
|
||||
#define GPS_READWRITE 0x00000002
|
||||
#define GPS_TEMPORARY 0x00000004
|
||||
#define GPS_FASTPROPERTIESONLY 0x00000008
|
||||
#define GPS_OPENSLOWITEM 0x00000010
|
||||
#define GPS_DELAYCREATION 0x00000020
|
||||
#define GPS_BESTEFFORT 0x00000040
|
||||
#define GPS_MASK_VALID 0x0000007F
|
||||
#endif
|
||||
|
||||
typedef int (QT_WIN_CALLBACK* BFFCALLBACK)(HWND hwnd, UINT uMsg, LPARAM lParam, LPARAM lpData);
|
||||
// message from browser
|
||||
#define BFFM_INITIALIZED 1
|
||||
#define BFFM_SELCHANGED 2
|
||||
#define BFFM_ENABLEOK (WM_USER + 101)
|
||||
// Browsing for directory.
|
||||
#define BIF_NONEWFOLDERBUTTON 0x0200
|
||||
#define BIF_NOTRANSLATETARGETS 0x0400
|
||||
#define BIF_BROWSEFORCOMPUTER 0x1000
|
||||
#define BIF_BROWSEFORPRINTER 0x2000
|
||||
#define BIF_BROWSEINCLUDEFILES 0x4000
|
||||
#define BIF_SHAREABLE 0x8000
|
||||
|
||||
//the enums
|
||||
typedef enum {
|
||||
SIATTRIBFLAGS_AND = 0x1,
|
||||
SIATTRIBFLAGS_OR = 0x2,
|
||||
SIATTRIBFLAGS_APPCOMPAT = 0x3,
|
||||
SIATTRIBFLAGS_MASK = 0x3
|
||||
} SIATTRIBFLAGS;
|
||||
#ifndef __MINGW64_VERSION_MAJOR
|
||||
typedef enum {
|
||||
SIGDN_NORMALDISPLAY = 0x00000000,
|
||||
SIGDN_PARENTRELATIVEPARSING = 0x80018001,
|
||||
SIGDN_PARENTRELATIVEFORADDRESSBAR = 0x8001c001,
|
||||
SIGDN_DESKTOPABSOLUTEPARSING = 0x80028000,
|
||||
SIGDN_PARENTRELATIVEEDITING = 0x80031001,
|
||||
SIGDN_DESKTOPABSOLUTEEDITING = 0x8004c000,
|
||||
SIGDN_FILESYSPATH = 0x80058000,
|
||||
SIGDN_URL = 0x80068000
|
||||
} SIGDN;
|
||||
#endif
|
||||
typedef enum {
|
||||
FDAP_BOTTOM = 0x00000000,
|
||||
FDAP_TOP = 0x00000001
|
||||
} FDAP;
|
||||
typedef enum {
|
||||
FDESVR_DEFAULT = 0x00000000,
|
||||
FDESVR_ACCEPT = 0x00000001,
|
||||
FDESVR_REFUSE = 0x00000002
|
||||
} FDE_SHAREVIOLATION_RESPONSE;
|
||||
typedef FDE_SHAREVIOLATION_RESPONSE FDE_OVERWRITE_RESPONSE;
|
||||
|
||||
//the structs
|
||||
typedef struct {
|
||||
LPCWSTR pszName;
|
||||
LPCWSTR pszSpec;
|
||||
} qt_COMDLG_FILTERSPEC;
|
||||
typedef struct {
|
||||
GUID fmtid;
|
||||
DWORD pid;
|
||||
} qt_PROPERTYKEY;
|
||||
|
||||
typedef struct {
|
||||
USHORT cb;
|
||||
BYTE abID[1];
|
||||
} qt_SHITEMID, *qt_LPSHITEMID;
|
||||
typedef struct {
|
||||
qt_SHITEMID mkid;
|
||||
} qt_ITEMIDLIST, *qt_LPITEMIDLIST;
|
||||
typedef const qt_ITEMIDLIST *qt_LPCITEMIDLIST;
|
||||
typedef struct {
|
||||
HWND hwndOwner;
|
||||
qt_LPCITEMIDLIST pidlRoot;
|
||||
LPWSTR pszDisplayName;
|
||||
LPCWSTR lpszTitle;
|
||||
UINT ulFlags;
|
||||
BFFCALLBACK lpfn;
|
||||
LPARAM lParam;
|
||||
int iImage;
|
||||
} qt_BROWSEINFO;
|
||||
|
||||
#endif // __IShellLibrary_FWD_DEFINED__
|
||||
|
||||
#ifndef __IFileDialogEvents_FWD_DEFINED__
|
||||
DECLARE_INTERFACE(IFileDialogEvents);
|
||||
#endif
|
||||
|
||||
#ifndef __IShellItem_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IShellItem, IUnknown)
|
||||
{
|
||||
STDMETHOD(BindToHandler)(THIS_ IBindCtx *pbc, REFGUID bhid, REFIID riid, void **ppv) PURE;
|
||||
STDMETHOD(GetParent)(THIS_ IShellItem **ppsi) PURE;
|
||||
STDMETHOD(GetDisplayName)(THIS_ SIGDN sigdnName, LPWSTR *ppszName) PURE;
|
||||
STDMETHOD(GetAttributes)(THIS_ ULONG sfgaoMask, ULONG *psfgaoAttribs) PURE;
|
||||
STDMETHOD(Compare)(THIS_ IShellItem *psi, DWORD hint, int *piOrder) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IShellItemFilter_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IShellItemFilter, IUnknown)
|
||||
{
|
||||
STDMETHOD(IncludeItem)(THIS_ IShellItem *psi) PURE;
|
||||
STDMETHOD(GetEnumFlagsForItem)(THIS_ IShellItem *psi, DWORD *pgrfFlags) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IEnumShellItems_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IEnumShellItems, IUnknown)
|
||||
{
|
||||
STDMETHOD(Next)(THIS_ ULONG celt, IShellItem **rgelt, ULONG *pceltFetched) PURE;
|
||||
STDMETHOD(Skip)(THIS_ ULONG celt) PURE;
|
||||
STDMETHOD(Reset)(THIS_) PURE;
|
||||
STDMETHOD(Clone)(THIS_ IEnumShellItems **ppenum) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IShellItemArray_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IShellItemArray, IUnknown)
|
||||
{
|
||||
STDMETHOD(BindToHandler)(THIS_ IBindCtx *pbc, REFGUID rbhid, REFIID riid, void **ppvOut) PURE;
|
||||
STDMETHOD(GetPropertyStore)(THIS_ GETPROPERTYSTOREFLAGS flags, REFIID riid, void **ppv) PURE;
|
||||
STDMETHOD(GetPropertyDescriptionList)(THIS_ const qt_PROPERTYKEY *keyType, REFIID riid, void **ppv) PURE;
|
||||
STDMETHOD(GetAttributes)(THIS_ SIATTRIBFLAGS dwAttribFlags, ULONG sfgaoMask, ULONG *psfgaoAttribs) PURE;
|
||||
STDMETHOD(GetCount)(THIS_ DWORD *pdwNumItems) PURE;
|
||||
STDMETHOD(GetItemAt)(THIS_ DWORD dwIndex, IShellItem **ppsi) PURE;
|
||||
STDMETHOD(EnumItems)(THIS_ IEnumShellItems **ppenumShellItems) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IShellLibrary_INTERFACE_DEFINED__
|
||||
|
||||
enum LIBRARYOPTIONFLAGS {};
|
||||
enum DEFAULTSAVEFOLDERTYPE { DSFT_DETECT = 1 };
|
||||
enum LIBRARYSAVEFLAGS {};
|
||||
|
||||
DECLARE_INTERFACE_(IShellLibrary, IUnknown)
|
||||
{
|
||||
STDMETHOD(LoadLibraryFromItem)(THIS_ IShellItem *psiLibrary, DWORD grfMode) PURE;
|
||||
STDMETHOD(LoadLibraryFromKnownFolder)(THIS_ const GUID &kfidLibrary, DWORD grfMode) PURE;
|
||||
STDMETHOD(AddFolder)(THIS_ IShellItem *psiLocation) PURE;
|
||||
STDMETHOD(RemoveFolder)(THIS_ IShellItem *psiLocation) PURE;
|
||||
STDMETHOD(GetFolders)(THIS_ int lff, REFIID riid, void **ppv) PURE;
|
||||
STDMETHOD(ResolveFolder)(THIS_ IShellItem *psiFolderToResolve, DWORD dwTimeout, REFIID riid, void **ppv) PURE;
|
||||
STDMETHOD(GetDefaultSaveFolder)(THIS_ DEFAULTSAVEFOLDERTYPE dsft, REFIID riid, void **ppv) PURE;
|
||||
STDMETHOD(SetDefaultSaveFolder)(THIS_ DEFAULTSAVEFOLDERTYPE dsft, IShellItem *psi) PURE;
|
||||
STDMETHOD(GetOptions)(THIS_ LIBRARYOPTIONFLAGS *plofOptions) PURE;
|
||||
STDMETHOD(SetOptions)(THIS_ LIBRARYOPTIONFLAGS lofMask, LIBRARYOPTIONFLAGS lofOptions) PURE;
|
||||
STDMETHOD(GetFolderType)(THIS_ GUID *pftid) PURE;
|
||||
STDMETHOD(SetFolderType)(THIS_ const GUID &ftid) PURE;
|
||||
STDMETHOD(GetIcon)(THIS_ LPWSTR *ppszIcon) PURE;
|
||||
STDMETHOD(SetIcon)(THIS_ LPCWSTR pszIcon) PURE;
|
||||
STDMETHOD(Commit)(THIS_) PURE;
|
||||
STDMETHOD(Save)(THIS_ IShellItem *psiFolderToSaveIn, LPCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf, IShellItem **ppsiSavedTo) PURE;
|
||||
STDMETHOD(SaveInKnownFolder)(THIS_ const GUID &kfidToSaveIn, LPCWSTR pszLibraryName, LIBRARYSAVEFLAGS lsf,IShellItem **ppsiSavedTo) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IModalWindow_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IModalWindow, IUnknown)
|
||||
{
|
||||
STDMETHOD(Show)(THIS_ HWND hwndParent) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IFileDialog_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IFileDialog, IModalWindow)
|
||||
{
|
||||
STDMETHOD(SetFileTypes)(THIS_ UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec) PURE;
|
||||
STDMETHOD(SetFileTypeIndex)(THIS_ UINT iFileType) PURE;
|
||||
STDMETHOD(GetFileTypeIndex)(THIS_ UINT *piFileType) PURE;
|
||||
STDMETHOD(Advise)(THIS_ IFileDialogEvents *pfde, DWORD *pdwCookie) PURE;
|
||||
STDMETHOD(Unadvise)(THIS_ DWORD dwCookie) PURE;
|
||||
STDMETHOD(SetOptions)(THIS_ DWORD fos) PURE;
|
||||
STDMETHOD(GetOptions)(THIS_ DWORD *pfos) PURE;
|
||||
STDMETHOD(SetDefaultFolder)(THIS_ IShellItem *psi) PURE;
|
||||
STDMETHOD(SetFolder)(THIS_ IShellItem *psi) PURE;
|
||||
STDMETHOD(GetFolder)(THIS_ IShellItem **ppsi) PURE;
|
||||
STDMETHOD(GetCurrentSelection)(THIS_ IShellItem **ppsi) PURE;
|
||||
STDMETHOD(SetFileName)(THIS_ LPCWSTR pszName) PURE;
|
||||
STDMETHOD(GetFileName)(THIS_ LPWSTR *pszName) PURE;
|
||||
STDMETHOD(SetTitle)(THIS_ LPCWSTR pszTitle) PURE;
|
||||
STDMETHOD(SetOkButtonLabel)(THIS_ LPCWSTR pszText) PURE;
|
||||
STDMETHOD(SetFileNameLabel)(THIS_ LPCWSTR pszLabel) PURE;
|
||||
STDMETHOD(GetResult)(THIS_ IShellItem **ppsi) PURE;
|
||||
STDMETHOD(AddPlace)(THIS_ IShellItem *psi, FDAP fdap) PURE;
|
||||
STDMETHOD(SetDefaultExtension)(THIS_ LPCWSTR pszDefaultExtension) PURE;
|
||||
STDMETHOD(Close)(THIS_ HRESULT hr) PURE;
|
||||
STDMETHOD(SetClientGuid)(THIS_ REFGUID guid) PURE;
|
||||
STDMETHOD(ClearClientData)(THIS_) PURE;
|
||||
STDMETHOD(SetFilter)(THIS_ IShellItemFilter *pFilter) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IFileDialogEvents_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IFileDialogEvents, IUnknown)
|
||||
{
|
||||
STDMETHOD(OnFileOk)(THIS_ IFileDialog *pfd) PURE;
|
||||
STDMETHOD(OnFolderChanging)(THIS_ IFileDialog *pfd, IShellItem *psiFolder) PURE;
|
||||
STDMETHOD(OnFolderChange)(THIS_ IFileDialog *pfd) PURE;
|
||||
STDMETHOD(OnSelectionChange)(THIS_ IFileDialog *pfd) PURE;
|
||||
STDMETHOD(OnShareViolation)(THIS_ IFileDialog *pfd, IShellItem *psi, FDE_SHAREVIOLATION_RESPONSE *pResponse) PURE;
|
||||
STDMETHOD(OnTypeChange)(THIS_ IFileDialog *pfd) PURE;
|
||||
STDMETHOD(OnOverwrite)(THIS_ IFileDialog *pfd, IShellItem *psi, FDE_OVERWRITE_RESPONSE *pResponse) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IFileOpenDialog_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IFileOpenDialog, IFileDialog)
|
||||
{
|
||||
STDMETHOD(GetResults)(THIS_ IShellItemArray **ppenum) PURE;
|
||||
STDMETHOD(GetSelectedItems)(THIS_ IShellItemArray **ppsai) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#ifndef __IPropertyStore_FWD_DEFINED__
|
||||
typedef IUnknown IPropertyStore;
|
||||
#endif
|
||||
|
||||
#ifndef __IFileOperationProgressSink_FWD_DEFINED__
|
||||
typedef IUnknown IFileOperationProgressSink;
|
||||
#endif
|
||||
|
||||
#ifndef __IFileSaveDialog_INTERFACE_DEFINED__
|
||||
DECLARE_INTERFACE_(IFileSaveDialog, IFileDialog)
|
||||
{
|
||||
public:
|
||||
STDMETHOD(SetSaveAsItem)(THIS_ IShellItem *psi) PURE;
|
||||
STDMETHOD(SetProperties)(THIS_ IPropertyStore *pStore) PURE;
|
||||
STDMETHOD(SetCollectedProperties)(THIS_ IPropertyStore *pStore) PURE;
|
||||
STDMETHOD(GetProperties)(THIS_ IPropertyStore **ppStore) PURE;
|
||||
STDMETHOD(ApplyProperties)(THIS_ IShellItem *psi, IPropertyStore *pStore, HWND hwnd, IFileOperationProgressSink *pSink) PURE;
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif // Q_CC_MINGW
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
#ifndef QT_NO_DEBUG_STREAM
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSDIALOGHELPER_H
|
||||
#define QWINDOWSDIALOGHELPER_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include <qpa/qplatformdialoghelper.h>
|
||||
#include <qpa/qplatformtheme.h>
|
||||
#include <QtCore/QStringList>
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
#endif
|
||||
#include "qwindowsintegration.h"
|
||||
#include "qwindowsole.h"
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include "qwindowswindow.h"
|
||||
#include "qwindowsmousehandler.h"
|
||||
#include "qwindowscursor.h"
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
#include "qwindowscontext.h"
|
||||
#include "qwindowsfontengine.h"
|
||||
#include "qwindowsfontenginedirectwrite.h"
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtGui/QFont>
|
||||
#include <QtGui/QGuiApplication>
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
|
||||
#include <qpa/qplatformfontdatabase.h>
|
||||
#include <QtCore/QSharedPointer>
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#if !defined(QT_NO_DIRECTWRITE)
|
||||
struct IDWriteFactory;
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
|
||||
#include <QtPlatformSupport/private/qbasicfontdatabase_p.h>
|
||||
#include <QtCore/QSharedPointer>
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
#include "qwindowsnativeimage.h"
|
||||
#include "qwindowscontext.h"
|
||||
#include "qwindowsfontdatabase.h"
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include "qwindowsfontenginedirectwrite.h"
|
||||
|
||||
#include <QtGui/private/qtextengine_p.h> // glyph_metrics_t
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@
|
|||
#include <QtCore/QSharedPointer>
|
||||
#include <QtCore/QMetaType>
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSGLCONTEXT_H
|
||||
#define QWINDOWSGLCONTEXT_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include "qwindowsopenglcontext.h"
|
||||
|
||||
#include <QtGui/QOpenGLContext>
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSINPUTCONTEXT_H
|
||||
#define QWINDOWSINPUTCONTEXT_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QLocale>
|
||||
#include <QtCore/QPointer>
|
||||
|
|
|
|||
|
|
@ -114,12 +114,6 @@ QT_BEGIN_NAMESPACE
|
|||
including a considerable part of the Windows SDK.
|
||||
\endlist
|
||||
|
||||
The file \c qtwindows_additional.h contains defines and declarations that
|
||||
are missing in MinGW. When encountering missing declarations, it should
|
||||
be added there so that \c #ifdefs for MinGW can be avoided. Similarly,
|
||||
\c qplatformfunctions_wince.h contains defines and declarations for
|
||||
Windows Embedded.
|
||||
|
||||
When using a function from the WinAPI, the minimum supported Windows version
|
||||
and Windows Embedded support should be checked. If the function is not supported
|
||||
on Windows XP or is not present in the MinGW-headers, it should be dynamically
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSINTERNALMIME_H
|
||||
#define QWINDOWSINTERNALMIME_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtGui/private/qdnd_p.h> // QInternalMime
|
||||
#include <QtCore/QVariant>
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSKEYMAPPER_H
|
||||
#define QWINDOWSKEYMAPPER_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QLocale>
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSMIME_H
|
||||
#define QWINDOWSMIME_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QVector>
|
||||
#include <QtCore/QList>
|
||||
|
|
|
|||
|
|
@ -56,6 +56,37 @@
|
|||
|
||||
#include <windowsx.h>
|
||||
|
||||
/* Touch is supported from Windows 7 onwards and data structures
|
||||
* are present in the Windows SDK's, but not in older MSVC Express
|
||||
* versions. */
|
||||
|
||||
#if defined(Q_CC_MINGW) || !defined(TOUCHEVENTF_MOVE)
|
||||
|
||||
typedef struct tagTOUCHINPUT {
|
||||
LONG x;
|
||||
LONG y;
|
||||
HANDLE hSource;
|
||||
DWORD dwID;
|
||||
DWORD dwFlags;
|
||||
DWORD dwMask;
|
||||
DWORD dwTime;
|
||||
ULONG_PTR dwExtraInfo;
|
||||
DWORD cxContact;
|
||||
DWORD cyContact;
|
||||
} TOUCHINPUT, *PTOUCHINPUT;
|
||||
typedef TOUCHINPUT const * PCTOUCHINPUT;
|
||||
|
||||
# define TOUCHEVENTF_MOVE 0x0001
|
||||
# define TOUCHEVENTF_DOWN 0x0002
|
||||
# define TOUCHEVENTF_UP 0x0004
|
||||
# define TOUCHEVENTF_INRANGE 0x0008
|
||||
# define TOUCHEVENTF_PRIMARY 0x0010
|
||||
# define TOUCHEVENTF_NOCOALESCE 0x0020
|
||||
# define TOUCHEVENTF_PALM 0x0080
|
||||
# define TOUCHINPUTMASKF_CONTACTAREA 0x0004
|
||||
# define TOUCHINPUTMASKF_EXTRAINFO 0x0002
|
||||
#endif // if defined(Q_CC_MINGW) || !defined(TOUCHEVENTF_MOVE)
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
static inline void compressMouseMove(MSG *msg)
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@
|
|||
#define QWINDOWSMOUSEHANDLER_H
|
||||
|
||||
#include "qtwindowsglobal.h"
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QPointer>
|
||||
#include <QtCore/QHash>
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSNATIVEIMAGE_H
|
||||
#define QWINDOWSNATIVEIMAGE_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtGui/QImage>
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSOLE_H
|
||||
#define QWINDOWSOLE_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QMap>
|
||||
#include <QtCore/QPointer>
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@
|
|||
#include "qwindowsintegration.h"
|
||||
#include "qwindowscursor.h"
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QSettings>
|
||||
#include <QtGui/QPixmap>
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
|
||||
#define QT_NO_URL_CAST_FROM_STRING
|
||||
#include "qwindowsservices.h"
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
|
||||
#include <QtCore/QUrl>
|
||||
#include <QtCore/QDebug>
|
||||
|
|
|
|||
|
|
@ -1260,6 +1260,11 @@ static inline HWND transientParentHwnd(HWND hwnd)
|
|||
// really exist on Windows, the relationship is set by passing a parent along with !WS_CHILD
|
||||
// to window creation or by setting the parent using GWL_HWNDPARENT (as opposed to
|
||||
// SetParent, which would make it a real child).
|
||||
|
||||
#ifndef GWL_HWNDPARENT
|
||||
# define GWL_HWNDPARENT (-8)
|
||||
#endif
|
||||
|
||||
void QWindowsWindow::updateTransientParent() const
|
||||
{
|
||||
if (window()->type() == Qt::Popup)
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifndef QWINDOWSWINDOW_H
|
||||
#define QWINDOWSWINDOW_H
|
||||
|
||||
#include "qtwindows_additional.h"
|
||||
#include <QtCore/qt_windows.h>
|
||||
#include "qwindowscursor.h"
|
||||
|
||||
#include <qpa/qplatformwindow.h>
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ HEADERS += \
|
|||
$$PWD/qwindowsfontdatabase.h \
|
||||
$$PWD/qwindowsmousehandler.h \
|
||||
$$PWD/qtwindowsglobal.h \
|
||||
$$PWD/qtwindows_additional.h \
|
||||
$$PWD/qwindowsole.h \
|
||||
$$PWD/qwindowsmime.h \
|
||||
$$PWD/qwindowsinternalmimedata.h \
|
||||
|
|
|
|||
Loading…
Reference in New Issue