diff options
author | Lars Knoll <lars.knoll@nokia.com> | 2011-05-03 14:22:36 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@nokia.com> | 2011-05-03 14:23:39 +0200 |
commit | 075634945d5a9ba45fe7628c533977e6909f446d (patch) | |
tree | 62747ff9fd50bc2d17d99e5cd9b20c1adee03045 /src/gui/painting | |
parent | 86f20c89af906ecd58a4da74f82bd895ec8392e8 (diff) |
remove the graphicssystem code paths.
QPA's platform integration layer replaces the
graphics system now.
Diffstat (limited to 'src/gui/painting')
-rw-r--r-- | src/gui/painting/painting.pri | 19 | ||||
-rw-r--r-- | src/gui/painting/qbackingstore.cpp | 2 | ||||
-rw-r--r-- | src/gui/painting/qcolormap_qpa.cpp | 1 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem.cpp | 97 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_mac.cpp | 59 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_mac_p.h | 69 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_p.h | 85 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_raster.cpp | 72 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_raster_p.h | 69 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_runtime.cpp | 426 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystem_runtime_p.h | 187 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystemfactory.cpp | 123 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystemfactory_p.h | 78 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystemplugin.cpp | 56 | ||||
-rw-r--r-- | src/gui/painting/qgraphicssystemplugin_p.h | 92 | ||||
-rw-r--r-- | src/gui/painting/qpainter.cpp | 5 |
16 files changed, 1 insertions, 1439 deletions
diff --git a/src/gui/painting/painting.pri b/src/gui/painting/painting.pri index baf648b2a1..fba6adb10d 100644 --- a/src/gui/painting/painting.pri +++ b/src/gui/painting/painting.pri @@ -8,7 +8,6 @@ HEADERS += \ painting/qcolormap.h \ painting/qdrawutil.h \ painting/qemulationpaintengine_p.h \ - painting/qgraphicssystem_p.h \ painting/qmatrix.h \ painting/qmemrotate_p.h \ painting/qoutlinemapper_p.h \ @@ -56,7 +55,6 @@ SOURCES += \ painting/qcssutil.cpp \ painting/qdrawutil.cpp \ painting/qemulationpaintengine.cpp \ - painting/qgraphicssystem.cpp \ painting/qmatrix.cpp \ painting/qmemrotate.cpp \ painting/qoutlinemapper.cpp \ @@ -114,21 +112,6 @@ win32 { !win32-borland:!wince*:LIBS += -lmsimg32 } -if(!qpa) { - HEADERS += \ - painting/qgraphicssystem_raster_p.h \ - painting/qgraphicssystem_runtime_p.h \ - painting/qgraphicssystemfactory_p.h \ - painting/qgraphicssystemplugin_p.h \ - painting/qwindowsurface_raster_p.h - - SOURCES += \ - painting/qgraphicssystem_raster.cpp \ - painting/qgraphicssystem_runtime.cpp \ - painting/qgraphicssystemfactory.cpp \ - painting/qgraphicssystemplugin.cpp \ - painting/qwindowsurface_raster.cpp -} unix:x11 { HEADERS += \ @@ -143,14 +126,12 @@ unix:x11 { !qpa:!x11:mac { HEADERS += \ painting/qpaintengine_mac_p.h \ - painting/qgraphicssystem_mac_p.h \ painting/qprintengine_mac_p.h SOURCES += \ painting/qcolormap_mac.cpp \ painting/qpaintdevice_mac.cpp \ painting/qpaintengine_mac.cpp \ - painting/qgraphicssystem_mac.cpp \ painting/qprinterinfo_mac.cpp OBJECTIVE_SOURCES += \ painting/qprintengine_mac.mm \ diff --git a/src/gui/painting/qbackingstore.cpp b/src/gui/painting/qbackingstore.cpp index 7ec878c39d..b5cc73faf1 100644 --- a/src/gui/painting/qbackingstore.cpp +++ b/src/gui/painting/qbackingstore.cpp @@ -58,8 +58,6 @@ #include <private/qpaintengine_raster_p.h> #include <private/qgraphicseffect_p.h> -#include "qgraphicssystem_p.h" - #ifdef Q_WS_QWS #include <QtGui/qwsmanager_qws.h> #include <private/qwsmanager_p.h> diff --git a/src/gui/painting/qcolormap_qpa.cpp b/src/gui/painting/qcolormap_qpa.cpp index f66607bb05..9de8dcc1ba 100644 --- a/src/gui/painting/qcolormap_qpa.cpp +++ b/src/gui/painting/qcolormap_qpa.cpp @@ -43,7 +43,6 @@ #include "qcolor.h" #include "qpaintdevice.h" #include "private/qapplication_p.h" -#include "private/qgraphicssystem_p.h" QT_BEGIN_NAMESPACE diff --git a/src/gui/painting/qgraphicssystem.cpp b/src/gui/painting/qgraphicssystem.cpp deleted file mode 100644 index 171ef46f98..0000000000 --- a/src/gui/painting/qgraphicssystem.cpp +++ /dev/null @@ -1,97 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qgraphicssystem_p.h" - -#ifdef Q_WS_X11 -# include <private/qpixmap_x11_p.h> -#endif -#if defined(Q_WS_WIN) -# include <private/qpixmap_raster_p.h> -#endif -#ifdef Q_WS_MAC -# include <private/qpixmap_mac_p.h> -#endif -#ifdef Q_WS_QPA -# include <QtGui/private/qapplication_p.h> -#endif -#ifdef Q_OS_SYMBIAN -# include <private/qpixmap_s60_p.h> -#endif - -QT_BEGIN_NAMESPACE - -QGraphicsSystem::~QGraphicsSystem() -{ -} - -QPixmapData *QGraphicsSystem::createDefaultPixmapData(QPixmapData::PixelType type) -{ -#ifdef Q_WS_QWS - Q_UNUSED(type); -#endif -#if defined(Q_WS_X11) - return new QX11PixmapData(type); -#elif defined(Q_WS_WIN) - return new QRasterPixmapData(type); -#elif defined(Q_WS_MAC) - return new QMacPixmapData(type); -#elif defined(Q_WS_QPA) - return QApplicationPrivate::platformIntegration()->createPixmapData(type); -#elif defined(Q_OS_SYMBIAN) - return new QS60PixmapData(type); -#elif !defined(Q_WS_QWS) -#error QGraphicsSystem::createDefaultPixmapData() not implemented -#endif - return 0; -} - -QPixmapData *QGraphicsSystem::createPixmapData(QPixmapData *origin) -{ - return createPixmapData(origin->pixelType()); -} - -void QGraphicsSystem::releaseCachedResources() -{ - // Do nothing here -} - -QT_END_NAMESPACE diff --git a/src/gui/painting/qgraphicssystem_mac.cpp b/src/gui/painting/qgraphicssystem_mac.cpp deleted file mode 100644 index 4f0be1f86a..0000000000 --- a/src/gui/painting/qgraphicssystem_mac.cpp +++ /dev/null @@ -1,59 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qgraphicssystem_mac_p.h" - -#include <private/qpixmap_mac_p.h> -#include <private/qwindowsurface_mac_p.h> - -QT_BEGIN_NAMESPACE - -QPixmapData *QCoreGraphicsSystem::createPixmapData(QPixmapData::PixelType type) const -{ - return new QMacPixmapData(type); -} - -QWindowSurface *QCoreGraphicsSystem::createWindowSurface(QWidget *widget) const -{ - return new QMacWindowSurface(widget); -} - -QT_END_NAMESPACE diff --git a/src/gui/painting/qgraphicssystem_mac_p.h b/src/gui/painting/qgraphicssystem_mac_p.h deleted file mode 100644 index 4d2eae84d7..0000000000 --- a/src/gui/painting/qgraphicssystem_mac_p.h +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QGRAPHICSSYSTEM_MAC_P_H -#define QGRAPHICSSYSTEM_MAC_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of other Qt classes. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include "private/qgraphicssystem_p.h" - -QT_BEGIN_NAMESPACE - -class Q_GUI_EXPORT QCoreGraphicsSystem : public QGraphicsSystem -{ -public: - QPixmapData *createPixmapData(QPixmapData::PixelType type) const; - QWindowSurface *createWindowSurface(QWidget *widget) const; -}; - -QT_END_NAMESPACE - -#endif diff --git a/src/gui/painting/qgraphicssystem_p.h b/src/gui/painting/qgraphicssystem_p.h deleted file mode 100644 index 2271d4dba6..0000000000 --- a/src/gui/painting/qgraphicssystem_p.h +++ /dev/null @@ -1,85 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QGRAPHICSSYSTEM_P_H -#define QGRAPHICSSYSTEM_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include "private/qpixmapdata_p.h" -#include "private/qwindowsurface_p.h" -#include "private/qpaintengine_blitter_p.h" - -#include <qdebug.h> - -QT_BEGIN_NAMESPACE - -class QPixmapFilter; -class QBlittable; - -class Q_GUI_EXPORT QGraphicsSystem -{ -public: - virtual QPixmapData *createPixmapData(QPixmapData::PixelType type) const = 0; - virtual QPixmapData *createPixmapData(QPixmapData *origin); - virtual QWindowSurface *createWindowSurface(QWindow *window) const = 0; - - virtual ~QGraphicsSystem(); - - //### Remove this & change qpixmap.cpp & qbitmap.cpp once every platform is gaurenteed - // to have a graphics system. - static QPixmapData *createDefaultPixmapData(QPixmapData::PixelType type); - - virtual void releaseCachedResources(); -}; - -QT_END_NAMESPACE - -#endif diff --git a/src/gui/painting/qgraphicssystem_raster.cpp b/src/gui/painting/qgraphicssystem_raster.cpp deleted file mode 100644 index 69bf588292..0000000000 --- a/src/gui/painting/qgraphicssystem_raster.cpp +++ /dev/null @@ -1,72 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qgraphicssystem_raster_p.h" - -#ifdef Q_OS_SYMBIAN -#include "private/qpixmap_s60_p.h" -#include "private/qwindowsurface_s60_p.h" -#else -#include "private/qpixmap_raster_p.h" -#include "private/qwindowsurface_raster_p.h" -#endif - -QT_BEGIN_NAMESPACE - -QPixmapData *QRasterGraphicsSystem::createPixmapData(QPixmapData::PixelType type) const -{ -#ifdef Q_OS_SYMBIAN - return new QS60PixmapData(type); -#else - return new QRasterPixmapData(type); -#endif -} - -QWindowSurface *QRasterGraphicsSystem::createWindowSurface(QWidget *widget) const -{ -#ifdef Q_OS_SYMBIAN - return new QS60WindowSurface(widget); -#else - return new QRasterWindowSurface(widget); -#endif -} - -QT_END_NAMESPACE diff --git a/src/gui/painting/qgraphicssystem_raster_p.h b/src/gui/painting/qgraphicssystem_raster_p.h deleted file mode 100644 index a66c56903f..0000000000 --- a/src/gui/painting/qgraphicssystem_raster_p.h +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QGRAPHICSSYSTEM_RASTER_P_H -#define QGRAPHICSSYSTEM_RASTER_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of other Qt classes. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include "qgraphicssystem_p.h" - -QT_BEGIN_NAMESPACE - -class QRasterGraphicsSystem : public QGraphicsSystem -{ -public: - QPixmapData *createPixmapData(QPixmapData::PixelType type) const; - QWindowSurface *createWindowSurface(QWidget *widget) const; -}; - -QT_END_NAMESPACE - -#endif diff --git a/src/gui/painting/qgraphicssystem_runtime.cpp b/src/gui/painting/qgraphicssystem_runtime.cpp deleted file mode 100644 index d1dd7ef392..0000000000 --- a/src/gui/painting/qgraphicssystem_runtime.cpp +++ /dev/null @@ -1,426 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <private/qgraphicssystem_runtime_p.h> -#include <private/qgraphicssystem_raster_p.h> -#include <private/qgraphicssystemfactory_p.h> -#include <private/qapplication_p.h> -#include <private/qwidget_p.h> -#include <QtCore/QDebug> -#include <QtCore/QTimer> -#include <QtGui/QBitmap> - -QT_BEGIN_NAMESPACE - -static int qt_pixmap_serial = 0; - -#define READBACK(f) \ - f \ - readBackInfo(); - - -class QDeferredGraphicsSystemChange : public QObject -{ - Q_OBJECT - -public: - QDeferredGraphicsSystemChange(QRuntimeGraphicsSystem *gs, const QString& graphicsSystemName) - : m_graphicsSystem(gs), m_graphicsSystemName(graphicsSystemName) - { - } - - void launch() - { - QTimer::singleShot(0, this, SLOT(doChange())); - } - -private slots: - - void doChange() - { - m_graphicsSystem->setGraphicsSystem(m_graphicsSystemName); - deleteLater(); - } - -private: - - QRuntimeGraphicsSystem *m_graphicsSystem; - QString m_graphicsSystemName; -}; - -QRuntimePixmapData::QRuntimePixmapData(const QRuntimeGraphicsSystem *gs, PixelType type) - : QPixmapData(type, RuntimeClass), m_graphicsSystem(gs) -{ - setSerialNumber(++qt_pixmap_serial); -} - -QRuntimePixmapData::~QRuntimePixmapData() -{ - if (QApplicationPrivate::graphics_system) - m_graphicsSystem->removePixmapData(this); - delete m_data; -} - -void QRuntimePixmapData::readBackInfo() -{ - w = m_data->width(); - h = m_data->height(); - d = m_data->depth(); - is_null = m_data->isNull(); -} - - -QPixmapData *QRuntimePixmapData::createCompatiblePixmapData() const -{ - QRuntimePixmapData *rtData = new QRuntimePixmapData(m_graphicsSystem, pixelType()); - rtData->m_data = m_data->createCompatiblePixmapData(); - return rtData; -} - - -void QRuntimePixmapData::resize(int width, int height) -{ - READBACK( - m_data->resize(width, height); - ) -} - - -void QRuntimePixmapData::fromImage(const QImage &image, - Qt::ImageConversionFlags flags) -{ - READBACK( - m_data->fromImage(image, flags); - ) -} - - -bool QRuntimePixmapData::fromFile(const QString &filename, const char *format, - Qt::ImageConversionFlags flags) -{ - bool success(false); - READBACK( - success = m_data->fromFile(filename, format, flags); - ) - return success; -} - -bool QRuntimePixmapData::fromData(const uchar *buffer, uint len, const char *format, - Qt::ImageConversionFlags flags) -{ - bool success(false); - READBACK( - success = m_data->fromData(buffer, len, format, flags); - ) - return success; -} - - -void QRuntimePixmapData::copy(const QPixmapData *data, const QRect &rect) -{ - if (data->runtimeData()) { - READBACK( - m_data->copy(data->runtimeData(), rect); - ) - } else { - READBACK( - m_data->copy(data, rect); - ) - } -} - -bool QRuntimePixmapData::scroll(int dx, int dy, const QRect &rect) -{ - return m_data->scroll(dx, dy, rect); -} - - -int QRuntimePixmapData::metric(QPaintDevice::PaintDeviceMetric metric) const -{ - return m_data->metric(metric); -} - -void QRuntimePixmapData::fill(const QColor &color) -{ - return m_data->fill(color); -} - -QBitmap QRuntimePixmapData::mask() const -{ - return m_data->mask(); -} - -void QRuntimePixmapData::setMask(const QBitmap &mask) -{ - READBACK( - m_data->setMask(mask); - ) -} - -bool QRuntimePixmapData::hasAlphaChannel() const -{ - return m_data->hasAlphaChannel(); -} - -QPixmap QRuntimePixmapData::transformed(const QTransform &matrix, - Qt::TransformationMode mode) const -{ - return m_data->transformed(matrix, mode); -} - -void QRuntimePixmapData::setAlphaChannel(const QPixmap &alphaChannel) -{ - READBACK( - m_data->setAlphaChannel(alphaChannel); - ) -} - -QPixmap QRuntimePixmapData::alphaChannel() const -{ - return m_data->alphaChannel(); -} - -QImage QRuntimePixmapData::toImage() const -{ - return m_data->toImage(); -} - -QPaintEngine* QRuntimePixmapData::paintEngine() const -{ - return m_data->paintEngine(); -} - -QImage* QRuntimePixmapData::buffer() -{ - return m_data->buffer(); -} - -#if defined(Q_OS_SYMBIAN) -void* QRuntimePixmapData::toNativeType(NativeType type) -{ - return m_data->toNativeType(type); -} - -void QRuntimePixmapData::fromNativeType(void *pixmap, NativeType type) -{ - m_data->fromNativeType(pixmap, type); - readBackInfo(); -} -#endif - -QPixmapData* QRuntimePixmapData::runtimeData() const -{ - return m_data; -} - -QRuntimeWindowSurface::QRuntimeWindowSurface(const QRuntimeGraphicsSystem *gs, QWidget *window) - : QWindowSurface(window), m_graphicsSystem(gs) -{ - -} - -QRuntimeWindowSurface::~QRuntimeWindowSurface() -{ - if (QApplicationPrivate::graphics_system) - m_graphicsSystem->removeWindowSurface(this); -} - -QPaintDevice *QRuntimeWindowSurface::paintDevice() -{ - return m_windowSurface->paintDevice(); -} - -void QRuntimeWindowSurface::flush(QWidget *widget, const QRegion ®ion, - const QPoint &offset) -{ - m_windowSurface->flush(widget, region, offset); - - int destroyPolicy = m_graphicsSystem->windowSurfaceDestroyPolicy(); - if(m_pendingWindowSurface && - destroyPolicy == QRuntimeGraphicsSystem::DestroyAfterFirstFlush) { -#ifdef QT_DEBUG - qDebug() << "QRuntimeWindowSurface::flush() - destroy pending window surface"; -#endif - m_pendingWindowSurface.reset(); - } -} - -void QRuntimeWindowSurface::setGeometry(const QRect &rect) -{ - QWindowSurface::setGeometry(rect); - m_windowSurface->setGeometry(rect); -} - -bool QRuntimeWindowSurface::scroll(const QRegion &area, int dx, int dy) -{ - return m_windowSurface->scroll(area, dx, dy); -} - -void QRuntimeWindowSurface::beginPaint(const QRegion &rgn) -{ - m_windowSurface->beginPaint(rgn); -} - -void QRuntimeWindowSurface::endPaint(const QRegion &rgn) -{ - m_windowSurface->endPaint(rgn); -} - -QImage* QRuntimeWindowSurface::buffer(const QWidget *widget) -{ - return m_windowSurface->buffer(widget); -} - -QPixmap QRuntimeWindowSurface::grabWidget(const QWidget *widget, const QRect& rectangle) const -{ - return m_windowSurface->grabWidget(widget, rectangle); -} - -QPoint QRuntimeWindowSurface::offset(const QWidget *widget) const -{ - return m_windowSurface->offset(widget); -} - -QWindowSurface::WindowSurfaceFeatures QRuntimeWindowSurface::features() const -{ - return m_windowSurface->features(); -} - -QRuntimeGraphicsSystem::QRuntimeGraphicsSystem() - : m_windowSurfaceDestroyPolicy(DestroyImmediately), - m_graphicsSystem(0) -{ - QApplicationPrivate::runtime_graphics_system = true; - -#ifdef QT_DEFAULT_RUNTIME_SYSTEM - m_graphicsSystemName = QLatin1String(QT_DEFAULT_RUNTIME_SYSTEM); - if (m_graphicsSystemName.isNull()) -#endif - m_graphicsSystemName = QLatin1String("raster"); - -#ifdef Q_OS_SYMBIAN - m_windowSurfaceDestroyPolicy = DestroyAfterFirstFlush; -#endif - - m_graphicsSystem = QGraphicsSystemFactory::create(m_graphicsSystemName); - - QApplicationPrivate::graphics_system_name = QLatin1String("runtime"); -} - - -QPixmapData *QRuntimeGraphicsSystem::createPixmapData(QPixmapData::PixelType type) const -{ - Q_ASSERT(m_graphicsSystem); - QPixmapData *data = m_graphicsSystem->createPixmapData(type); - - QRuntimePixmapData *rtData = new QRuntimePixmapData(this, type); - rtData->m_data = data; - m_pixmapDatas << rtData; - - return rtData; -} - -QWindowSurface *QRuntimeGraphicsSystem::createWindowSurface(QWidget *widget) const -{ - Q_ASSERT(m_graphicsSystem); - QRuntimeWindowSurface *rtSurface = new QRuntimeWindowSurface(this, widget); - rtSurface->m_windowSurface.reset(m_graphicsSystem->createWindowSurface(widget)); - widget->setWindowSurface(rtSurface); - m_windowSurfaces << rtSurface; - return rtSurface; -} - -void QRuntimeGraphicsSystem::setGraphicsSystem(const QString &name) -{ - if (m_graphicsSystemName == name) - return; -#ifdef QT_DEBUG - qDebug() << "QRuntimeGraphicsSystem::setGraphicsSystem( " << name << " )"; -#endif - QGraphicsSystem *oldSystem = m_graphicsSystem; - m_graphicsSystem = QGraphicsSystemFactory::create(name); - m_graphicsSystemName = name; - - Q_ASSERT(m_graphicsSystem); - - m_pendingGraphicsSystemName = QString(); - - for (int i = 0; i < m_pixmapDatas.size(); ++i) { - QRuntimePixmapData *proxy = m_pixmapDatas.at(i); - QPixmapData *newData = m_graphicsSystem->createPixmapData(proxy->m_data); - newData->fromImage(proxy->m_data->toImage(), Qt::NoOpaqueDetection); - delete proxy->m_data; - proxy->m_data = newData; - proxy->readBackInfo(); - } - - for (int i = 0; i < m_windowSurfaces.size(); ++i) { - QRuntimeWindowSurface *proxy = m_windowSurfaces.at(i); - QWidget *widget = proxy->m_windowSurface->window(); - - if(m_windowSurfaceDestroyPolicy == DestroyAfterFirstFlush) - proxy->m_pendingWindowSurface.reset(proxy->m_windowSurface.take()); - - QWindowSurface *newWindowSurface = m_graphicsSystem->createWindowSurface(widget); - newWindowSurface->setGeometry(proxy->geometry()); - - proxy->m_windowSurface.reset(newWindowSurface); - qt_widget_private(widget)->invalidateBuffer(widget->rect()); - } - - delete oldSystem; -} - -void QRuntimeGraphicsSystem::removePixmapData(QRuntimePixmapData *pixmapData) const -{ - int index = m_pixmapDatas.lastIndexOf(pixmapData); - m_pixmapDatas.removeAt(index); -} - -void QRuntimeGraphicsSystem::removeWindowSurface(QRuntimeWindowSurface *windowSurface) const -{ - int index = m_windowSurfaces.lastIndexOf(windowSurface); - m_windowSurfaces.removeAt(index); -} - -#include "qgraphicssystem_runtime.moc" - -QT_END_NAMESPACE diff --git a/src/gui/painting/qgraphicssystem_runtime_p.h b/src/gui/painting/qgraphicssystem_runtime_p.h deleted file mode 100644 index 26d3777ad9..0000000000 --- a/src/gui/painting/qgraphicssystem_runtime_p.h +++ /dev/null @@ -1,187 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the plugins of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QGRAPHICSSYSTEM_RUNTIME_P_H -#define QGRAPHICSSYSTEM_RUNTIME_P_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists for the convenience -// of other Qt classes. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include "qgraphicssystem_p.h" - -#include <private/qpixmapdata_p.h> - -QT_BEGIN_NAMESPACE - -class QRuntimeGraphicsSystem; - -class Q_GUI_EXPORT QRuntimePixmapData : public QPixmapData { -public: - QRuntimePixmapData(const QRuntimeGraphicsSystem *gs, PixelType type); - ~QRuntimePixmapData(); - - virtual QPixmapData *createCompatiblePixmapData() const; - virtual void resize(int width, int height); - virtual void fromImage(const QImage &image, - Qt::ImageConversionFlags flags); - - virtual bool fromFile(const QString &filename, const char *format, - Qt::ImageConversionFlags flags); - virtual bool fromData(const uchar *buffer, uint len, const char *format, - Qt::ImageConversionFlags flags); - - virtual void copy(const QPixmapData *data, const QRect &rect); - virtual bool scroll(int dx, int dy, const QRect &rect); - - virtual int metric(QPaintDevice::PaintDeviceMetric metric) const; - virtual void fill(const QColor &color); - virtual QBitmap mask() const; - virtual void setMask(const QBitmap &mask); - virtual bool hasAlphaChannel() const; - virtual QPixmap transformed(const QTransform &matrix, - Qt::TransformationMode mode) const; - virtual void setAlphaChannel(const QPixmap &alphaChannel); - virtual QPixmap alphaChannel() const; - virtual QImage toImage() const; - virtual QPaintEngine *paintEngine() const; - - virtual QImage *buffer(); - - void readBackInfo(); - - QPixmapData *m_data; - -#if defined(Q_OS_SYMBIAN) - void* toNativeType(NativeType type); - void fromNativeType(void* pixmap, NativeType type); -#endif - - virtual QPixmapData *runtimeData() const; - -private: - const QRuntimeGraphicsSystem *m_graphicsSystem; - -}; - -class QRuntimeWindowSurface : public QWindowSurface { -public: - QRuntimeWindowSurface(const QRuntimeGraphicsSystem *gs, QWidget *window); - ~QRuntimeWindowSurface(); - - virtual QPaintDevice *paintDevice(); - virtual void flush(QWidget *widget, const QRegion ®ion, - const QPoint &offset); - virtual void setGeometry(const QRect &rect); - - virtual bool scroll(const QRegion &area, int dx, int dy); - - virtual void beginPaint(const QRegion &); - virtual void endPaint(const QRegion &); - - virtual QImage* buffer(const QWidget *widget); - virtual QPixmap grabWidget(const QWidget *widget, const QRect& rectangle = QRect()) const; - - virtual QPoint offset(const QWidget *widget) const; - - virtual WindowSurfaceFeatures features() const; - - QScopedPointer<QWindowSurface> m_windowSurface; - QScopedPointer<QWindowSurface> m_pendingWindowSurface; - -private: - const QRuntimeGraphicsSystem *m_graphicsSystem; -}; - -class QRuntimeGraphicsSystem : public QGraphicsSystem -{ -public: - - enum WindowSurfaceDestroyPolicy - { - DestroyImmediately, - DestroyAfterFirstFlush - }; - -public: - QRuntimeGraphicsSystem(); - - QPixmapData *createPixmapData(QPixmapData::PixelType type) const; - QWindowSurface *createWindowSurface(QWidget *widget) const; - - void removePixmapData(QRuntimePixmapData *pixmapData) const; - void removeWindowSurface(QRuntimeWindowSurface *windowSurface) const; - - void setGraphicsSystem(const QString &name); - QString graphicsSystemName() const { return m_graphicsSystemName; } - - void setWindowSurfaceDestroyPolicy(WindowSurfaceDestroyPolicy policy) - { - m_windowSurfaceDestroyPolicy = policy; - } - - int windowSurfaceDestroyPolicy() const { return m_windowSurfaceDestroyPolicy; } - - -private: - int m_windowSurfaceDestroyPolicy; - QGraphicsSystem *m_graphicsSystem; - mutable QList<QRuntimePixmapData *> m_pixmapDatas; - mutable QList<QRuntimeWindowSurface *> m_windowSurfaces; - QString m_graphicsSystemName; - - QString m_pendingGraphicsSystemName; - - friend class QRuntimePixmapData; - friend class QRuntimeWindowSurface; - friend class QMeeGoGraphicsSystem; -}; - -QT_END_NAMESPACE - -#endif diff --git a/src/gui/painting/qgraphicssystemfactory.cpp b/src/gui/painting/qgraphicssystemfactory.cpp deleted file mode 100644 index 62a60d77c0..0000000000 --- a/src/gui/painting/qgraphicssystemfactory.cpp +++ /dev/null @@ -1,123 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qgraphicssystemfactory_p.h" -#include "qgraphicssystemplugin_p.h" -#include "private/qfactoryloader_p.h" -#include "qmutex.h" - -#include "qapplication.h" -#include <private/qapplication_p.h> -#include "qgraphicssystem_raster_p.h" -#include "qgraphicssystem_runtime_p.h" -#include "qdebug.h" - -QT_BEGIN_NAMESPACE - -#ifndef QT_NO_LIBRARY -Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader, - (QGraphicsSystemFactoryInterface_iid, QLatin1String("/graphicssystems"), Qt::CaseInsensitive)) -#endif - -QGraphicsSystem *QGraphicsSystemFactory::create(const QString& key) -{ - QGraphicsSystem *ret = 0; - QString system = key.toLower(); - -#if defined (QT_GRAPHICSSYSTEM_OPENGL) - if (system.isEmpty()) { - system = QLatin1String("opengl"); - } -#elif defined (QT_GRAPHICSSYSTEM_OPENVG) - if (system.isEmpty()) { - system = QLatin1String("openvg"); - } -#elif defined (QT_GRAPHICSSYSTEM_RUNTIME) - if (system.isEmpty()) { - system = QLatin1String("runtime"); - } -#elif defined (QT_GRAPHICSSYSTEM_RASTER) && !defined(Q_WS_WIN) && !defined(Q_OS_SYMBIAN) || defined(Q_WS_X11) - if (system.isEmpty()) { - system = QLatin1String("raster"); - } -#endif - - QApplicationPrivate::graphics_system_name = system; - if (system == QLatin1String("raster")) - return new QRasterGraphicsSystem; - else if (system == QLatin1String("runtime")) - return new QRuntimeGraphicsSystem; - else if (system.isEmpty() || system == QLatin1String("native")) - return 0; - -#ifndef QT_NO_LIBRARY - if (!ret) { - if (QGraphicsSystemFactoryInterface *factory = qobject_cast<QGraphicsSystemFactoryInterface*>(loader()->instance(system))) - ret = factory->create(system); - } -#endif - - if (!ret) - qWarning() << "Unable to load graphicssystem" << system; - - return ret; -} - -/*! - Returns the list of valid keys, i.e. the keys this factory can - create styles for. - - \sa create() -*/ -QStringList QGraphicsSystemFactory::keys() -{ -#ifndef QT_NO_LIBRARY - QStringList list = loader()->keys(); -#else - QStringList list; -#endif - if (!list.contains(QLatin1String("Raster"))) - list << QLatin1String("raster"); - return list; -} - -QT_END_NAMESPACE - diff --git a/src/gui/painting/qgraphicssystemfactory_p.h b/src/gui/painting/qgraphicssystemfactory_p.h deleted file mode 100644 index 8a2e2b14e0..0000000000 --- a/src/gui/painting/qgraphicssystemfactory_p.h +++ /dev/null @@ -1,78 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QGRAPHICSSYSTEMFACTORY_H -#define QGRAPHICSSYSTEMFACTORY_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtCore/qstringlist.h> - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -class QGraphicsSystem; - -class QGraphicsSystemFactory -{ -public: - static QStringList keys(); - static QGraphicsSystem *create(const QString&); -}; - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QGRAPHICSSYSTEMFACTORY_H - diff --git a/src/gui/painting/qgraphicssystemplugin.cpp b/src/gui/painting/qgraphicssystemplugin.cpp deleted file mode 100644 index 8eb1278373..0000000000 --- a/src/gui/painting/qgraphicssystemplugin.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qgraphicssystemplugin_p.h" -#include "qgraphicssystem_p.h" - -QT_BEGIN_NAMESPACE - -QGraphicsSystemPlugin::QGraphicsSystemPlugin(QObject *parent) - : QObject(parent) -{ -} - -QGraphicsSystemPlugin::~QGraphicsSystemPlugin() -{ -} - -QT_END_NAMESPACE diff --git a/src/gui/painting/qgraphicssystemplugin_p.h b/src/gui/painting/qgraphicssystemplugin_p.h deleted file mode 100644 index 1dafe82243..0000000000 --- a/src/gui/painting/qgraphicssystemplugin_p.h +++ /dev/null @@ -1,92 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtGui module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, 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. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QGRAPHICSSYSTEMPLUGIN_H -#define QGRAPHICSSYSTEMPLUGIN_H - -// -// W A R N I N G -// ------------- -// -// This file is not part of the Qt API. It exists purely as an -// implementation detail. This header file may change from version to -// version without notice, or even be removed. -// -// We mean it. -// - -#include <QtCore/qplugin.h> -#include <QtCore/qfactoryinterface.h> - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Gui) - -class QGraphicsSystem; - -struct QGraphicsSystemFactoryInterface : public QFactoryInterface -{ - virtual QGraphicsSystem *create(const QString &key) = 0; -}; - -#define QGraphicsSystemFactoryInterface_iid "com.trolltech.Qt.QGraphicsSystemFactoryInterface" - -Q_DECLARE_INTERFACE(QGraphicsSystemFactoryInterface, QGraphicsSystemFactoryInterface_iid) - -class Q_GUI_EXPORT QGraphicsSystemPlugin : public QObject, public QGraphicsSystemFactoryInterface -{ - Q_OBJECT - Q_INTERFACES(QGraphicsSystemFactoryInterface:QFactoryInterface) -public: - explicit QGraphicsSystemPlugin(QObject *parent = 0); - ~QGraphicsSystemPlugin(); - - virtual QStringList keys() const = 0; - virtual QGraphicsSystem *create(const QString &key) = 0; -}; - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif // QGRAPHICSSYSTEMEPLUGIN_H diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp index 785d561e33..54a8fbfdb4 100644 --- a/src/gui/painting/qpainter.cpp +++ b/src/gui/painting/qpainter.cpp @@ -1370,10 +1370,7 @@ void QPainterPrivate::updateState(QPainterState *newState) only use the format types QImage::Format_ARGB32_Premultiplied, QImage::Format_RGB32 or QImage::Format_RGB16. Any other format, including QImage::Format_ARGB32, has significantly worse - performance. This engine is also used by default on Windows and on - QWS. It can be used as default graphics system on any - OS/hardware/software combination by passing \c {-graphicssystem - raster} on the command line + performance. This engine is used by default for QWidget and QPixmap. \o OpenGL 2.0 (ES) - This backend is the primary backend for hardware accelerated graphics. It can be run on desktop machines |