diff options
Diffstat (limited to 'src/plugins/platforms/windows/qplatformfunctions_wince.h')
-rw-r--r-- | src/plugins/platforms/windows/qplatformfunctions_wince.h | 325 |
1 files changed, 325 insertions, 0 deletions
diff --git a/src/plugins/platforms/windows/qplatformfunctions_wince.h b/src/plugins/platforms/windows/qplatformfunctions_wince.h new file mode 100644 index 0000000000..0e6a859b49 --- /dev/null +++ b/src/plugins/platforms/windows/qplatformfunctions_wince.h @@ -0,0 +1,325 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/ +** +** This file is part of the plugins of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 as published by the Free Software Foundation +** and appearing in the file LICENSE.GPL included in the packaging of this +** file. Please review the following information to ensure the GNU General +** Public License version 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QPLATFORMFUNCTIONS_WCE_H +#define QPLATFORMFUNCTIONS_WCE_H + +#ifdef Q_OS_WINCE +#include <QtCore/qfunctions_wince.h> +#define UNDER_NT +#include <wingdi.h> +#include <objidl.h> + +#ifndef WM_MOUSELEAVE +# define WM_MOUSELEAVE 0x02A3 +#endif + +#ifndef WM_TOUCH +# define WM_TOUCH 0x0240 +#endif + +#ifndef WM_GETOBJECT +#define WM_GETOBJECT 0x003D +#endif + +#define GetWindowLongPtr GetWindowLong +#define SetWindowLongPtr SetWindowLong +#define GWLP_USERDATA GWL_USERDATA + +#ifndef CWP_SKIPINVISIBLE +#define CWP_SKIPINVISIBLE 0x0001 +#define findPlatformWindowAt(a, b, c) findPlatformWindowAt(a, b) +#endif + +#ifndef CS_OWNDC +#define CS_OWNDC 0x0020 +#endif + +#ifndef HWND_MESSAGE +#define HWND_MESSAGE 0 +#endif + +#ifndef CAPTUREBLT +#define CAPTUREBLT (DWORD)0x40000000 +#endif + +#define SW_SHOWMINIMIZED SW_MINIMIZE +#define SW_SHOWMINNOACTIVE SW_MINIMIZE + +#ifndef ChildWindowFromPointEx +#define ChildWindowFromPointEx(a, b, c) ChildWindowFromPoint(a, b) +#endif + +#ifndef CF_DIBV5 +#define CF_DIBV5 17 +#endif + +#ifndef WM_MOUSEACTIVATE +#define WM_MOUSEACTIVATE 0x0021 +#endif + +#ifndef WM_CHILDACTIVATE +#define WM_CHILDACTIVATE 0x0022 +#endif + +#ifndef WM_PARENTNOTIFY +#define WM_PARENTNOTIFY 0x0210 +#endif + +#ifndef WM_ENTERIDLE +#define WM_ENTERIDLE 0x0121 +#endif + +#ifndef WM_GETMINMAXINFO +#define WM_GETMINMAXINFO 0x0024 +#endif + +#ifndef WM_WINDOWPOSCHANGING +#define WM_WINDOWPOSCHANGING 0x0046 +#endif + +#ifndef WM_NCMOUSEMOVE +#define WM_NCMOUSEMOVE 0x00A0 +#endif + +#ifndef WM_NCMBUTTONDBLCLK +#define WM_NCMBUTTONDBLCLK 0x00A +#endif + +#ifndef WM_NCCREATE +#define WM_NCCREATE 0x0081 +#endif + +#ifndef WM_NCCALCSIZE +#define WM_NCCALCSIZE 0x0083 +#endif + +#ifndef WM_NCACTIVATE +#define WM_NCACTIVATE 0x0086 +#endif + +#ifndef WM_NCMOUSELEAVE +#define WM_NCMOUSELEAVE 0x02A2 +#endif + +#ifndef WM_NCLBUTTONDOWN +#define WM_NCLBUTTONDOWN 0x00A1 +#endif + +#ifndef WM_NCLBUTTONUP +#define WM_NCLBUTTONUP 0x00A2 +#endif + +#ifndef WM_NCPAINT +#define WM_NCPAINT 0x0085 +#endif + +#ifndef WM_NCHITTEST +#define WM_NCHITTEST 0x0084 +#endif + +#ifndef WM_THEMECHANGED +#define WM_THEMECHANGED 0x031A +#endif + +#ifndef WM_DISPLAYCHANGE +#define WM_DISPLAYCHANGE 0x007E +#endif + +#ifndef VREFRESH +#define VREFRESH 116 +#endif + +// application defines +#define SPI_SETNONCLIENTMETRICS 72 +#define SPI_SETICONTITLELOGFONT 0x0022 +#define WM_ACTIVATEAPP 0x001c +#define SW_PARENTCLOSING 1 +#define SW_OTHERMAXIMIZED 2 +#define SW_PARENTOPENING 3 +#define SW_OTHERRESTORED 4 +#define GET_XBUTTON_WPARAM(wParam) (HIWORD(wParam)) + +// drag n drop +#ifndef CFSTR_PERFORMEDDROPEFFECT +#define CFSTR_PERFORMEDDROPEFFECT TEXT("Performed DropEffect") +#endif + +// QWidget +#define SW_SHOWMINIMIZED SW_MINIMIZE + +// QRegion +#define ALTERNATE 0 +#define WINDING 1 + +// QFontEngine +typedef struct _FIXED { + WORD fract; + short value; +} FIXED; + +typedef struct tagPOINTFX { + FIXED x; + FIXED y; +} POINTFX; + +typedef struct _MAT2 { + FIXED eM11; + FIXED eM12; + FIXED eM21; + FIXED eM22; +} MAT2; + +typedef struct _GLYPHMETRICS { + UINT gmBlackBoxX; + UINT gmBlackBoxY; + POINT gmptGlyphOrigin; + short gmCellIncX; + short gmCellIncY; +} GLYPHMETRICS; + +typedef struct tagTTPOLYGONHEADER +{ + DWORD cb; + DWORD dwType; + POINTFX pfxStart; +} TTPOLYGONHEADER; + +typedef struct tagTTPOLYCURVE +{ + WORD wType; + WORD cpfx; + POINTFX apfx[1]; +} TTPOLYCURVE; + +#define GGO_NATIVE 2 +#define GGO_GLYPH_INDEX 0x0080 +#define TT_PRIM_LINE 1 +#define TT_PRIM_QSPLINE 2 +#define TT_PRIM_CSPLINE 3 +#define ANSI_VAR_FONT 12 + +#ifndef OleInitialize +#define OleInitialize(a) 0 +#endif + +#ifndef SPI_GETSNAPTODEFBUTTON +#define SPI_GETSNAPTODEFBUTTON 95 +#endif + +#ifndef WS_EX_LAYERED +#define WS_EX_LAYERED 0x00080000 +#endif + +// Clipboard -------------------------------------------------------- +#ifndef WM_CHANGECBCHAIN +#define WM_CHANGECBCHAIN 0x030D +#endif + +#ifndef WM_DRAWCLIPBOARD +#define WM_DRAWCLIPBOARD 0x0308 +#endif + +inline bool IsIconic( HWND /*hWnd*/ ) +{ + return false; +} + +inline bool IsZoomed( HWND /*hWnd*/ ) +{ + return true; +} + +inline int AddFontResourceExW( LPCWSTR /*name*/, DWORD /*fl*/, PVOID /*res*/) +{ + return 0; +} + +inline bool RemoveFontResourceExW( LPCWSTR /*name*/, DWORD /*fl*/, PVOID /*pdv*/) +{ + return 0; +} + +inline void OleUninitialize() +{ +} + +inline DWORD GetGlyphOutline( HDC /*hdc*/, UINT /*uChar*/, INT /*fuFormat*/, GLYPHMETRICS * /*lpgm*/, + DWORD /*cjBuffer*/, LPVOID /*pvBuffer*/, CONST MAT2 * /*lpmat2*/ ) +{ + return GDI_ERROR; +} + +#ifndef SPI_SETFONTSMOOTHINGTYPE +# define SPI_SETFONTSMOOTHINGTYPE 0x200B +#endif +#ifndef SPI_GETFONTSMOOTHINGTYPE +# define SPI_GETFONTSMOOTHINGTYPE 0x200A +#endif +#ifndef FE_FONTSMOOTHINGCLEARTYPE +# define FE_FONTSMOOTHINGCLEARTYPE 0x0002 +#endif + +#ifndef DEVICE_FONTTYPE +#define DEVICE_FONTTYPE 0x0002 +#endif + +#ifndef RASTER_FONTTYPE +#define RASTER_FONTTYPE 0x0001 +#endif + +#ifndef WM_DISPLAYCHANGE +#define WM_DISPLAYCHANGE 0x007E +#endif + +BOOL qt_wince_ChangeClipboardChain( + HWND hWndRemove, // handle to window to remove + HWND hWndNewNext // handle to next window +); +#define ChangeClipboardChain(a,b) qt_wince_ChangeClipboardChain(a,b); + +HWND qt_wince_SetClipboardViewer( + HWND hWndNewViewer // handle to clipboard viewer window +); +#define SetClipboardViewer(a) qt_wince_SetClipboardViewer(a) + +#endif // Q_OS_WINCE +#endif // QPLATFORMFUNCTIONS_WCE_H |