diff options
author | Samuel Rødal <samuel.rodal@nokia.com> | 2010-09-07 09:49:34 (GMT) |
---|---|---|
committer | Samuel Rødal <samuel.rodal@nokia.com> | 2010-09-10 10:44:56 (GMT) |
commit | b2ef75097e608afc717604884c4b6e4b22e78dee (patch) | |
tree | 40f9148eba79cfe7e82c9b771b465e953a3ea2ff /src | |
parent | 0d9c5bc460c66a96edc9416e5d7e5a56983562a4 (diff) | |
download | Qt-b2ef75097e608afc717604884c4b6e4b22e78dee.zip Qt-b2ef75097e608afc717604884c4b6e4b22e78dee.tar.gz Qt-b2ef75097e608afc717604884c4b6e4b22e78dee.tar.bz2 |
Use QFactoryLoader to ensure we get the correct graphics system plugin.
Also, this prevents hard-coding the path to the meego plugin.
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/plugin/qfactoryloader.cpp | 8 | ||||
-rw-r--r-- | src/corelib/plugin/qfactoryloader_p.h | 4 | ||||
-rw-r--r-- | src/plugins/graphicssystems/meego/qmeegographicssystem.h | 16 |
3 files changed, 20 insertions, 8 deletions
diff --git a/src/corelib/plugin/qfactoryloader.cpp b/src/corelib/plugin/qfactoryloader.cpp index 62d565a..a26dcd8 100644 --- a/src/corelib/plugin/qfactoryloader.cpp +++ b/src/corelib/plugin/qfactoryloader.cpp @@ -244,6 +244,14 @@ QObject *QFactoryLoader::instance(const QString &key) const return 0; } +#ifdef Q_WS_X11 +QLibraryPrivate *QFactoryLoader::library(const QString &key) const +{ + Q_D(const QFactoryLoader); + return d->keyMap.value(d->cs ? key : key.toLower()); +} +#endif + void QFactoryLoader::refreshAll() { QMutexLocker locker(qt_factoryloader_mutex()); diff --git a/src/corelib/plugin/qfactoryloader_p.h b/src/corelib/plugin/qfactoryloader_p.h index 10e6e2a..068c6c7 100644 --- a/src/corelib/plugin/qfactoryloader_p.h +++ b/src/corelib/plugin/qfactoryloader_p.h @@ -77,6 +77,10 @@ public: QStringList keys() const; QObject *instance(const QString &key) const; +#ifdef Q_WS_X11 + QLibraryPrivate *library(const QString &key) const; +#endif + void update(); static void refreshAll(); diff --git a/src/plugins/graphicssystems/meego/qmeegographicssystem.h b/src/plugins/graphicssystems/meego/qmeegographicssystem.h index 59392ad..905f0c3 100644 --- a/src/plugins/graphicssystems/meego/qmeegographicssystem.h +++ b/src/plugins/graphicssystems/meego/qmeegographicssystem.h @@ -72,14 +72,14 @@ private: /* C api */ extern "C" { - int qt_meego_image_to_egl_shared_image(const QImage &image); - QPixmapData* qt_meego_pixmapdata_from_egl_shared_image(Qt::HANDLE handle, const QImage &softImage); - QPixmapData* qt_meego_pixmapdata_with_gl_texture(int w, int h); - void qt_meego_update_egl_shared_image_pixmap(QPixmap *pixmap); - bool qt_meego_destroy_egl_shared_image(Qt::HANDLE handle); - void qt_meego_set_surface_fixed_size(int width, int height); - void qt_meego_set_surface_scaling(int x, int y, int width, int height); - void qt_meego_set_translucent(bool translucent); + Q_DECL_EXPORT int qt_meego_image_to_egl_shared_image(const QImage &image); + Q_DECL_EXPORT QPixmapData* qt_meego_pixmapdata_from_egl_shared_image(Qt::HANDLE handle, const QImage &softImage); + Q_DECL_EXPORT QPixmapData* qt_meego_pixmapdata_with_gl_texture(int w, int h); + Q_DECL_EXPORT void qt_meego_update_egl_shared_image_pixmap(QPixmap *pixmap); + Q_DECL_EXPORT bool qt_meego_destroy_egl_shared_image(Qt::HANDLE handle); + Q_DECL_EXPORT void qt_meego_set_surface_fixed_size(int width, int height); + Q_DECL_EXPORT void qt_meego_set_surface_scaling(int x, int y, int width, int height); + Q_DECL_EXPORT void qt_meego_set_translucent(bool translucent); } #endif |