From 2b14556a96cadd05dd36f012d7636dd17b91fc12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Thu, 8 Oct 2020 12:07:26 +0200 Subject: Rename QtGui native interface implementation files Follows the naming convention used by the plugins as well. Change-Id: Icba62fc2aaa5acf0ab3c88599a63aab1f530a2ab Reviewed-by: Friedemann Kleint --- src/gui/platform/android/android.pri | 2 +- .../platform/android/qandroidnativeinterface.cpp | 61 ++++++++++++ .../platform/android/qandroidplatforminterface.cpp | 61 ------------ src/gui/platform/macos/macos.pri | 2 +- src/gui/platform/macos/qcocoanativeinterface.mm | 69 +++++++++++++ src/gui/platform/macos/qcocoaplatforminterface.mm | 69 ------------- src/gui/platform/unix/qunixnativeinterface.cpp | 107 +++++++++++++++++++++ src/gui/platform/unix/qunixplatforminterface.cpp | 107 --------------------- src/gui/platform/unix/unix.pri | 2 +- .../platform/windows/qwindowsnativeinterface.cpp | 74 ++++++++++++++ .../platform/windows/qwindowsplatforminterface.cpp | 74 -------------- src/gui/platform/windows/windows.pri | 2 +- 12 files changed, 315 insertions(+), 315 deletions(-) create mode 100644 src/gui/platform/android/qandroidnativeinterface.cpp delete mode 100644 src/gui/platform/android/qandroidplatforminterface.cpp create mode 100644 src/gui/platform/macos/qcocoanativeinterface.mm delete mode 100644 src/gui/platform/macos/qcocoaplatforminterface.mm create mode 100644 src/gui/platform/unix/qunixnativeinterface.cpp delete mode 100644 src/gui/platform/unix/qunixplatforminterface.cpp create mode 100644 src/gui/platform/windows/qwindowsnativeinterface.cpp delete mode 100644 src/gui/platform/windows/qwindowsplatforminterface.cpp (limited to 'src/gui/platform') diff --git a/src/gui/platform/android/android.pri b/src/gui/platform/android/android.pri index bdaa4b1279..f60cae1011 100644 --- a/src/gui/platform/android/android.pri +++ b/src/gui/platform/android/android.pri @@ -1 +1 @@ -SOURCES += $$PWD/qandroidplatforminterface.cpp +SOURCES += $$PWD/qandroidnativeinterface.cpp diff --git a/src/gui/platform/android/qandroidnativeinterface.cpp b/src/gui/platform/android/qandroidnativeinterface.cpp new file mode 100644 index 0000000000..bdb322add0 --- /dev/null +++ b/src/gui/platform/android/qandroidnativeinterface.cpp @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtGui module 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$ +** +****************************************************************************/ + +#include +#include + +#include +#include + +QT_BEGIN_NAMESPACE + +using namespace QNativeInterface::Private; + +#if defined(Q_OS_ANDROID) +QT_DEFINE_NATIVE_INTERFACE(QAndroidOffscreenSurface, QOffscreenSurface); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QAndroidOffScreenIntegration); + +QOffscreenSurface *QNativeInterface::QAndroidOffscreenSurface::fromNative(ANativeWindow *nativeSurface) +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QAndroidOffScreenIntegration::createOffscreenSurface>(nativeSurface); +} +#endif + +QT_END_NAMESPACE diff --git a/src/gui/platform/android/qandroidplatforminterface.cpp b/src/gui/platform/android/qandroidplatforminterface.cpp deleted file mode 100644 index bdb322add0..0000000000 --- a/src/gui/platform/android/qandroidplatforminterface.cpp +++ /dev/null @@ -1,61 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the QtGui module 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$ -** -****************************************************************************/ - -#include -#include - -#include -#include - -QT_BEGIN_NAMESPACE - -using namespace QNativeInterface::Private; - -#if defined(Q_OS_ANDROID) -QT_DEFINE_NATIVE_INTERFACE(QAndroidOffscreenSurface, QOffscreenSurface); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QAndroidOffScreenIntegration); - -QOffscreenSurface *QNativeInterface::QAndroidOffscreenSurface::fromNative(ANativeWindow *nativeSurface) -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QAndroidOffScreenIntegration::createOffscreenSurface>(nativeSurface); -} -#endif - -QT_END_NAMESPACE diff --git a/src/gui/platform/macos/macos.pri b/src/gui/platform/macos/macos.pri index f0107c6944..1931507427 100644 --- a/src/gui/platform/macos/macos.pri +++ b/src/gui/platform/macos/macos.pri @@ -1,4 +1,4 @@ SOURCES += \ - $$PWD/qcocoaplatforminterface.mm + $$PWD/qcocoanativeinterface.mm LIBS_PRIVATE += -framework AppKit diff --git a/src/gui/platform/macos/qcocoanativeinterface.mm b/src/gui/platform/macos/qcocoanativeinterface.mm new file mode 100644 index 0000000000..c075a07e66 --- /dev/null +++ b/src/gui/platform/macos/qcocoanativeinterface.mm @@ -0,0 +1,69 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtGui module 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$ +** +****************************************************************************/ + +#include +#include +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +using namespace QNativeInterface::Private; + +#ifndef QT_NO_OPENGL + +QT_DEFINE_NATIVE_INTERFACE(QCocoaGLContext, QOpenGLContext); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaGLIntegration); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaWindow); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaMenu); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaMenuBar); + +QOpenGLContext *QNativeInterface::QCocoaGLContext::fromNative(NSOpenGLContext *nativeContext, QOpenGLContext *shareContext) +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QCocoaGLIntegration::createOpenGLContext>(nativeContext, shareContext); +} + +#endif // QT_NO_OPENGL + +QT_END_NAMESPACE diff --git a/src/gui/platform/macos/qcocoaplatforminterface.mm b/src/gui/platform/macos/qcocoaplatforminterface.mm deleted file mode 100644 index c075a07e66..0000000000 --- a/src/gui/platform/macos/qcocoaplatforminterface.mm +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the QtGui module 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$ -** -****************************************************************************/ - -#include -#include -#include -#include -#include -#include - -#include - -QT_BEGIN_NAMESPACE - -using namespace QNativeInterface::Private; - -#ifndef QT_NO_OPENGL - -QT_DEFINE_NATIVE_INTERFACE(QCocoaGLContext, QOpenGLContext); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaGLIntegration); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaWindow); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaMenu); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QCocoaMenuBar); - -QOpenGLContext *QNativeInterface::QCocoaGLContext::fromNative(NSOpenGLContext *nativeContext, QOpenGLContext *shareContext) -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QCocoaGLIntegration::createOpenGLContext>(nativeContext, shareContext); -} - -#endif // QT_NO_OPENGL - -QT_END_NAMESPACE diff --git a/src/gui/platform/unix/qunixnativeinterface.cpp b/src/gui/platform/unix/qunixnativeinterface.cpp new file mode 100644 index 0000000000..378282936e --- /dev/null +++ b/src/gui/platform/unix/qunixnativeinterface.cpp @@ -0,0 +1,107 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtGui module 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$ +** +****************************************************************************/ + +#include + +#include +#include + +#include +#include +#include +#include + +#include + +QT_BEGIN_NAMESPACE + +using namespace QNativeInterface::Private; + +#ifndef QT_NO_OPENGL + +#if defined(Q_OS_LINUX) +QT_DEFINE_NATIVE_INTERFACE(QGLXContext, QOpenGLContext); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QGLXIntegration); + +QOpenGLContext *QNativeInterface::QGLXContext::fromNative(GLXContext configBasedContext, QOpenGLContext *shareContext) +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QGLXIntegration::createOpenGLContext>(configBasedContext, nullptr, shareContext); +} + +QOpenGLContext *QNativeInterface::QGLXContext::fromNative(GLXContext visualBasedContext, void *visualInfo, QOpenGLContext *shareContext) +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QGLXIntegration::createOpenGLContext>(visualBasedContext, visualInfo, shareContext); +} +#endif + +#if QT_CONFIG(egl) +QT_DEFINE_NATIVE_INTERFACE(QEGLContext, QOpenGLContext); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QEGLIntegration); + +QOpenGLContext *QNativeInterface::QEGLContext::fromNative(EGLContext context, EGLDisplay display, QOpenGLContext *shareContext) +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QEGLIntegration::createOpenGLContext>(context, display, shareContext); +} +#endif + +#endif // QT_NO_OPENGL + +#if QT_CONFIG(xcb) +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QXcbScreen); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QXcbWindow); +#endif + +#if QT_CONFIG(vsp2) +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QVsp2Screen); +#endif + +#if QT_CONFIG(evdev) +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QEvdevKeyMapper); + +template <> +QEvdevKeyMapper *QKeyMapper::nativeInterface() const +{ + return dynamic_cast(QGuiApplicationPrivate::platformIntegration()); +} +#endif + +QT_END_NAMESPACE diff --git a/src/gui/platform/unix/qunixplatforminterface.cpp b/src/gui/platform/unix/qunixplatforminterface.cpp deleted file mode 100644 index 378282936e..0000000000 --- a/src/gui/platform/unix/qunixplatforminterface.cpp +++ /dev/null @@ -1,107 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the QtGui module 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$ -** -****************************************************************************/ - -#include - -#include -#include - -#include -#include -#include -#include - -#include - -QT_BEGIN_NAMESPACE - -using namespace QNativeInterface::Private; - -#ifndef QT_NO_OPENGL - -#if defined(Q_OS_LINUX) -QT_DEFINE_NATIVE_INTERFACE(QGLXContext, QOpenGLContext); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QGLXIntegration); - -QOpenGLContext *QNativeInterface::QGLXContext::fromNative(GLXContext configBasedContext, QOpenGLContext *shareContext) -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QGLXIntegration::createOpenGLContext>(configBasedContext, nullptr, shareContext); -} - -QOpenGLContext *QNativeInterface::QGLXContext::fromNative(GLXContext visualBasedContext, void *visualInfo, QOpenGLContext *shareContext) -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QGLXIntegration::createOpenGLContext>(visualBasedContext, visualInfo, shareContext); -} -#endif - -#if QT_CONFIG(egl) -QT_DEFINE_NATIVE_INTERFACE(QEGLContext, QOpenGLContext); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QEGLIntegration); - -QOpenGLContext *QNativeInterface::QEGLContext::fromNative(EGLContext context, EGLDisplay display, QOpenGLContext *shareContext) -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QEGLIntegration::createOpenGLContext>(context, display, shareContext); -} -#endif - -#endif // QT_NO_OPENGL - -#if QT_CONFIG(xcb) -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QXcbScreen); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QXcbWindow); -#endif - -#if QT_CONFIG(vsp2) -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QVsp2Screen); -#endif - -#if QT_CONFIG(evdev) -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QEvdevKeyMapper); - -template <> -QEvdevKeyMapper *QKeyMapper::nativeInterface() const -{ - return dynamic_cast(QGuiApplicationPrivate::platformIntegration()); -} -#endif - -QT_END_NAMESPACE diff --git a/src/gui/platform/unix/unix.pri b/src/gui/platform/unix/unix.pri index a322e2ae1a..0e320650fd 100644 --- a/src/gui/platform/unix/unix.pri +++ b/src/gui/platform/unix/unix.pri @@ -1,7 +1,7 @@ SOURCES += \ platform/unix/qunixeventdispatcher.cpp \ platform/unix/qgenericunixeventdispatcher.cpp \ - platform/unix/qunixplatforminterface.cpp + platform/unix/qunixnativeinterface.cpp HEADERS += \ platform/unix/qunixeventdispatcher_qpa_p.h \ diff --git a/src/gui/platform/windows/qwindowsnativeinterface.cpp b/src/gui/platform/windows/qwindowsnativeinterface.cpp new file mode 100644 index 0000000000..950c86d7fb --- /dev/null +++ b/src/gui/platform/windows/qwindowsnativeinterface.cpp @@ -0,0 +1,74 @@ +/**************************************************************************** +** +** Copyright (C) 2020 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the QtGui module 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$ +** +****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +using namespace QNativeInterface::Private; + +#ifndef QT_NO_OPENGL + +QT_DEFINE_NATIVE_INTERFACE(QWGLContext, QOpenGLContext); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QWindowsGLIntegration); + +HMODULE QNativeInterface::QWGLContext::openGLModuleHandle() +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QWindowsGLIntegration::openGLModuleHandle>(); +} + +QOpenGLContext *QNativeInterface::QWGLContext::fromNative(HGLRC context, HWND window, QOpenGLContext *shareContext) +{ + return QGuiApplicationPrivate::platformIntegration()->call< + &QWindowsGLIntegration::createOpenGLContext>(context, window, shareContext); +} + +#endif // QT_NO_OPENGL + +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QWindowsApplication); +QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QWindowsWindow); + +QT_END_NAMESPACE diff --git a/src/gui/platform/windows/qwindowsplatforminterface.cpp b/src/gui/platform/windows/qwindowsplatforminterface.cpp deleted file mode 100644 index 950c86d7fb..0000000000 --- a/src/gui/platform/windows/qwindowsplatforminterface.cpp +++ /dev/null @@ -1,74 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the QtGui module 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$ -** -****************************************************************************/ - -#include -#include -#include -#include -#include -#include -#include - -QT_BEGIN_NAMESPACE - -using namespace QNativeInterface::Private; - -#ifndef QT_NO_OPENGL - -QT_DEFINE_NATIVE_INTERFACE(QWGLContext, QOpenGLContext); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QWindowsGLIntegration); - -HMODULE QNativeInterface::QWGLContext::openGLModuleHandle() -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QWindowsGLIntegration::openGLModuleHandle>(); -} - -QOpenGLContext *QNativeInterface::QWGLContext::fromNative(HGLRC context, HWND window, QOpenGLContext *shareContext) -{ - return QGuiApplicationPrivate::platformIntegration()->call< - &QWindowsGLIntegration::createOpenGLContext>(context, window, shareContext); -} - -#endif // QT_NO_OPENGL - -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QWindowsApplication); -QT_DEFINE_PRIVATE_NATIVE_INTERFACE(QWindowsWindow); - -QT_END_NAMESPACE diff --git a/src/gui/platform/windows/windows.pri b/src/gui/platform/windows/windows.pri index 94a6a2ff41..9155362d1d 100644 --- a/src/gui/platform/windows/windows.pri +++ b/src/gui/platform/windows/windows.pri @@ -4,4 +4,4 @@ HEADERS += \ SOURCES += \ platform/windows/qwindowsguieventdispatcher.cpp \ - platform/windows/qwindowsplatforminterface.cpp + platform/windows/qwindowsnativeinterface.cpp -- cgit v1.2.3