From ea5276f05ad2c45a2104dbeb9b437d9d82df1b72 Mon Sep 17 00:00:00 2001 From: Jason McDonald Date: Tue, 9 Mar 2010 15:40:14 +1000 Subject: Remove obsolete URL's. Task-number: QT-3051 Reviewed-by: Trust Me --- dist/changes-4.5.4 | 10 +++++----- translations/qtconfig_ru.ts | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dist/changes-4.5.4 b/dist/changes-4.5.4 index abaf4f0..ac91edb 100644 --- a/dist/changes-4.5.4 +++ b/dist/changes-4.5.4 @@ -9,12 +9,12 @@ The Qt version 4.5 series is binary compatible with the 4.4.x series. Applications compiled for 4.4 will continue to run with 4.5. Some of the changes listed in this file include issue tracking numbers -corresponding to tasks in the Task Tracker: +corresponding to tasks in the Qt Bug Tracker, the (now obsolete) Task +Tracker, or the Merge Request queue of the public source repository. - http://www.qtsoftware.com/developer/task-tracker - -Each of these identifiers can be entered in the task tracker to obtain more -information about a particular change. +Qt Bug Tracker: http://bugreports.qt.nokia.com +Task Tracker: http://qt.nokia.com/developer/task-tracker +Merge Request: http://qt.gitorious.org **************************************************************************** * General * diff --git a/translations/qtconfig_ru.ts b/translations/qtconfig_ru.ts index 33ee556..e680040 100644 --- a/translations/qtconfig_ru.ts +++ b/translations/qtconfig_ru.ts @@ -909,7 +909,7 @@ p, li { white-space: pre-wrap; } <a href="http://www.kde.org">http://www.kde.org</a> </p> <p> -<a href="http://qtsoftware.com">http://qtsoftware.com</a> +<a href="http://qt.nokia.com">http://qt.nokia.com</a> </p> <p> <a href="http://www.kde.org">http://www.kde.org</a> -- cgit v0.12 From cc37d494c2c6ef5768e4bc30cad62f24fee033c3 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Thu, 22 Apr 2010 12:10:50 +0200 Subject: Fix regression: auto completion text cursor problem in Q3FileDialog This was another regression in QLineEdit introduced with the move to QLineControl setCursorPosition clear the selection, and setSelection move the cursor position. So the case where we want the position at the beginning of the selection need to be handled separately (by doing the selection reverse) This does not cover the case where the position is in the middle, or outside the selection, but it is not possible to do. Task-number: QTBUG-10019 Reviewed-by: jbache --- src/gui/widgets/qlineedit.cpp | 10 ++++++++-- tests/auto/qlineedit/qlineedit.pro | 1 + tests/auto/qlineedit/tst_qlineedit.cpp | 33 +++++++++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 2 deletions(-) diff --git a/src/gui/widgets/qlineedit.cpp b/src/gui/widgets/qlineedit.cpp index 2d2df92..f041a36 100644 --- a/src/gui/widgets/qlineedit.cpp +++ b/src/gui/widgets/qlineedit.cpp @@ -738,8 +738,14 @@ bool QLineEdit::validateAndSet(const QString &newText, int newPos, setText(oldText); return false; } - setCursorPosition(newPos); - setSelection(qMin(newMarkAnchor, newMarkDrag), qAbs(newMarkAnchor - newMarkDrag)); + int selstart = qMin(newMarkAnchor, newMarkDrag); + int sellength = qAbs(newMarkAnchor - newMarkDrag); + if (selstart == newPos) { + selstart = qMax(newMarkAnchor, newMarkDrag); + sellength = -sellength; + } + //setSelection also set the position + setSelection(selstart, sellength); return true; } #endif //QT3_SUPPORT diff --git a/tests/auto/qlineedit/qlineedit.pro b/tests/auto/qlineedit/qlineedit.pro index f00a2d8..88527ce 100644 --- a/tests/auto/qlineedit/qlineedit.pro +++ b/tests/auto/qlineedit/qlineedit.pro @@ -1,4 +1,5 @@ load(qttest_p4) +QT += qt3support SOURCES += tst_qlineedit.cpp diff --git a/tests/auto/qlineedit/tst_qlineedit.cpp b/tests/auto/qlineedit/tst_qlineedit.cpp index ca84b38..592c1cb 100644 --- a/tests/auto/qlineedit/tst_qlineedit.cpp +++ b/tests/auto/qlineedit/tst_qlineedit.cpp @@ -273,6 +273,11 @@ private slots: void taskQTBUG_4679_selectToStartEndOfBlock(); void taskQTBUG_7395_readOnlyShortcut(); +#ifdef QT3_SUPPORT + void validateAndSet_data(); + void validateAndSet(); +#endif + protected slots: #ifdef QT3_SUPPORT void lostFocus(); @@ -1488,6 +1493,34 @@ void tst_QLineEdit::lostFocus() { editingFinished(); } + +void tst_QLineEdit::validateAndSet_data() +{ + QTest::addColumn("newText"); + QTest::addColumn("newPos"); + QTest::addColumn("newMarkAnchor"); + QTest::addColumn("newMarkDrag"); + + QTest::newRow("1") << QString("Hello World") << 3 << 3 << 5; + QTest::newRow("2") << QString("Hello World") << 5 << 3 << 5; +} + +void tst_QLineEdit::validateAndSet() +{ + QFETCH(QString, newText); + QFETCH(int, newPos); + QFETCH(int, newMarkAnchor); + QFETCH(int, newMarkDrag); + + QLineEdit e; + e.validateAndSet(newText, newPos, newMarkAnchor, newMarkDrag); + QCOMPARE(e.text(), newText); + QCOMPARE(e.cursorPosition(), newPos); + QCOMPARE(e.selectedText(), newText.mid(newMarkAnchor, newMarkDrag-newMarkAnchor)); +} + + + #endif void tst_QLineEdit::editingFinished() { -- cgit v0.12 From 99dbc23113eaf40f4e311eb0f21092e54676bd10 Mon Sep 17 00:00:00 2001 From: mread Date: Thu, 22 Apr 2010 15:51:05 +0100 Subject: Event dispatcher slow down using delays rather than thread priority The Symbian event dispatcher has a mechanism to slow down the Qt app to prevent viewsrv crashes and keep the device responsive. This was implemented using a thread priority drop. But that has some bad side effects, such as app and system performance instability. This new implementation of a slow down mechanism uses a separate low priority thread to test when the system is getting too busy. Adaptive millisecond waits are used to slow the app down just enough to let the low prioirity thread to run. In practice this avoids the performance instability of the previous method, and results in much better system stability where the system stays more responsive with fewer viewsrv panics when heavy Qt apps are running. The slow down code kicks in after 2 seconds of busy time. The delays grow 1ms at a time to a maximum of 1/4 of average event run time. Task-number: QTBUG-9489 Reviewed-by: Shane Kearns --- src/corelib/kernel/qeventdispatcher_symbian.cpp | 127 +++++++++++++++++------- src/corelib/kernel/qeventdispatcher_symbian_p.h | 5 +- 2 files changed, 95 insertions(+), 37 deletions(-) diff --git a/src/corelib/kernel/qeventdispatcher_symbian.cpp b/src/corelib/kernel/qeventdispatcher_symbian.cpp index 8c96057..fa337ca 100644 --- a/src/corelib/kernel/qeventdispatcher_symbian.cpp +++ b/src/corelib/kernel/qeventdispatcher_symbian.cpp @@ -43,7 +43,6 @@ #include #include #include -#include #include #include @@ -636,6 +635,74 @@ void QSocketActiveObject::deleteLater() } } +#ifdef QT_SYMBIAN_PRIORITY_DROP +class QIdleDetectorThread +{ +public: + QIdleDetectorThread() + : m_state(STATE_RUN), m_stop(false) + { + qt_symbian_throwIfError(m_lock.CreateLocal()); + TInt err = m_idleDetectorThread.Create(KNullDesC(), &idleDetectorThreadFunc, 1024, &User::Allocator(), this); + if (err != KErrNone) + m_lock.Close(); + qt_symbian_throwIfError(err); + m_idleDetectorThread.SetPriority(EPriorityAbsoluteBackgroundNormal); + m_idleDetectorThread.Resume(); + } + + ~QIdleDetectorThread() + { + // close down the idle thread because if corelib is loaded temporarily, this would leak threads into the host process + m_stop = true; + m_lock.Signal(); + m_idleDetectorThread.SetPriority(EPriorityNormal); + TRequestStatus s; + m_idleDetectorThread.Logon(s); + User::WaitForRequest(s); + m_idleDetectorThread.Close(); + m_lock.Close(); + } + + void kick() + { + m_state = STATE_KICKED; + m_lock.Signal(); + } + + bool hasRun() + { + return m_state == STATE_RUN; + } + +private: + static TInt idleDetectorThreadFunc(TAny* self) + { + static_cast(self)->IdleLoop(); + return KErrNone; + } + + void IdleLoop() + { + while (!m_stop) { + m_lock.Wait(); + m_state = STATE_RUN; + } + } + +private: + enum IdleStates {STATE_KICKED, STATE_RUN} m_state; + bool m_stop; + RThread m_idleDetectorThread; + RFastLock m_lock; +}; + +Q_GLOBAL_STATIC(QIdleDetectorThread, idleDetectorThread); + +const int maxBusyTime = 2000; // maximum time we allow idle detector to be blocked before worrying, in milliseconds +const int baseDelay = 1000; // minimum delay time used when backing off to allow idling, in microseconds +#endif + QEventDispatcherSymbian::QEventDispatcherSymbian(QObject *parent) : QAbstractEventDispatcher(parent), m_activeScheduler(0), @@ -646,11 +713,15 @@ QEventDispatcherSymbian::QEventDispatcherSymbian(QObject *parent) m_iterationCount(0), m_noSocketEvents(false) { +#ifdef QT_SYMBIAN_PRIORITY_DROP + m_delay = baseDelay; + m_avgEventTime = 0; + idleDetectorThread(); +#endif } QEventDispatcherSymbian::~QEventDispatcherSymbian() { - m_processHandle.Close(); } void QEventDispatcherSymbian::startingUp() @@ -711,23 +782,7 @@ bool QEventDispatcherSymbian::processEvents ( QEventLoop::ProcessEventsFlags fla m_interrupt = false; #ifdef QT_SYMBIAN_PRIORITY_DROP - /* - * This QTime variable is used to measure the time it takes to finish - * the event loop. If we take too long in the loop, other processes - * may be starved and killed. After the first event has completed, we - * take the current time, and if the remaining events take longer than - * a preset time, we temporarily lower the priority to force a context - * switch. For applications that do not take unecessarily long in the - * event loop, the priority will not be altered. - */ - QTime time; - enum { - FirstRun, - SubsequentRun, - TimeStarted - } timeState = FirstRun; - - TProcessPriority priority; + QTime eventTimer; #endif while (1) { @@ -743,10 +798,18 @@ bool QEventDispatcherSymbian::processEvents ( QEventLoop::ProcessEventsFlags fla } #ifdef QT_SYMBIAN_PRIORITY_DROP - if (timeState == SubsequentRun) { - time.start(); - timeState = TimeStarted; + if (idleDetectorThread()->hasRun()) { + if (m_delay > baseDelay) + m_delay -= baseDelay; + m_lastIdleRequestTimer.start(); + idleDetectorThread()->kick(); + } else if (m_lastIdleRequestTimer.elapsed() > maxBusyTime) { + User::AfterHighRes(m_delay); + // allow delay to be up to 1/4 of execution time + if (!idleDetectorThread()->hasRun() && m_delay*3 < m_avgEventTime) + m_delay += baseDelay; } + eventTimer.start(); #endif TInt error; @@ -756,6 +819,12 @@ bool QEventDispatcherSymbian::processEvents ( QEventLoop::ProcessEventsFlags fla CActiveScheduler::Current()->Error(error); } +#ifdef QT_SYMBIAN_PRIORITY_DROP + int eventDur = eventTimer.elapsed()*1000; + // average is calcualted as a 5% decaying exponential average + m_avgEventTime = (m_avgEventTime * 95 + eventDur * 5) / 100; +#endif + if (!handledSymbianEvent) { qFatal("QEventDispatcherSymbian::processEvents(): Caught Symbian stray signal"); } @@ -764,20 +833,6 @@ bool QEventDispatcherSymbian::processEvents ( QEventLoop::ProcessEventsFlags fla break; } block = false; -#ifdef QT_SYMBIAN_PRIORITY_DROP - if (timeState == TimeStarted && time.elapsed() > 100) { - priority = m_processHandle.Priority(); - m_processHandle.SetPriority(EPriorityBackground); - time.start(); - // Slight chance of race condition in the next lines, but nothing fatal - // will happen, just wrong priority. - if (m_processHandle.Priority() == EPriorityBackground) { - m_processHandle.SetPriority(priority); - } - } - if (timeState == FirstRun) - timeState = SubsequentRun; -#endif }; emit awake(); diff --git a/src/corelib/kernel/qeventdispatcher_symbian_p.h b/src/corelib/kernel/qeventdispatcher_symbian_p.h index 1ab31cc..8a9c9a0 100644 --- a/src/corelib/kernel/qeventdispatcher_symbian_p.h +++ b/src/corelib/kernel/qeventdispatcher_symbian_p.h @@ -62,6 +62,7 @@ #include #include #include +#include #include @@ -279,7 +280,9 @@ private: QList m_deferredActiveObjects; - RProcess m_processHandle; + int m_delay; + int m_avgEventTime; + QTime m_lastIdleRequestTimer; }; #ifdef QT_DEBUG -- cgit v0.12 From 4fedbbded38d7a978c16b41d66439e00e586dfb1 Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Fri, 23 Apr 2010 12:17:19 +1000 Subject: Disable notify() signal when setNotifyInterval is zero in alsa backend. Reviewed-by:Derick Hawcroft --- src/multimedia/audio/qaudioinput_alsa_p.cpp | 9 ++------- src/multimedia/audio/qaudiooutput_alsa_p.cpp | 9 ++------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/src/multimedia/audio/qaudioinput_alsa_p.cpp b/src/multimedia/audio/qaudioinput_alsa_p.cpp index 6b15008..c9a8b71 100644 --- a/src/multimedia/audio/qaudioinput_alsa_p.cpp +++ b/src/multimedia/audio/qaudioinput_alsa_p.cpp @@ -58,8 +58,6 @@ QT_BEGIN_NAMESPACE //#define DEBUG_AUDIO 1 -static const int minimumIntervalTime = 50; - QAudioInputPrivate::QAudioInputPrivate(const QByteArray &device, const QAudioFormat& audioFormat): settings(audioFormat) { @@ -594,10 +592,7 @@ int QAudioInputPrivate::periodSize() const void QAudioInputPrivate::setNotifyInterval(int ms) { - if(ms >= minimumIntervalTime) - intervalTime = ms; - else - intervalTime = minimumIntervalTime; + intervalTime = qMax(0, ms); } int QAudioInputPrivate::notifyInterval() const @@ -649,7 +644,7 @@ bool QAudioInputPrivate::deviceReady() if(deviceState != QAudio::ActiveState) return true; - if((timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { + if(intervalTime && (timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { emit notify(); elapsedTimeOffset = timeStamp.elapsed() + elapsedTimeOffset - intervalTime; timeStamp.restart(); diff --git a/src/multimedia/audio/qaudiooutput_alsa_p.cpp b/src/multimedia/audio/qaudiooutput_alsa_p.cpp index afae8b7..49b32c0 100644 --- a/src/multimedia/audio/qaudiooutput_alsa_p.cpp +++ b/src/multimedia/audio/qaudiooutput_alsa_p.cpp @@ -58,8 +58,6 @@ QT_BEGIN_NAMESPACE //#define DEBUG_AUDIO 1 -static const int minimumIntervalTime = 50; - QAudioOutputPrivate::QAudioOutputPrivate(const QByteArray &device, const QAudioFormat& audioFormat): settings(audioFormat) { @@ -573,10 +571,7 @@ int QAudioOutputPrivate::bufferSize() const void QAudioOutputPrivate::setNotifyInterval(int ms) { - if(ms >= minimumIntervalTime) - intervalTime = ms; - else - intervalTime = minimumIntervalTime; + intervalTime = qMax(0, ms); } int QAudioOutputPrivate::notifyInterval() const @@ -718,7 +713,7 @@ bool QAudioOutputPrivate::deviceReady() if(deviceState != QAudio::ActiveState) return true; - if((timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { + if(intervalTime && (timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { emit notify(); elapsedTimeOffset = timeStamp.elapsed() + elapsedTimeOffset - intervalTime; timeStamp.restart(); -- cgit v0.12 From e34b0cc2766ce403a8d12964039957f45e35e451 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Fri, 23 Apr 2010 09:24:56 +0200 Subject: tst_qlineedit: add contains(QT_CONFIG,qt3support) to the .pro file to make it compile --- tests/auto/qlineedit/qlineedit.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/auto/qlineedit/qlineedit.pro b/tests/auto/qlineedit/qlineedit.pro index 88527ce..1f862b4 100644 --- a/tests/auto/qlineedit/qlineedit.pro +++ b/tests/auto/qlineedit/qlineedit.pro @@ -1,5 +1,5 @@ load(qttest_p4) -QT += qt3support +contains(QT_CONFIG,qt3support) QT += qt3support SOURCES += tst_qlineedit.cpp -- cgit v0.12 From b5b096996de656dc44723b02826d892291173797 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Trond=20Kjern=C3=A5sen?= Date: Fri, 23 Apr 2010 12:14:43 +0200 Subject: Fixed two problems with generated EPS files. 1. The Adobe EPSF 3.0 spec requires that the PS version of EPS files is PS-Adobe-3.0. 2. The %%BoundingBox operator is documented to use integers, we used to output floating point numbers when generating an EPS file. Task-number: QTBUG-10121, QTBUG-10140 Reviewed-by: Kim --- src/gui/painting/qprintengine_ps.cpp | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/gui/painting/qprintengine_ps.cpp b/src/gui/painting/qprintengine_ps.cpp index ac94de3..28e9a7a 100644 --- a/src/gui/painting/qprintengine_ps.cpp +++ b/src/gui/painting/qprintengine_ps.cpp @@ -485,7 +485,6 @@ void QPSPrintEnginePrivate::emitHeader(bool finished) QByteArray header; QPdf::ByteStream s(&header); - s << "%!PS-Adobe-1.0"; qreal scale = 72. / ((qreal) q->metric(QPaintDevice::PdmDpiY)); QRect pageRect = this->pageRect(); @@ -497,28 +496,32 @@ void QPSPrintEnginePrivate::emitHeader(bool finished) int width = pageRect.width(); int height = pageRect.height(); if (finished && pageCount == 1 && copies == 1 && - ((fullPage && qt_gen_epsf) || (outputFileName.endsWith(QLatin1String(".eps")))) - ) { + ((fullPage && qt_gen_epsf) || (outputFileName.endsWith(QLatin1String(".eps"))))) + { + // According to the EPSF 3.0 spec it is required that the PS + // version is PS-Adobe-3.0 + s << "%!PS-Adobe-3.0"; if (!boundingBox.isValid()) boundingBox.setRect(0, 0, width, height); if (orientation == QPrinter::Landscape) { if (!fullPage) boundingBox.translate(-mleft, -mtop); s << " EPSF-3.0\n%%BoundingBox: " - << (int)(printer->height() - boundingBox.bottom())*scale // llx - << (int)(printer->width() - boundingBox.right())*scale - 1 // lly - << (int)(printer->height() - boundingBox.top())*scale + 1 // urx - << (int)(printer->width() - boundingBox.left())*scale; // ury + << int((printer->height() - boundingBox.bottom())*scale) // llx + << int((printer->width() - boundingBox.right())*scale - 1) // lly + << int((printer->height() - boundingBox.top())*scale + 1) // urx + << int((printer->width() - boundingBox.left())*scale); // ury } else { if (!fullPage) boundingBox.translate(mleft, -mtop); s << " EPSF-3.0\n%%BoundingBox: " - << (int)(boundingBox.left())*scale - << (int)(printer->height() - boundingBox.bottom())*scale - 1 - << (int)(boundingBox.right())*scale + 1 - << (int)(printer->height() - boundingBox.top())*scale; + << int((boundingBox.left())*scale) + << int((printer->height() - boundingBox.bottom())*scale - 1) + << int((boundingBox.right())*scale + 1) + << int((printer->height() - boundingBox.top())*scale); } } else { + s << "%!PS-Adobe-1.0"; int w = width + (fullPage ? 0 : mleft + mright); int h = height + (fullPage ? 0 : mtop + mbottom); w = (int)(w*scale); -- cgit v0.12 From f540b740cfbc4a90f615814cdf2142b1073d352a Mon Sep 17 00:00:00 2001 From: Shane Kearns Date: Fri, 23 Apr 2010 11:01:19 +0200 Subject: stub implementations for EGL for symbian This is done to keep binary compatibility between Qt built with openvg vs Qt built without openvg support. The problem is that Symbian uses .def files to map between exported symbol names and ordinals in the DLL export table. The alternative of manually maintaining two versions of the QtGui def files proved to be too error prone and time consuming. Note that the EGL exports are defined in a private header, for use by the openvg and opengl graphics system plugins. These plugins should always be compiled against Qt configured with support for the graphics system, as the headers contain default parameters which are inlined into the plugin binary. Task-number: QTBUG-7870 Reviewed-by: Tom Cooksey --- src/gui/egl/egl.pri | 41 +++--- src/gui/egl/qegl_stub.cpp | 238 ++++++++++++++++++++++++++++++ src/gui/egl/qeglproperties_p.h | 21 ++- src/gui/egl/qeglproperties_stub.cpp | 138 ++++++++++++++++++ src/gui/gui.pro | 2 +- src/s60installs/bwins/QtGuiu.def | 280 +++++++++++++++++++++++++++++------- src/s60installs/eabi/QtGuiu.def | 277 ++++++++++++++++++++++++++++------- 7 files changed, 879 insertions(+), 118 deletions(-) create mode 100644 src/gui/egl/qegl_stub.cpp create mode 100644 src/gui/egl/qeglproperties_stub.cpp diff --git a/src/gui/egl/egl.pri b/src/gui/egl/egl.pri index 669d311..65b1636 100644 --- a/src/gui/egl/egl.pri +++ b/src/gui/egl/egl.pri @@ -1,23 +1,28 @@ -CONFIG += egl +contains(QT_CONFIG, egl): { + CONFIG += egl -HEADERS += \ - egl/qegl_p.h \ - egl/qeglproperties_p.h + HEADERS += \ + egl/qegl_p.h \ + egl/qeglproperties_p.h -SOURCES += \ - egl/qegl.cpp \ - egl/qeglproperties.cpp + SOURCES += \ + egl/qegl.cpp \ + egl/qeglproperties.cpp -wince*: SOURCES += egl/qegl_wince.cpp + wince*: SOURCES += egl/qegl_wince.cpp -unix { - embedded { - SOURCES += egl/qegl_qws.cpp - } else { - symbian { - SOURCES += egl/qegl_symbian.cpp - } else { - SOURCES += egl/qegl_x11.cpp - } - } + unix { + embedded { + SOURCES += egl/qegl_qws.cpp + } else { + symbian { + SOURCES += egl/qegl_symbian.cpp + } else { + SOURCES += egl/qegl_x11.cpp + } + } + } +} else:symbian { + SOURCES += egl/qegl_stub.cpp + SOURCES += egl/qeglproperties_stub.cpp } diff --git a/src/gui/egl/qegl_stub.cpp b/src/gui/egl/qegl_stub.cpp new file mode 100644 index 0000000..e280739 --- /dev/null +++ b/src/gui/egl/qegl_stub.cpp @@ -0,0 +1,238 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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 +#include +#include +#include + +#include "qegl_p.h" + +QT_BEGIN_NAMESPACE + +static void noegl(const char *fn) +{ + qWarning() << fn << " called, but Qt configured without EGL" << endl; +} + +#define NOEGL noegl(__FUNCTION__); + +EGLDisplay QEglContext::dpy = 0; + +QEglContext::QEglContext() + : apiType(QEgl::OpenGL) + , ctx(0) + , cfg(0) + , currentSurface(0) + , current(false) + , ownsContext(true) + , sharing(false) +{ + NOEGL +} + +QEglContext::~QEglContext() +{ + NOEGL +} + +bool QEglContext::isValid() const +{ + NOEGL + return false; +} + +bool QEglContext::isCurrent() const +{ + NOEGL + return false; +} + +bool QEglContext::chooseConfig(const QEglProperties& properties, QEgl::PixelFormatMatch match) +{ + Q_UNUSED(properties) + Q_UNUSED(match) + NOEGL + return false; +} + +EGLSurface QEglContext::createSurface(QPaintDevice* device, const QEglProperties *properties) +{ + Q_UNUSED(device) + Q_UNUSED(properties) + NOEGL + return 0; +} + + +// Create the EGLContext. +bool QEglContext::createContext(QEglContext *shareContext, const QEglProperties *properties) +{ + Q_UNUSED(shareContext) + Q_UNUSED(properties) + NOEGL + return false; +} + +// Destroy an EGL surface object. If it was current on this context +// then call doneCurrent() for it first. +void QEglContext::destroySurface(EGLSurface surface) +{ + Q_UNUSED(surface) + NOEGL +} + +// Destroy the context. Note: this does not destroy the surface. +void QEglContext::destroyContext() +{ + NOEGL +} + +bool QEglContext::makeCurrent(EGLSurface surface) +{ + Q_UNUSED(surface) + NOEGL + return false; +} + +bool QEglContext::doneCurrent() +{ + NOEGL + return false; +} + +// Act as though doneCurrent() was called, but keep the context +// and the surface active for the moment. This allows makeCurrent() +// to skip a call to eglMakeCurrent() if we are using the same +// surface as the last set of painting operations. We leave the +// currentContext() pointer as-is for now. +bool QEglContext::lazyDoneCurrent() +{ + NOEGL + return false; +} + +bool QEglContext::swapBuffers(EGLSurface surface) +{ + Q_UNUSED(surface) + NOEGL + return false; +} + +bool QEglContext::configAttrib(int name, EGLint *value) const +{ + Q_UNUSED(name) + Q_UNUSED(value) + NOEGL + return false; +} + +EGLDisplay QEglContext::display() +{ + NOEGL + return 0; +} + +// Return the error string associated with a specific code. +QString QEglContext::errorString(EGLint code) +{ + Q_UNUSED(code) + NOEGL + return QString(); +} + +// Dump all of the EGL configurations supported by the system. +void QEglContext::dumpAllConfigs() +{ + NOEGL +} + +QString QEglContext::extensions() +{ + NOEGL + return QString(); +} + +bool QEglContext::hasExtension(const char* extensionName) +{ + Q_UNUSED(extensionName) + NOEGL + return false; +} + +QEglContext *QEglContext::currentContext(QEgl::API api) +{ + Q_UNUSED(api) + NOEGL + return false; +} + +void QEglContext::setCurrentContext(QEgl::API api, QEglContext *context) +{ + Q_UNUSED(api) + Q_UNUSED(context) + NOEGL +} + +EGLNativeDisplayType QEglContext::nativeDisplay() +{ + NOEGL + return 0; +} + +void QEglContext::waitClient() +{ + NOEGL +} + +void QEglContext::waitNative() +{ + NOEGL +} + +QEglProperties QEglContext::configProperties(EGLConfig cfg) const +{ + Q_UNUSED(cfg) + NOEGL + return QEglProperties(); +} + +QT_END_NAMESPACE diff --git a/src/gui/egl/qeglproperties_p.h b/src/gui/egl/qeglproperties_p.h index 43c3393..b385773 100644 --- a/src/gui/egl/qeglproperties_p.h +++ b/src/gui/egl/qeglproperties_p.h @@ -58,6 +58,7 @@ QT_BEGIN_INCLUDE_NAMESPACE +#ifndef QT_NO_EGL #if defined(QT_OPENGL_ES_2) # include #endif @@ -67,6 +68,24 @@ QT_BEGIN_INCLUDE_NAMESPACE #else # include #endif +#else + +//types from egltypes.h for compiling stub without EGL headers +typedef int EGLBoolean; +typedef int EGLint; +typedef int EGLenum; +typedef int NativeDisplayType; +typedef void* NativeWindowType; +typedef void* NativePixmapType; +typedef int EGLDisplay; +typedef int EGLConfig; +typedef int EGLSurface; +typedef int EGLContext; +typedef int EGLClientBuffer; +#define EGL_NONE 0x3038 /* Attrib list terminator */ + +#endif + #if defined(Q_WS_X11) @@ -103,7 +122,7 @@ namespace QEgl { ExactPixelFormat, BestPixelFormat }; -}; +} class QX11Info; class QPaintDevice; diff --git a/src/gui/egl/qeglproperties_stub.cpp b/src/gui/egl/qeglproperties_stub.cpp new file mode 100644 index 0000000..bf5e47b --- /dev/null +++ b/src/gui/egl/qeglproperties_stub.cpp @@ -0,0 +1,138 @@ +/**************************************************************************** +** +** Copyright (C) 2010 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 +#include + +#include "qeglproperties_p.h" + +QT_BEGIN_NAMESPACE + +static void noegl(const char *fn) +{ + qWarning() << fn << " called, but Qt configured without EGL" << endl; +} + +#define NOEGL noegl(__FUNCTION__); + +// Initialize a property block. +QEglProperties::QEglProperties() +{ + NOEGL +} + +QEglProperties::QEglProperties(EGLConfig cfg) +{ + Q_UNUSED(cfg) + NOEGL +} + +// Fetch the current value associated with a property. +int QEglProperties::value(int name) const +{ + Q_UNUSED(name) + NOEGL + return 0; +} + +// Set the value associated with a property, replacing an existing +// value if there is one. +void QEglProperties::setValue(int name, int value) +{ + Q_UNUSED(name) + Q_UNUSED(value) + NOEGL +} + +// Remove a property value. Returns false if the property is not present. +bool QEglProperties::removeValue(int name) +{ + Q_UNUSED(name) + NOEGL + return false; +} + +// Sets the red, green, blue, and alpha sizes based on a pixel format. +// Normally used to match a configuration request to the screen format. +void QEglProperties::setPixelFormat(QImage::Format pixelFormat) +{ + Q_UNUSED(pixelFormat) + NOEGL + +} + +void QEglProperties::setRenderableType(QEgl::API api) +{ + Q_UNUSED(api); + NOEGL +} + +// Reduce the complexity of a configuration request to ask for less +// because the previous request did not result in success. Returns +// true if the complexity was reduced, or false if no further +// reductions in complexity are possible. +bool QEglProperties::reduceConfiguration() +{ + NOEGL + return false; +} + +// Convert a property list to a string suitable for debug output. +QString QEglProperties::toString() const +{ + NOEGL + return QString(); +} + +void QEglProperties::setPaintDeviceFormat(QPaintDevice *dev) +{ + Q_UNUSED(dev) + NOEGL +} + +void QEglProperties::dumpAllConfigs() +{ + NOEGL +} + +QT_END_NAMESPACE + + diff --git a/src/gui/gui.pro b/src/gui/gui.pro index d2401f4..8b58835 100644 --- a/src/gui/gui.pro +++ b/src/gui/gui.pro @@ -40,7 +40,7 @@ include(statemachine/statemachine.pri) include(math3d/math3d.pri) include(effects/effects.pri) -contains(QT_CONFIG, egl): include(egl/egl.pri) +include(egl/egl.pri) embedded: QT += network diff --git a/src/s60installs/bwins/QtGuiu.def b/src/s60installs/bwins/QtGuiu.def index dad9e6c..c7a23fb 100644 --- a/src/s60installs/bwins/QtGuiu.def +++ b/src/s60installs/bwins/QtGuiu.def @@ -12551,67 +12551,249 @@ EXPORTS ?isOpacityNull@QGraphicsItemPrivate@@SA_NM@Z @ 12550 NONAME ; bool QGraphicsItemPrivate::isOpacityNull(float) ?isOpacityNull@QGraphicsItemPrivate@@QBE_NXZ @ 12551 NONAME ; bool QGraphicsItemPrivate::isOpacityNull(void) const ?api@QEglContext@@QBE?AW4API@QEgl@@XZ @ 12552 NONAME ABSENT ; enum QEgl::API QEglContext::api(void) const - ?chooseConfig@QEglContext@@QAE_NABVQEglProperties@@W4PixelFormatMatch@QEgl@@@Z @ 12553 NONAME ABSENT ; bool QEglContext::chooseConfig(class QEglProperties const &, enum QEgl::PixelFormatMatch) - ?destroySurface@QEglContext@@QAEXH@Z @ 12554 NONAME ABSENT ; void QEglContext::destroySurface(int) - ?lazyDoneCurrent@QEglContext@@QAE_NXZ @ 12555 NONAME ABSENT ; bool QEglContext::lazyDoneCurrent(void) + ?chooseConfig@QEglContext@@QAE_NABVQEglProperties@@W4PixelFormatMatch@QEgl@@@Z @ 12553 NONAME ; bool QEglContext::chooseConfig(class QEglProperties const &, enum QEgl::PixelFormatMatch) + ?destroySurface@QEglContext@@QAEXH@Z @ 12554 NONAME ; void QEglContext::destroySurface(int) + ?lazyDoneCurrent@QEglContext@@QAE_NXZ @ 12555 NONAME ; bool QEglContext::lazyDoneCurrent(void) ?waitNative@QEglContext@@QAEXXZ @ 12556 NONAME ABSENT ; void QEglContext::waitNative(void) ?context@QEglContext@@QBEHXZ @ 12557 NONAME ABSENT ; int QEglContext::context(void) const - ?configAttrib@QEglContext@@QBE_NHPAH@Z @ 12558 NONAME ABSENT ; bool QEglContext::configAttrib(int, int *) const - ??0QEglProperties@@QAE@ABV0@@Z @ 12559 NONAME ABSENT ; QEglProperties::QEglProperties(class QEglProperties const &) + ?configAttrib@QEglContext@@QBE_NHPAH@Z @ 12558 NONAME ; bool QEglContext::configAttrib(int, int *) const + ??0QEglProperties@@QAE@ABV0@@Z @ 12559 NONAME ; QEglProperties::QEglProperties(class QEglProperties const &) ?config@QEglContext@@QBEHXZ @ 12560 NONAME ABSENT ; int QEglContext::config(void) const ?openDisplay@QEglContext@@QAE_NPAVQPaintDevice@@@Z @ 12561 NONAME ABSENT ; bool QEglContext::openDisplay(class QPaintDevice *) ?error@QEglContext@@SAHXZ @ 12562 NONAME ABSENT ; int QEglContext::error(void) - ?swapBuffers@QEglContext@@QAE_NH@Z @ 12563 NONAME ABSENT ; bool QEglContext::swapBuffers(int) - ?setApi@QEglContext@@QAEXW4API@QEgl@@@Z @ 12564 NONAME ABSENT ; void QEglContext::setApi(enum QEgl::API) - ?makeCurrent@QEglContext@@QAE_NH@Z @ 12565 NONAME ABSENT ; bool QEglContext::makeCurrent(int) - ?createSurface@QEglContext@@QAEHPAVQPaintDevice@@PBVQEglProperties@@@Z @ 12566 NONAME ABSENT ; int QEglContext::createSurface(class QPaintDevice *, class QEglProperties const *) - ?dumpAllConfigs@QEglContext@@QAEXXZ @ 12567 NONAME ABSENT ; void QEglContext::dumpAllConfigs(void) - ?reduceConfiguration@QEglProperties@@QAE_NXZ @ 12568 NONAME ABSENT ; bool QEglProperties::reduceConfiguration(void) - ?removeValue@QEglProperties@@QAE_NH@Z @ 12569 NONAME ABSENT ; bool QEglProperties::removeValue(int) - ?toString@QEglProperties@@QBE?AVQString@@XZ @ 12570 NONAME ABSENT ; class QString QEglProperties::toString(void) const - ?dumpAllConfigs@QEglProperties@@SAXXZ @ 12571 NONAME ABSENT ; void QEglProperties::dumpAllConfigs(void) + ?swapBuffers@QEglContext@@QAE_NH@Z @ 12563 NONAME ; bool QEglContext::swapBuffers(int) + ?setApi@QEglContext@@QAEXW4API@QEgl@@@Z @ 12564 NONAME ; void QEglContext::setApi(enum QEgl::API) + ?makeCurrent@QEglContext@@QAE_NH@Z @ 12565 NONAME ; bool QEglContext::makeCurrent(int) + ?createSurface@QEglContext@@QAEHPAVQPaintDevice@@PBVQEglProperties@@@Z @ 12566 NONAME ; int QEglContext::createSurface(class QPaintDevice *, class QEglProperties const *) + ?dumpAllConfigs@QEglContext@@QAEXXZ @ 12567 NONAME ; void QEglContext::dumpAllConfigs(void) + ?reduceConfiguration@QEglProperties@@QAE_NXZ @ 12568 NONAME ; bool QEglProperties::reduceConfiguration(void) + ?removeValue@QEglProperties@@QAE_NH@Z @ 12569 NONAME ; bool QEglProperties::removeValue(int) + ?toString@QEglProperties@@QBE?AVQString@@XZ @ 12570 NONAME ; class QString QEglProperties::toString(void) const + ?dumpAllConfigs@QEglProperties@@SAXXZ @ 12571 NONAME ; void QEglProperties::dumpAllConfigs(void) ?defaultDisplay@QEglContext@@SAHPAVQPaintDevice@@@Z @ 12572 NONAME ABSENT ; int QEglContext::defaultDisplay(class QPaintDevice *) ?configProperties@QEglContext@@QBE?AVQEglProperties@@H@Z @ 12573 NONAME ABSENT ; class QEglProperties QEglContext::configProperties(int) const - ?properties@QEglProperties@@QBEPBHXZ @ 12574 NONAME ABSENT ; int const * QEglProperties::properties(void) const - ??0QEglContext@@QAE@XZ @ 12575 NONAME ABSENT ; QEglContext::QEglContext(void) - ??1QEglContext@@QAE@XZ @ 12576 NONAME ABSENT ; QEglContext::~QEglContext(void) - ?isValid@QEglContext@@QBE_NXZ @ 12577 NONAME ABSENT ; bool QEglContext::isValid(void) const - ?value@QEglProperties@@QBEHH@Z @ 12578 NONAME ABSENT ; int QEglProperties::value(int) const + ?properties@QEglProperties@@QBEPBHXZ @ 12574 NONAME ; int const * QEglProperties::properties(void) const + ??0QEglContext@@QAE@XZ @ 12575 NONAME ; QEglContext::QEglContext(void) + ??1QEglContext@@QAE@XZ @ 12576 NONAME ; QEglContext::~QEglContext(void) + ?isValid@QEglContext@@QBE_NXZ @ 12577 NONAME ; bool QEglContext::isValid(void) const + ?value@QEglProperties@@QBEHH@Z @ 12578 NONAME ; int QEglProperties::value(int) const ?clearError@QEglContext@@SAXXZ @ 12579 NONAME ABSENT ; void QEglContext::clearError(void) - ??0QEglProperties@@QAE@H@Z @ 12580 NONAME ABSENT ; QEglProperties::QEglProperties(int) - ?setValue@QEglProperties@@QAEXHH@Z @ 12581 NONAME ABSENT ; void QEglProperties::setValue(int, int) - ?setPaintDeviceFormat@QEglProperties@@QAEXPAVQPaintDevice@@@Z @ 12582 NONAME ABSENT ; void QEglProperties::setPaintDeviceFormat(class QPaintDevice *) + ??0QEglProperties@@QAE@H@Z @ 12580 NONAME ; QEglProperties::QEglProperties(int) + ?setValue@QEglProperties@@QAEXHH@Z @ 12581 NONAME ; void QEglProperties::setValue(int, int) + ?setPaintDeviceFormat@QEglProperties@@QAEXPAVQPaintDevice@@@Z @ 12582 NONAME ; void QEglProperties::setPaintDeviceFormat(class QPaintDevice *) ?destroy@QEglContext@@QAEXXZ @ 12583 NONAME ABSENT ; void QEglContext::destroy(void) - ?setRenderableType@QEglProperties@@QAEXW4API@QEgl@@@Z @ 12584 NONAME ABSENT ; void QEglProperties::setRenderableType(enum QEgl::API) - ?setContext@QEglContext@@QAEXH@Z @ 12585 NONAME ABSENT ; void QEglContext::setContext(int) + ?setRenderableType@QEglProperties@@QAEXW4API@QEgl@@@Z @ 12584 NONAME ; void QEglProperties::setRenderableType(enum QEgl::API) + ?setContext@QEglContext@@QAEXH@Z @ 12585 NONAME ; void QEglContext::setContext(int) ?waitClient@QEglContext@@QAEXXZ @ 12586 NONAME ABSENT ; void QEglContext::waitClient(void) - ?isEmpty@QEglProperties@@QBE_NXZ @ 12587 NONAME ABSENT ; bool QEglProperties::isEmpty(void) const + ?isEmpty@QEglProperties@@QBE_NXZ @ 12587 NONAME ; bool QEglProperties::isEmpty(void) const ?getDisplay@QEglContext@@CAHPAVQPaintDevice@@@Z @ 12588 NONAME ABSENT ; int QEglContext::getDisplay(class QPaintDevice *) - ?isSharing@QEglContext@@QBE_NXZ @ 12589 NONAME ABSENT ; bool QEglContext::isSharing(void) const - ?isCurrent@QEglContext@@QBE_NXZ @ 12590 NONAME ABSENT ; bool QEglContext::isCurrent(void) const - ??0QEglProperties@@QAE@XZ @ 12591 NONAME ABSENT ; QEglProperties::QEglProperties(void) + ?isSharing@QEglContext@@QBE_NXZ @ 12589 NONAME ; bool QEglContext::isSharing(void) const + ?isCurrent@QEglContext@@QBE_NXZ @ 12590 NONAME ; bool QEglContext::isCurrent(void) const + ??0QEglProperties@@QAE@XZ @ 12591 NONAME ; QEglProperties::QEglProperties(void) ?extensions@QEglContext@@SA?AVQString@@XZ @ 12592 NONAME ABSENT ; class QString QEglContext::extensions(void) - ?setCurrentContext@QEglContext@@CAXW4API@QEgl@@PAV1@@Z @ 12593 NONAME ABSENT ; void QEglContext::setCurrentContext(enum QEgl::API, class QEglContext *) - ??1QEglProperties@@QAE@XZ @ 12594 NONAME ABSENT ; QEglProperties::~QEglProperties(void) - ?createContext@QEglContext@@QAE_NPAV1@PBVQEglProperties@@@Z @ 12595 NONAME ABSENT ; bool QEglContext::createContext(class QEglContext *, class QEglProperties const *) - ?setConfig@QEglContext@@QAEXH@Z @ 12596 NONAME ABSENT ; void QEglContext::setConfig(int) + ?setCurrentContext@QEglContext@@CAXW4API@QEgl@@PAV1@@Z @ 12593 NONAME ; void QEglContext::setCurrentContext(enum QEgl::API, class QEglContext *) + ??1QEglProperties@@QAE@XZ @ 12594 NONAME ; QEglProperties::~QEglProperties(void) + ?createContext@QEglContext@@QAE_NPAV1@PBVQEglProperties@@@Z @ 12595 NONAME ; bool QEglContext::createContext(class QEglContext *, class QEglProperties const *) + ?setConfig@QEglContext@@QAEXH@Z @ 12596 NONAME ; void QEglContext::setConfig(int) ?hasExtension@QEglContext@@SA_NPBD@Z @ 12597 NONAME ABSENT ; bool QEglContext::hasExtension(char const *) - ?doneCurrent@QEglContext@@QAE_NXZ @ 12598 NONAME ABSENT ; bool QEglContext::doneCurrent(void) - ?display@QEglContext@@QBEHXZ @ 12599 NONAME ABSENT ; int QEglContext::display(void) const - ?setPixelFormat@QEglProperties@@QAEXW4Format@QImage@@@Z @ 12600 NONAME ABSENT ; void QEglProperties::setPixelFormat(enum QImage::Format) - ?currentContext@QEglContext@@CAPAV1@W4API@QEgl@@@Z @ 12601 NONAME ABSENT ; class QEglContext * QEglContext::currentContext(enum QEgl::API) - ?errorString@QEglContext@@SA?AVQString@@H@Z @ 12602 NONAME ABSENT ; class QString QEglContext::errorString(int) + ?doneCurrent@QEglContext@@QAE_NXZ @ 12598 NONAME ; bool QEglContext::doneCurrent(void) + ?display@QEglContext@@QBEHXZ @ 12599 NONAME ; int QEglContext::display(void) const + ?setPixelFormat@QEglProperties@@QAEXW4Format@QImage@@@Z @ 12600 NONAME ; void QEglProperties::setPixelFormat(enum QImage::Format) + ?currentContext@QEglContext@@CAPAV1@W4API@QEgl@@@Z @ 12601 NONAME ; class QEglContext * QEglContext::currentContext(enum QEgl::API) + ?errorString@QEglContext@@SA?AVQString@@H@Z @ 12602 NONAME ; class QString QEglContext::errorString(int) ?removeAllApplicationFonts@QFontDatabase@@SA_NXZ @ 12603 NONAME ; bool QFontDatabase::removeAllApplicationFonts() - ?display@QEglContext@@SAHXZ @ 12604 NONAME ABSENT ; int QEglContext::display(void) - ?clearFocusHelper@QGraphicsItemPrivate@@QAEX_N@Z @ 12605 NONAME ; void QGraphicsItemPrivate::clearFocusHelper(bool) - ?canKeypadNavigate@QWidgetPrivate@@SA_NW4Orientation@Qt@@@Z @ 12606 NONAME ; bool QWidgetPrivate::canKeypadNavigate(enum Qt::Orientation) - ?updateDisplayText@QLineControl@@AAEX_N@Z @ 12607 NONAME ; void QLineControl::updateDisplayText(bool) - ?isPixmapCached@QImagePixmapCleanupHooks@@SA_NABVQPixmap@@@Z @ 12608 NONAME ; bool QImagePixmapCleanupHooks::isPixmapCached(class QPixmap const &) - ?nativeDisplay@QEglContext@@CAHXZ @ 12609 NONAME ABSENT ; int QEglContext::nativeDisplay(void) - ?getGlyphBearings@QFontEngine@@UAEXIPAM0@Z @ 12610 NONAME ; void QFontEngine::getGlyphBearings(unsigned int, float *, float *) - ?inTabWidget@QWidgetPrivate@@SA_NPAVQWidget@@@Z @ 12611 NONAME ; bool QWidgetPrivate::inTabWidget(class QWidget *) - ?destroyContext@QEglContext@@QAEXXZ @ 12612 NONAME ABSENT ; void QEglContext::destroyContext(void) - ?isImageCached@QImagePixmapCleanupHooks@@SA_NABVQImage@@@Z @ 12613 NONAME ; bool QImagePixmapCleanupHooks::isImageCached(class QImage const &) - ?dpy@QEglContext@@0HA @ 12614 NONAME ; int QEglContext::dpy - ?setFocusHelper@QGraphicsItemPrivate@@QAEXW4FocusReason@Qt@@_N1@Z @ 12615 NONAME ; void QGraphicsItemPrivate::setFocusHelper(enum Qt::FocusReason, bool, bool) + ??0FileInfo@QZipReader@@QAE@XZ @ 12604 NONAME ABSENT ; QZipReader::FileInfo::FileInfo(void) + ??0QAbstractScrollAreaPrivate@@QAE@XZ @ 12605 NONAME ABSENT ; QAbstractScrollAreaPrivate::QAbstractScrollAreaPrivate(void) + ??0QGraphicsViewPrivate@@QAE@XZ @ 12606 NONAME ABSENT ; QGraphicsViewPrivate::QGraphicsViewPrivate(void) + ??0QKeySequence@@QAE@ABVQString@@W4SequenceFormat@0@@Z @ 12607 NONAME ABSENT ; QKeySequence::QKeySequence(class QString const &, enum QKeySequence::SequenceFormat) + ??0QStaticText@@QAE@ABV0@@Z @ 12608 NONAME ABSENT ; QStaticText::QStaticText(class QStaticText const &) + ??0QStaticText@@QAE@ABVQString@@ABVQSizeF@@@Z @ 12609 NONAME ABSENT ; QStaticText::QStaticText(class QString const &, class QSizeF const &) + ??0QStaticText@@QAE@XZ @ 12610 NONAME ABSENT ; QStaticText::QStaticText(void) + ??0QStaticTextItem@@QAE@XZ @ 12611 NONAME ABSENT ; QStaticTextItem::QStaticTextItem(void) + ??0QZipReader@@QAE@ABVQString@@V?$QFlags@W4OpenModeFlag@QIODevice@@@@@Z @ 12612 NONAME ABSENT ; QZipReader::QZipReader(class QString const &, class QFlags) + ??0QZipReader@@QAE@PAVQIODevice@@@Z @ 12613 NONAME ABSENT ; QZipReader::QZipReader(class QIODevice *) + ??1FileInfo@QZipReader@@QAE@XZ @ 12614 NONAME ABSENT ; QZipReader::FileInfo::~FileInfo(void) + ??1QAbstractScrollAreaPrivate@@UAE@XZ @ 12615 NONAME ABSENT ; QAbstractScrollAreaPrivate::~QAbstractScrollAreaPrivate(void) + ??1QGraphicsViewPrivate@@UAE@XZ @ 12616 NONAME ABSENT ; QGraphicsViewPrivate::~QGraphicsViewPrivate(void) + ??1QStaticText@@QAE@XZ @ 12617 NONAME ABSENT ; QStaticText::~QStaticText(void) + ??1QStaticTextItem@@QAE@XZ @ 12618 NONAME ABSENT ; QStaticTextItem::~QStaticTextItem(void) + ??1QZipReader@@QAE@XZ @ 12619 NONAME ABSENT ; QZipReader::~QZipReader(void) + ??4FileInfo@QZipReader@@QAEAAU01@ABU01@@Z @ 12620 NONAME ABSENT ; struct QZipReader::FileInfo & QZipReader::FileInfo::operator=(struct QZipReader::FileInfo const &) + ??4QStaticText@@QAEAAV0@ABV0@@Z @ 12621 NONAME ABSENT ; class QStaticText & QStaticText::operator=(class QStaticText const &) + ??8QStaticText@@QBE_NABV0@@Z @ 12622 NONAME ABSENT ; bool QStaticText::operator==(class QStaticText const &) const + ??9QStaticText@@QBE_NABV0@@Z @ 12623 NONAME ABSENT ; bool QStaticText::operator!=(class QStaticText const &) const + ??_EQAbstractScrollAreaPrivate@@UAE@I@Z @ 12624 NONAME ABSENT ; QAbstractScrollAreaPrivate::~QAbstractScrollAreaPrivate(unsigned int) + ??_EQGraphicsViewPrivate@@UAE@I@Z @ 12625 NONAME ABSENT ; QGraphicsViewPrivate::~QGraphicsViewPrivate(unsigned int) + ?_q_hslide@QAbstractScrollAreaPrivate@@QAEXH@Z @ 12626 NONAME ABSENT ; void QAbstractScrollAreaPrivate::_q_hslide(int) + ?_q_setViewportCursor@QGraphicsViewPrivate@@QAEXABVQCursor@@@Z @ 12627 NONAME ABSENT ; void QGraphicsViewPrivate::_q_setViewportCursor(class QCursor const &) + ?_q_showOrHideScrollBars@QAbstractScrollAreaPrivate@@QAEXXZ @ 12628 NONAME ABSENT ; void QAbstractScrollAreaPrivate::_q_showOrHideScrollBars(void) + ?_q_unsetViewportCursor@QGraphicsViewPrivate@@QAEXXZ @ 12629 NONAME ABSENT ; void QGraphicsViewPrivate::_q_unsetViewportCursor(void) + ?_q_vslide@QAbstractScrollAreaPrivate@@QAEXH@Z @ 12630 NONAME ABSENT ; void QAbstractScrollAreaPrivate::_q_vslide(int) + ?allocStyleOptionsArray@QGraphicsViewPrivate@@QAEPAVQStyleOptionGraphicsItem@@H@Z @ 12631 NONAME ABSENT ; class QStyleOptionGraphicsItem * QGraphicsViewPrivate::allocStyleOptionsArray(int) + ?anchorAt@QPlainTextEdit@@QBE?AVQString@@ABVQPoint@@@Z @ 12632 NONAME ABSENT ; class QString QPlainTextEdit::anchorAt(class QPoint const &) const + ?assign@QKeySequence@@AAEHABVQString@@W4SequenceFormat@1@@Z @ 12633 NONAME ABSENT ; int QKeySequence::assign(class QString const &, enum QKeySequence::SequenceFormat) + ?autoFillBackground@QGraphicsWidget@@QBE_NXZ @ 12634 NONAME ABSENT ; bool QGraphicsWidget::autoFillBackground(void) const + ?canKeypadNavigate@QWidgetPrivate@@SA_NW4Orientation@Qt@@@Z @ 12635 NONAME ; bool QWidgetPrivate::canKeypadNavigate(enum Qt::Orientation) + ?centerView@QGraphicsViewPrivate@@QAEXW4ViewportAnchor@QGraphicsView@@@Z @ 12636 NONAME ABSENT ; void QGraphicsViewPrivate::centerView(enum QGraphicsView::ViewportAnchor) + ?clearUndoRedoStacks@QTextDocument@@QAEXW4Stacks@1@@Z @ 12637 NONAME ABSENT ; void QTextDocument::clearUndoRedoStacks(enum QTextDocument::Stacks) + ?close@QZipReader@@QAEXXZ @ 12638 NONAME ABSENT ; void QZipReader::close(void) + ?constBits@QImage@@QBEPBEXZ @ 12639 NONAME ABSENT ; unsigned char const * QImage::constBits(void) const + ?constScanLine@QImage@@QBEPBEH@Z @ 12640 NONAME ABSENT ; unsigned char const * QImage::constScanLine(int) const + ?contentsOffset@QAbstractScrollAreaPrivate@@UBE?AVQPoint@@XZ @ 12641 NONAME ABSENT ; class QPoint QAbstractScrollAreaPrivate::contentsOffset(void) const + ?convertFromImage@QPixmap@@QAE_NABVQImage@@V?$QFlags@W4ImageConversionFlag@Qt@@@@@Z @ 12642 NONAME ABSENT ; bool QPixmap::convertFromImage(class QImage const &, class QFlags) + ?count@QZipReader@@QBEHXZ @ 12643 NONAME ABSENT ; int QZipReader::count(void) const + ?create@Fragment@QPainter@@SA?AV12@ABVQPointF@@ABVQRectF@@MMMM@Z @ 12644 NONAME ABSENT ; class QPainter::Fragment QPainter::Fragment::create(class QPointF const &, class QRectF const &, float, float, float, float) + ?detach@QStaticText@@AAEXXZ @ 12645 NONAME ABSENT ; void QStaticText::detach(void) + ?directoryLoaded@QFileSystemModel@@IAEXABVQString@@@Z @ 12646 NONAME ABSENT ; void QFileSystemModel::directoryLoaded(class QString const &) + ?dispatchPendingUpdateRequests@QGraphicsViewPrivate@@QAEXXZ @ 12647 NONAME ABSENT ; void QGraphicsViewPrivate::dispatchPendingUpdateRequests(void) + ?drawPixmapFragments@QPaintEngineEx@@UAEXPBVFragment@QPainter@@HABVQPixmap@@V?$QFlags@W4FragmentHint@QPainter@@@@@Z @ 12648 NONAME ABSENT ; void QPaintEngineEx::drawPixmapFragments(class QPainter::Fragment const *, int, class QPixmap const &, class QFlags) + ?drawPixmapFragments@QPainter@@QAEXPBVFragment@1@HABVQPixmap@@V?$QFlags@W4FragmentHint@QPainter@@@@@Z @ 12649 NONAME ABSENT ; void QPainter::drawPixmapFragments(class QPainter::Fragment const *, int, class QPixmap const &, class QFlags) + ?drawStaticText@QPainter@@QAEXABVQPoint@@ABVQStaticText@@@Z @ 12650 NONAME ABSENT ; void QPainter::drawStaticText(class QPoint const &, class QStaticText const &) + ?drawStaticText@QPainter@@QAEXABVQPointF@@ABVQStaticText@@@Z @ 12651 NONAME ABSENT ; void QPainter::drawStaticText(class QPointF const &, class QStaticText const &) + ?drawStaticText@QPainter@@QAEXHHABVQStaticText@@@Z @ 12652 NONAME ABSENT ; void QPainter::drawStaticText(int, int, class QStaticText const &) + ?entryInfoAt@QZipReader@@QBE?AUFileInfo@1@H@Z @ 12653 NONAME ABSENT ; struct QZipReader::FileInfo QZipReader::entryInfoAt(int) const + ?exists@QZipReader@@QBE_NXZ @ 12654 NONAME ABSENT ; bool QZipReader::exists(void) const + ?extractAll@QZipReader@@QBE_NABVQString@@@Z @ 12655 NONAME ABSENT ; bool QZipReader::extractAll(class QString const &) const + ?fileData@QZipReader@@QBE?AVQByteArray@@ABVQString@@@Z @ 12656 NONAME ABSENT ; class QByteArray QZipReader::fileData(class QString const &) const + ?fileInfoList@QZipReader@@QBE?AV?$QList@UFileInfo@QZipReader@@@@XZ @ 12657 NONAME ABSENT ; class QList QZipReader::fileInfoList(void) const + ?findItems@QGraphicsViewPrivate@@QBE?AV?$QList@PAVQGraphicsItem@@@@ABVQRegion@@PA_NABVQTransform@@@Z @ 12658 NONAME ABSENT ; class QList QGraphicsViewPrivate::findItems(class QRegion const &, bool *, class QTransform const &) const + ?fixup@QIntValidator@@UBEXAAVQString@@@Z @ 12659 NONAME ABSENT ; void QIntValidator::fixup(class QString &) const + ?freeStyleOptionsArray@QGraphicsViewPrivate@@QAEXPAVQStyleOptionGraphicsItem@@@Z @ 12660 NONAME ABSENT ; void QGraphicsViewPrivate::freeStyleOptionsArray(class QStyleOptionGraphicsItem *) + ?getPixmapCursor@QApplicationPrivate@@QAE?AVQPixmap@@W4CursorShape@Qt@@@Z @ 12661 NONAME ABSENT ; class QPixmap QApplicationPrivate::getPixmapCursor(enum Qt::CursorShape) + ?getSubRange@QBezier@@QBE?AV1@MM@Z @ 12662 NONAME ABSENT ; class QBezier QBezier::getSubRange(float, float) const + ?hasSelectedText@QLabel@@QBE_NXZ @ 12663 NONAME ABSENT ; bool QLabel::hasSelectedText(void) const + ?horizontalScroll@QGraphicsViewPrivate@@QBE_JXZ @ 12664 NONAME ABSENT ; long long QGraphicsViewPrivate::horizontalScroll(void) const + ?inTabWidget@QWidgetPrivate@@SA_NPAVQWidget@@@Z @ 12665 NONAME ; bool QWidgetPrivate::inTabWidget(class QWidget *) + ?init@QAbstractScrollAreaPrivate@@QAEXXZ @ 12666 NONAME ABSENT ; void QAbstractScrollAreaPrivate::init(void) + ?isImageCached@QImagePixmapCleanupHooks@@SA_NABVQImage@@@Z @ 12667 NONAME ; bool QImagePixmapCleanupHooks::isImageCached(class QImage const &) + ?isPixmapCached@QImagePixmapCleanupHooks@@SA_NABVQPixmap@@@Z @ 12668 NONAME ; bool QImagePixmapCleanupHooks::isPixmapCached(class QPixmap const &) + ?isReadable@QZipReader@@QBE_NXZ @ 12669 NONAME ABSENT ; bool QZipReader::isReadable(void) const + ?isValidColor@QColor@@SA_NABVQString@@@Z @ 12670 NONAME ABSENT ; bool QColor::isValidColor(class QString const &) + ?layoutChildren@QAbstractScrollAreaPrivate@@QAEXXZ @ 12671 NONAME ABSENT ; void QAbstractScrollAreaPrivate::layoutChildren(void) + ?mapBy@QBezier@@QBE?AV1@ABVQTransform@@@Z @ 12672 NONAME ABSENT ; class QBezier QBezier::mapBy(class QTransform const &) const + ?mapRectFromScene@QGraphicsViewPrivate@@QBE?AVQRectF@@ABV2@@Z @ 12673 NONAME ABSENT ; class QRectF QGraphicsViewPrivate::mapRectFromScene(class QRectF const &) const + ?mapRectToScene@QGraphicsViewPrivate@@QBE?AVQRectF@@ABVQRect@@@Z @ 12674 NONAME ABSENT ; class QRectF QGraphicsViewPrivate::mapRectToScene(class QRect const &) const + ?mapToScene@QGraphicsViewPrivate@@QBE?AVQPointF@@ABV2@@Z @ 12675 NONAME ABSENT ; class QPointF QGraphicsViewPrivate::mapToScene(class QPointF const &) const + ?mapToScene@QGraphicsViewPrivate@@QBE?AVQRectF@@ABV2@@Z @ 12676 NONAME ABSENT ; class QRectF QGraphicsViewPrivate::mapToScene(class QRectF const &) const + ?mapToViewRect@QGraphicsViewPrivate@@QBE?AVQRect@@PBVQGraphicsItem@@ABVQRectF@@@Z @ 12677 NONAME ABSENT ; class QRect QGraphicsViewPrivate::mapToViewRect(class QGraphicsItem const *, class QRectF const &) const + ?mapToViewRegion@QGraphicsViewPrivate@@QBE?AVQRegion@@PBVQGraphicsItem@@ABVQRectF@@@Z @ 12678 NONAME ABSENT ; class QRegion QGraphicsViewPrivate::mapToViewRegion(class QGraphicsItem const *, class QRectF const &) const + ?maximumSize@QStaticText@@QBE?AVQSizeF@@XZ @ 12679 NONAME ABSENT ; class QSizeF QStaticText::maximumSize(void) const + ?mouseMoveEventHandler@QGraphicsViewPrivate@@QAEXPAVQMouseEvent@@@Z @ 12680 NONAME ABSENT ; void QGraphicsViewPrivate::mouseMoveEventHandler(class QMouseEvent *) + ?performanceHint@QStaticText@@QBE?AW4PerformanceHint@1@XZ @ 12681 NONAME ABSENT ; enum QStaticText::PerformanceHint QStaticText::performanceHint(void) const + ?populate@QTextureGlyphCache@@QAEXPAVQFontEngine@@HPBIPBUQFixedPoint@@@Z @ 12682 NONAME ABSENT ; void QTextureGlyphCache::populate(class QFontEngine *, int, unsigned int const *, struct QFixedPoint const *) + ?populateSceneDragDropEvent@QGraphicsViewPrivate@@QAEXPAVQGraphicsSceneDragDropEvent@@PAVQDropEvent@@@Z @ 12683 NONAME ABSENT ; void QGraphicsViewPrivate::populateSceneDragDropEvent(class QGraphicsSceneDragDropEvent *, class QDropEvent *) + ?positionInBlock@QTextCursor@@QBEHXZ @ 12684 NONAME ABSENT ; int QTextCursor::positionInBlock(void) const + ?prepare@QStaticText@@QAEXABVQTransform@@ABVQFont@@@Z @ 12685 NONAME ABSENT ; void QStaticText::prepare(class QTransform const &, class QFont const &) + ?processPendingUpdates@QGraphicsViewPrivate@@QAEXXZ @ 12686 NONAME ABSENT ; void QGraphicsViewPrivate::processPendingUpdates(void) + ?q_func@QAbstractScrollAreaPrivate@@AAEPAVQAbstractScrollArea@@XZ @ 12687 NONAME ABSENT ; class QAbstractScrollArea * QAbstractScrollAreaPrivate::q_func(void) + ?q_func@QAbstractScrollAreaPrivate@@ABEPBVQAbstractScrollArea@@XZ @ 12688 NONAME ABSENT ; class QAbstractScrollArea const * QAbstractScrollAreaPrivate::q_func(void) const + ?q_func@QGraphicsViewPrivate@@AAEPAVQGraphicsView@@XZ @ 12689 NONAME ABSENT ; class QGraphicsView * QGraphicsViewPrivate::q_func(void) + ?q_func@QGraphicsViewPrivate@@ABEPBVQGraphicsView@@XZ @ 12690 NONAME ABSENT ; class QGraphicsView const * QGraphicsViewPrivate::q_func(void) const + ?qt_draw_glyphs@@YAXPAVQPainter@@PBIPBVQPointF@@H@Z @ 12691 NONAME ABSENT ; void qt_draw_glyphs(class QPainter *, unsigned int const *, class QPointF const *, int) + ?recalculateContentSize@QGraphicsViewPrivate@@QAEXXZ @ 12692 NONAME ABSENT ; void QGraphicsViewPrivate::recalculateContentSize(void) + ?render@QWidgetPrivate@@QAEXPAVQPaintDevice@@ABVQPoint@@ABVQRegion@@V?$QFlags@W4RenderFlag@QWidget@@@@_N@Z @ 12693 NONAME ABSENT ; void QWidgetPrivate::render(class QPaintDevice *, class QPoint const &, class QRegion const &, class QFlags, bool) + ?replaceScrollBar@QAbstractScrollAreaPrivate@@QAEXPAVQScrollBar@@W4Orientation@Qt@@@Z @ 12694 NONAME ABSENT ; void QAbstractScrollAreaPrivate::replaceScrollBar(class QScrollBar *, enum Qt::Orientation) + ?replayLastMouseEvent@QGraphicsViewPrivate@@QAEXXZ @ 12695 NONAME ABSENT ; void QGraphicsViewPrivate::replayLastMouseEvent(void) + ?rubberBandRegion@QGraphicsViewPrivate@@QBE?AVQRegion@@PBVQWidget@@ABVQRect@@@Z @ 12696 NONAME ABSENT ; class QRegion QGraphicsViewPrivate::rubberBandRegion(class QWidget const *, class QRect const &) const + ?scrollBarPolicyChanged@QAbstractScrollAreaPrivate@@UAEXW4Orientation@Qt@@W4ScrollBarPolicy@3@@Z @ 12697 NONAME ABSENT ; void QAbstractScrollAreaPrivate::scrollBarPolicyChanged(enum Qt::Orientation, enum Qt::ScrollBarPolicy) + ?selectedText@QLabel@@QBE?AVQString@@XZ @ 12698 NONAME ABSENT ; class QString QLabel::selectedText(void) const + ?selectionStart@QLabel@@QBEHXZ @ 12699 NONAME ABSENT ; int QLabel::selectionStart(void) const + ?setAutoFillBackground@QGraphicsWidget@@QAEX_N@Z @ 12700 NONAME ABSENT ; void QGraphicsWidget::setAutoFillBackground(bool) + ?setColorFromString@QColor@@AAE_NABVQString@@@Z @ 12701 NONAME ABSENT ; bool QColor::setColorFromString(class QString const &) + ?setMaximumSize@QStaticText@@QAEXABVQSizeF@@@Z @ 12702 NONAME ABSENT ; void QStaticText::setMaximumSize(class QSizeF const &) + ?setPerformanceHint@QStaticText@@QAEXW4PerformanceHint@1@@Z @ 12703 NONAME ABSENT ; void QStaticText::setPerformanceHint(enum QStaticText::PerformanceHint) + ?setSelection@QLabel@@QAEXHH@Z @ 12704 NONAME ABSENT ; void QLabel::setSelection(int, int) + ?setText@QStaticText@@QAEXABVQString@@@Z @ 12705 NONAME ABSENT ; void QStaticText::setText(class QString const &) + ?setTextFormat@QStaticText@@QAEXW4TextFormat@Qt@@@Z @ 12706 NONAME ABSENT ; void QStaticText::setTextFormat(enum Qt::TextFormat) + ?setUserData@QStaticTextItem@@QAEXPAVQStaticTextUserData@@@Z @ 12707 NONAME ABSENT ; void QStaticTextItem::setUserData(class QStaticTextUserData *) + ?size@QStaticText@@QBE?AVQSizeF@@XZ @ 12708 NONAME ABSENT ; class QSizeF QStaticText::size(void) const + ?status@QZipReader@@QBE?AW4Status@1@XZ @ 12709 NONAME ABSENT ; enum QZipReader::Status QZipReader::status(void) const + ?storeDragDropEvent@QGraphicsViewPrivate@@QAEXPBVQGraphicsSceneDragDropEvent@@@Z @ 12710 NONAME ABSENT ; void QGraphicsViewPrivate::storeDragDropEvent(class QGraphicsSceneDragDropEvent const *) + ?storeMouseEvent@QGraphicsViewPrivate@@QAEXPAVQMouseEvent@@@Z @ 12711 NONAME ABSENT ; void QGraphicsViewPrivate::storeMouseEvent(class QMouseEvent *) + ?text@QStaticText@@QBE?AVQString@@XZ @ 12712 NONAME ABSENT ; class QString QStaticText::text(void) const + ?textFormat@QStaticText@@QBE?AW4TextFormat@Qt@@XZ @ 12713 NONAME ABSENT ; enum Qt::TextFormat QStaticText::textFormat(void) const + ?translateTouchEvent@QGraphicsViewPrivate@@SAXPAV1@PAVQTouchEvent@@@Z @ 12714 NONAME ABSENT ; void QGraphicsViewPrivate::translateTouchEvent(class QGraphicsViewPrivate *, class QTouchEvent *) + ?updateAll@QGraphicsViewPrivate@@QAEXXZ @ 12715 NONAME ABSENT ; void QGraphicsViewPrivate::updateAll(void) + ?updateInputMethodSensitivity@QGraphicsViewPrivate@@QAEXXZ @ 12716 NONAME ABSENT ; void QGraphicsViewPrivate::updateInputMethodSensitivity(void) + ?updateLastCenterPoint@QGraphicsViewPrivate@@QAEXXZ @ 12717 NONAME ABSENT ; void QGraphicsViewPrivate::updateLastCenterPoint(void) + ?updateRect@QGraphicsViewPrivate@@QAE_NABVQRect@@@Z @ 12718 NONAME ABSENT ; bool QGraphicsViewPrivate::updateRect(class QRect const &) + ?updateRegion@QGraphicsViewPrivate@@QAE_NABVQRegion@@@Z @ 12719 NONAME ABSENT ; bool QGraphicsViewPrivate::updateRegion(class QRegion const &) + ?updateScroll@QGraphicsViewPrivate@@QAEXXZ @ 12720 NONAME ABSENT ; void QGraphicsViewPrivate::updateScroll(void) + ?verticalScroll@QGraphicsViewPrivate@@QBE_JXZ @ 12721 NONAME ABSENT ; long long QGraphicsViewPrivate::verticalScroll(void) const + ?viewportEvent@QAbstractScrollAreaPrivate@@QAE_NPAVQEvent@@@Z @ 12722 NONAME ABSENT ; bool QAbstractScrollAreaPrivate::viewportEvent(class QEvent *) + ?visibilityChanged@QToolBar@@IAEX_N@Z @ 12723 NONAME ABSENT ; void QToolBar::visibilityChanged(bool) + ??0FileInfo@QZipReader@@QAE@ABU01@@Z @ 12724 NONAME ABSENT ; QZipReader::FileInfo::FileInfo(struct QZipReader::FileInfo const &) + ??0QStaticText@@QAE@ABVQString@@@Z @ 12725 NONAME ABSENT ; QStaticText::QStaticText(class QString const &) + ?append@QGraphicsItemPrivate@@SAXPAV?$QDeclarativeListProperty@VQGraphicsObject@@@@PAVQGraphicsObject@@@Z @ 12726 NONAME ABSENT ; void QGraphicsItemPrivate::append(class QDeclarativeListProperty *, class QGraphicsObject *) + ?bitPlaneCount@QImage@@QBEHXZ @ 12727 NONAME ABSENT ; int QImage::bitPlaneCount(void) const + ?childrenChanged@QGraphicsObject@@IAEXXZ @ 12728 NONAME ABSENT ; void QGraphicsObject::childrenChanged(void) + ?childrenList@QGraphicsItemPrivate@@QAE?AV?$QDeclarativeListProperty@VQGraphicsObject@@@@XZ @ 12729 NONAME ABSENT ; class QDeclarativeListProperty QGraphicsItemPrivate::childrenList(void) + ?clearFocusHelper@QGraphicsItemPrivate@@QAEX_N@Z @ 12730 NONAME ; void QGraphicsItemPrivate::clearFocusHelper(bool) + ?commandDescription@QPaintBuffer@@QBE?AVQString@@H@Z @ 12731 NONAME ABSENT ; class QString QPaintBuffer::commandDescription(int) const + ?create@PixmapFragment@QPainter@@SA?AV12@ABVQPointF@@ABVQRectF@@MMMM@Z @ 12732 NONAME ABSENT ; class QPainter::PixmapFragment QPainter::PixmapFragment::create(class QPointF const &, class QRectF const &, float, float, float, float) + ?device@QZipReader@@QBEPAVQIODevice@@XZ @ 12733 NONAME ABSENT ; class QIODevice * QZipReader::device(void) const + ?drawPixmapFragments@QPaintEngineEx@@UAEXPBVPixmapFragment@QPainter@@HABVQPixmap@@V?$QFlags@W4PixmapFragmentHint@QPainter@@@@@Z @ 12734 NONAME ABSENT ; void QPaintEngineEx::drawPixmapFragments(class QPainter::PixmapFragment const *, int, class QPixmap const &, class QFlags) + ?drawPixmapFragments@QPainter@@QAEXPBVPixmapFragment@1@HABVQPixmap@@V?$QFlags@W4PixmapFragmentHint@QPainter@@@@@Z @ 12735 NONAME ABSENT ; void QPainter::drawPixmapFragments(class QPainter::PixmapFragment const *, int, class QPixmap const &, class QFlags) + ?frameEndIndex@QPaintBuffer@@QBEHH@Z @ 12736 NONAME ABSENT ; int QPaintBuffer::frameEndIndex(int) const + ?frameStartIndex@QPaintBuffer@@QBEHH@Z @ 12737 NONAME ABSENT ; int QPaintBuffer::frameStartIndex(int) const + ?geometryChanged@QGraphicsWidget@@IAEXXZ @ 12738 NONAME ABSENT ; void QGraphicsWidget::geometryChanged(void) + ?getGlyphBearings@QFontEngine@@UAEXIPAM0@Z @ 12739 NONAME ; void QFontEngine::getGlyphBearings(unsigned int, float *, float *) + ?height@QGraphicsItemPrivate@@UBEMXZ @ 12740 NONAME ABSENT ; float QGraphicsItemPrivate::height(void) const + ?heightChanged@QGraphicsObject@@IAEXXZ @ 12741 NONAME ABSENT ; void QGraphicsObject::heightChanged(void) + ?horizontalAdvance@QTextLine@@QBEMXZ @ 12742 NONAME ABSENT ; float QTextLine::horizontalAdvance(void) const + ?isValid@FileInfo@QZipReader@@QBE_NXZ @ 12743 NONAME ABSENT ; bool QZipReader::FileInfo::isValid(void) const + ?layoutChanged@QGraphicsWidget@@IAEXXZ @ 12744 NONAME ABSENT ; void QGraphicsWidget::layoutChanged(void) + ?pageAdded@QWizard@@IAEXH@Z @ 12745 NONAME ABSENT ; void QWizard::pageAdded(int) + ?pageRemoved@QWizard@@IAEXH@Z @ 12746 NONAME ABSENT ; void QWizard::pageRemoved(int) + ?paste@QLineControl@@QAEXW4Mode@QClipboard@@@Z @ 12747 NONAME ABSENT ; void QLineControl::paste(enum QClipboard::Mode) + ?paste@QTextControl@@QAEXW4Mode@QClipboard@@@Z @ 12748 NONAME ABSENT ; void QTextControl::paste(enum QClipboard::Mode) + ?placeholderText@QLineEdit@@QBE?AVQString@@XZ @ 12749 NONAME ABSENT ; class QString QLineEdit::placeholderText(void) const + ?prependGraphicsTransform@QGraphicsItemPrivate@@QAEXPAVQGraphicsTransform@@@Z @ 12750 NONAME ABSENT ; void QGraphicsItemPrivate::prependGraphicsTransform(class QGraphicsTransform *) + ?processCommands@QPaintBuffer@@QBEHPAVQPainter@@HH@Z @ 12751 NONAME ABSENT ; int QPaintBuffer::processCommands(class QPainter *, int, int) const + ?processCommands@QPainterReplayer@@QAEXABVQPaintBuffer@@PAVQPainter@@HH@Z @ 12752 NONAME ABSENT ; void QPainterReplayer::processCommands(class QPaintBuffer const &, class QPainter *, int, int) + ?resetHeight@QGraphicsItemPrivate@@UAEXXZ @ 12753 NONAME ABSENT ; void QGraphicsItemPrivate::resetHeight(void) + ?resetWidth@QGraphicsItemPrivate@@UAEXXZ @ 12754 NONAME ABSENT ; void QGraphicsItemPrivate::resetWidth(void) + ?resizeEvent@QSplitterHandle@@MAEXPAVQResizeEvent@@@Z @ 12755 NONAME ABSENT ; void QSplitterHandle::resizeEvent(class QResizeEvent *) + ?setFocusHelper@QGraphicsItemPrivate@@QAEXW4FocusReason@Qt@@_N1@Z @ 12756 NONAME ; void QGraphicsItemPrivate::setFocusHelper(enum Qt::FocusReason, bool, bool) + ?setHeight@QGraphicsItemPrivate@@UAEXM@Z @ 12757 NONAME ABSENT ; void QGraphicsItemPrivate::setHeight(float) + ?setPlaceholderText@QLineEdit@@QAEXABVQString@@@Z @ 12758 NONAME ABSENT ; void QLineEdit::setPlaceholderText(class QString const &) + ?setSideWidget@QWizard@@QAEXPAVQWidget@@@Z @ 12759 NONAME ABSENT ; void QWizard::setSideWidget(class QWidget *) + ?setTextWidth@QStaticText@@QAEXM@Z @ 12760 NONAME ABSENT ; void QStaticText::setTextWidth(float) + ?setWidth@QGraphicsItemPrivate@@UAEXM@Z @ 12761 NONAME ABSENT ; void QGraphicsItemPrivate::setWidth(float) + ?sideWidget@QWizard@@QBEPAVQWidget@@XZ @ 12762 NONAME ABSENT ; class QWidget * QWizard::sideWidget(void) const + ?textWidth@QStaticText@@QBEMXZ @ 12763 NONAME ABSENT ; float QStaticText::textWidth(void) const + ?updateDisplayText@QLineControl@@AAEX_N@Z @ 12764 NONAME ; void QLineControl::updateDisplayText(bool) + ?updateMicroFocus@QGraphicsItem@@IAEXXZ @ 12765 NONAME ABSENT ; void QGraphicsItem::updateMicroFocus(void) + ?updateMicroFocus@QGraphicsObject@@IAEXXZ @ 12766 NONAME ABSENT ; void QGraphicsObject::updateMicroFocus(void) + ?width@QGraphicsItemPrivate@@UBEMXZ @ 12767 NONAME ABSENT ; float QGraphicsItemPrivate::width(void) const + ?widthChanged@QGraphicsObject@@IAEXXZ @ 12768 NONAME ABSENT ; void QGraphicsObject::widthChanged(void) + ?children_append@QGraphicsItemPrivate@@SAXPAV?$QDeclarativeListProperty@VQGraphicsObject@@@@PAVQGraphicsObject@@@Z @ 12769 NONAME ABSENT ; void QGraphicsItemPrivate::children_append(class QDeclarativeListProperty *, class QGraphicsObject *) + ?children_at@QGraphicsItemPrivate@@SAPAVQGraphicsObject@@PAV?$QDeclarativeListProperty@VQGraphicsObject@@@@H@Z @ 12770 NONAME ABSENT ; class QGraphicsObject * QGraphicsItemPrivate::children_at(class QDeclarativeListProperty *, int) + ?children_count@QGraphicsItemPrivate@@SAHPAV?$QDeclarativeListProperty@VQGraphicsObject@@@@@Z @ 12771 NONAME ABSENT ; int QGraphicsItemPrivate::children_count(class QDeclarativeListProperty *) + ?display@QEglContext@@QAEHXZ @ 12772 NONAME ABSENT ; int QEglContext::display(void) + ?defaultConfig@QEgl@@YAHHW4API@1@V?$QFlags@W4ConfigOption@QEgl@@@@@Z @ 12773 NONAME ABSENT ; int QEgl::defaultConfig(int, enum QEgl::API, class QFlags) + ?configAttrib@QEglContext@@QBEHH@Z @ 12774 NONAME ABSENT ; int QEglContext::configAttrib(int) const + ?error@QEgl@@YAHXZ @ 12775 NONAME ABSENT ; int QEgl::error(void) + ?errorString@QEgl@@YA?AVQString@@XZ @ 12776 NONAME ABSENT ; class QString QEgl::errorString(void) + ?configProperties@QEglContext@@QBE?AVQEglProperties@@XZ @ 12777 NONAME ABSENT ; class QEglProperties QEglContext::configProperties(void) const + ?extensions@QEgl@@YA?AVQString@@XZ @ 12778 NONAME ABSENT ; class QString QEgl::extensions(void) + ?nativePixmap@QEgl@@YAPAXPAVQPixmap@@@Z @ 12779 NONAME ABSENT ; void * QEgl::nativePixmap(class QPixmap *) + ?display@QEgl@@YAHXZ @ 12780 NONAME ABSENT ; int QEgl::display(void) + ?eglCreateImageKHR@QEgl@@YAHHHHHPBH@Z @ 12781 NONAME ABSENT ; int QEgl::eglCreateImageKHR(int, int, int, int, int const *) + ?hasExtension@QEgl@@YA_NPBD@Z @ 12782 NONAME ABSENT ; bool QEgl::hasExtension(char const *) + ?destroyContext@QEglContext@@QAEXXZ @ 12783 NONAME ; void QEglContext::destroyContext(void) + ?nativeWindow@QEgl@@YAPAXPAVQWidget@@@Z @ 12784 NONAME ABSENT ; void * QEgl::nativeWindow(class QWidget *) + ?errorString@QEgl@@YA?AVQString@@H@Z @ 12785 NONAME ABSENT ; class QString QEgl::errorString(int) + ?chooseConfig@QEgl@@YAHPBVQEglProperties@@W4PixelFormatMatch@1@@Z @ 12786 NONAME ABSENT ; int QEgl::chooseConfig(class QEglProperties const *, enum QEgl::PixelFormatMatch) + ?eglDestroyImageKHR@QEgl@@YAHHH@Z @ 12787 NONAME ABSENT ; int QEgl::eglDestroyImageKHR(int, int) + ?isEmpty@QItemSelectionRange@@QBE_NXZ @ 12788 NONAME ABSENT ; bool QItemSelectionRange::isEmpty(void) const + ?clearError@QEgl@@YAXXZ @ 12789 NONAME ABSENT ; void QEgl::clearError(void) + ?nativeDisplay@QEgl@@YAHXZ @ 12790 NONAME ABSENT ; int QEgl::nativeDisplay(void) + ?dumpAllConfigs@QEgl@@YAXXZ @ 12791 NONAME ABSENT ; void QEgl::dumpAllConfigs(void) + ?setDeviceType@QEglProperties@@QAEXH@Z @ 12792 NONAME ABSENT ; void QEglProperties::setDeviceType(int) + ?glyphPadding@QTextureGlyphCache@@UBEHXZ @ 12793 NONAME ABSENT ; int QTextureGlyphCache::glyphPadding(void) const + ?createSurface@QEgl@@YAHPAVQPaintDevice@@HPBVQEglProperties@@@Z @ 12794 NONAME ABSENT ; int QEgl::createSurface(class QPaintDevice *, int, class QEglProperties const *) + ?display@QEglContext@@SAHXZ @ 12795 NONAME ; int QEglContext::display(void) + ?nativeDisplay@QEglContext@@CAHXZ @ 12796 NONAME ; int QEglContext::nativeDisplay(void) + ?dpy@QEglContext@@0HA @ 12797 NONAME ; int QEglContext::dpy diff --git a/src/s60installs/eabi/QtGuiu.def b/src/s60installs/eabi/QtGuiu.def index ac70e70..93fce62 100644 --- a/src/s60installs/eabi/QtGuiu.def +++ b/src/s60installs/eabi/QtGuiu.def @@ -11741,47 +11741,47 @@ EXPORTS _ZN11QVectorPathD2Ev @ 11740 NONAME _ZNK11QVectorPath12addCacheDataEP14QPaintEngineExPvPFvS1_S2_E @ 11741 NONAME _ZNK20QGraphicsItemPrivate20discardUpdateRequestEbbb @ 11742 NONAME - _ZN11QEglContext10extensionsEv @ 11743 NONAME ABSENT + _ZN11QEglContext10extensionsEv @ 11743 NONAME _ZN11QEglContext10getDisplayEP12QPaintDevice @ 11744 NONAME ABSENT - _ZN11QEglContext10waitClientEv @ 11745 NONAME ABSENT - _ZN11QEglContext10waitNativeEv @ 11746 NONAME ABSENT - _ZN11QEglContext11doneCurrentEv @ 11747 NONAME ABSENT - _ZN11QEglContext11errorStringEi @ 11748 NONAME ABSENT - _ZN11QEglContext11makeCurrentEi @ 11749 NONAME ABSENT + _ZN11QEglContext10waitClientEv @ 11745 NONAME + _ZN11QEglContext10waitNativeEv @ 11746 NONAME + _ZN11QEglContext11doneCurrentEv @ 11747 NONAME + _ZN11QEglContext11errorStringEi @ 11748 NONAME + _ZN11QEglContext11makeCurrentEi @ 11749 NONAME _ZN11QEglContext11openDisplayEP12QPaintDevice @ 11750 NONAME ABSENT - _ZN11QEglContext11swapBuffersEi @ 11751 NONAME ABSENT - _ZN11QEglContext12chooseConfigERK14QEglPropertiesN4QEgl16PixelFormatMatchE @ 11752 NONAME ABSENT - _ZN11QEglContext12hasExtensionEPKc @ 11753 NONAME ABSENT - _ZN11QEglContext13createContextEPS_PK14QEglProperties @ 11754 NONAME ABSENT - _ZN11QEglContext13createSurfaceEP12QPaintDevicePK14QEglProperties @ 11755 NONAME ABSENT - _ZN11QEglContext14currentContextEN4QEgl3APIE @ 11756 NONAME ABSENT + _ZN11QEglContext11swapBuffersEi @ 11751 NONAME + _ZN11QEglContext12chooseConfigERK14QEglPropertiesN4QEgl16PixelFormatMatchE @ 11752 NONAME + _ZN11QEglContext12hasExtensionEPKc @ 11753 NONAME + _ZN11QEglContext13createContextEPS_PK14QEglProperties @ 11754 NONAME + _ZN11QEglContext13createSurfaceEP12QPaintDevicePK14QEglProperties @ 11755 NONAME + _ZN11QEglContext14currentContextEN4QEgl3APIE @ 11756 NONAME _ZN11QEglContext14defaultDisplayEP12QPaintDevice @ 11757 NONAME ABSENT - _ZN11QEglContext14destroySurfaceEi @ 11758 NONAME ABSENT - _ZN11QEglContext14dumpAllConfigsEv @ 11759 NONAME ABSENT - _ZN11QEglContext15lazyDoneCurrentEv @ 11760 NONAME ABSENT - _ZN11QEglContext17setCurrentContextEN4QEgl3APIEPS_ @ 11761 NONAME ABSENT + _ZN11QEglContext14destroySurfaceEi @ 11758 NONAME + _ZN11QEglContext14dumpAllConfigsEv @ 11759 NONAME + _ZN11QEglContext15lazyDoneCurrentEv @ 11760 NONAME + _ZN11QEglContext17setCurrentContextEN4QEgl3APIEPS_ @ 11761 NONAME _ZN11QEglContext7destroyEv @ 11762 NONAME ABSENT - _ZN11QEglContextC1Ev @ 11763 NONAME ABSENT - _ZN11QEglContextC2Ev @ 11764 NONAME ABSENT - _ZN11QEglContextD1Ev @ 11765 NONAME ABSENT - _ZN11QEglContextD2Ev @ 11766 NONAME ABSENT - _ZN14QEglProperties11removeValueEi @ 11767 NONAME ABSENT - _ZN14QEglProperties14dumpAllConfigsEv @ 11768 NONAME ABSENT - _ZN14QEglProperties14setPixelFormatEN6QImage6FormatE @ 11769 NONAME ABSENT - _ZN14QEglProperties17setRenderableTypeEN4QEgl3APIE @ 11770 NONAME ABSENT - _ZN14QEglProperties19reduceConfigurationEv @ 11771 NONAME ABSENT - _ZN14QEglProperties20setPaintDeviceFormatEP12QPaintDevice @ 11772 NONAME ABSENT - _ZN14QEglProperties8setValueEii @ 11773 NONAME ABSENT - _ZN14QEglPropertiesC1Ei @ 11774 NONAME ABSENT - _ZN14QEglPropertiesC1Ev @ 11775 NONAME ABSENT - _ZN14QEglPropertiesC2Ei @ 11776 NONAME ABSENT - _ZN14QEglPropertiesC2Ev @ 11777 NONAME ABSENT - _ZNK11QEglContext12configAttribEiPi @ 11778 NONAME ABSENT - _ZNK11QEglContext16configPropertiesEi @ 11779 NONAME ABSENT - _ZNK11QEglContext7isValidEv @ 11780 NONAME ABSENT - _ZNK11QEglContext9isCurrentEv @ 11781 NONAME ABSENT - _ZNK14QEglProperties5valueEi @ 11782 NONAME ABSENT - _ZNK14QEglProperties8toStringEv @ 11783 NONAME ABSENT + _ZN11QEglContextC1Ev @ 11763 NONAME + _ZN11QEglContextC2Ev @ 11764 NONAME + _ZN11QEglContextD1Ev @ 11765 NONAME + _ZN11QEglContextD2Ev @ 11766 NONAME + _ZN14QEglProperties11removeValueEi @ 11767 NONAME + _ZN14QEglProperties14dumpAllConfigsEv @ 11768 NONAME + _ZN14QEglProperties14setPixelFormatEN6QImage6FormatE @ 11769 NONAME + _ZN14QEglProperties17setRenderableTypeEN4QEgl3APIE @ 11770 NONAME + _ZN14QEglProperties19reduceConfigurationEv @ 11771 NONAME + _ZN14QEglProperties20setPaintDeviceFormatEP12QPaintDevice @ 11772 NONAME + _ZN14QEglProperties8setValueEii @ 11773 NONAME + _ZN14QEglPropertiesC1Ei @ 11774 NONAME + _ZN14QEglPropertiesC1Ev @ 11775 NONAME + _ZN14QEglPropertiesC2Ei @ 11776 NONAME + _ZN14QEglPropertiesC2Ev @ 11777 NONAME + _ZNK11QEglContext12configAttribEiPi @ 11778 NONAME + _ZNK11QEglContext16configPropertiesEi @ 11779 NONAME + _ZNK11QEglContext7isValidEv @ 11780 NONAME + _ZNK11QEglContext9isCurrentEv @ 11781 NONAME + _ZNK14QEglProperties5valueEi @ 11782 NONAME + _ZNK14QEglProperties8toStringEv @ 11783 NONAME _ZNK11QFontEngine10glyphCacheEPvN21QFontEngineGlyphCache4TypeERK10QTransform @ 11784 NONAME _ZNK20QGraphicsItemPrivate21effectiveBoundingRectERK6QRectF @ 11785 NONAME _Z12qt_blurImageP8QPainterR6QImagefbbi @ 11786 NONAME @@ -11806,16 +11806,195 @@ EXPORTS _ZN9QS60Style10timerEventEP11QTimerEvent @ 11805 NONAME _ZN9QS60Style11eventFilterEP7QObjectP6QEvent @ 11806 NONAME _ZN13QFontDatabase25removeAllApplicationFontsEv @ 11807 NONAME - _ZN11QEglContext13nativeDisplayEv @ 11808 NONAME ABSENT - _ZN11QEglContext14destroyContextEv @ 11809 NONAME ABSENT - _ZN11QEglContext3dpyE @ 11810 NONAME DATA 4 ABSENT - _ZN11QEglContext7displayEv @ 11811 NONAME ABSENT - _ZN11QFontEngine16getGlyphBearingsEjPfS0_ @ 11812 NONAME - _ZN12QLineControl17updateDisplayTextEb @ 11813 NONAME - _ZN14QWidgetPrivate11inTabWidgetEP7QWidget @ 11814 NONAME - _ZN14QWidgetPrivate17canKeypadNavigateEN2Qt11OrientationE @ 11815 NONAME - _ZN20QGraphicsItemPrivate14setFocusHelperEN2Qt11FocusReasonEbb @ 11816 NONAME - _ZN20QGraphicsItemPrivate16clearFocusHelperEb @ 11817 NONAME - _ZN24QImagePixmapCleanupHooks13isImageCachedERK6QImage @ 11818 NONAME - _ZN24QImagePixmapCleanupHooks14isPixmapCachedERK7QPixmap @ 11819 NONAME + _ZN10QZipReader5closeEv @ 11808 NONAME ABSENT + _ZN10QZipReader8FileInfoC1ERKS0_ @ 11809 NONAME ABSENT + _ZN10QZipReader8FileInfoC1Ev @ 11810 NONAME ABSENT + _ZN10QZipReader8FileInfoC2ERKS0_ @ 11811 NONAME ABSENT + _ZN10QZipReader8FileInfoC2Ev @ 11812 NONAME ABSENT + _ZN10QZipReader8FileInfoD1Ev @ 11813 NONAME ABSENT + _ZN10QZipReader8FileInfoD2Ev @ 11814 NONAME ABSENT + _ZN10QZipReader8FileInfoaSERKS0_ @ 11815 NONAME ABSENT + _ZN10QZipReaderC1EP9QIODevice @ 11816 NONAME ABSENT + _ZN10QZipReaderC1ERK7QString6QFlagsIN9QIODevice12OpenModeFlagEE @ 11817 NONAME ABSENT + _ZN10QZipReaderC2EP9QIODevice @ 11818 NONAME ABSENT + _ZN10QZipReaderC2ERK7QString6QFlagsIN9QIODevice12OpenModeFlagEE @ 11819 NONAME ABSENT + _ZN10QZipReaderD1Ev @ 11820 NONAME ABSENT + _ZN10QZipReaderD2Ev @ 11821 NONAME ABSENT + _ZN11QStaticText13setTextFormatEN2Qt10TextFormatE @ 11822 NONAME ABSENT + _ZN11QStaticText14setMaximumSizeERK6QSizeF @ 11823 NONAME ABSENT + _ZN11QStaticText18setPerformanceHintENS_15PerformanceHintE @ 11824 NONAME ABSENT + _ZN11QStaticText6detachEv @ 11825 NONAME ABSENT + _ZN11QStaticText7prepareERK10QTransformRK5QFont @ 11826 NONAME ABSENT + _ZN11QStaticText7setTextERK7QString @ 11827 NONAME ABSENT + _ZN11QStaticTextC1ERK7QString @ 11828 NONAME ABSENT + _ZN11QStaticTextC1ERKS_ @ 11829 NONAME ABSENT + _ZN11QStaticTextC1Ev @ 11830 NONAME ABSENT + _ZN11QStaticTextC2ERK7QString @ 11831 NONAME ABSENT + _ZN11QStaticTextC2ERKS_ @ 11832 NONAME ABSENT + _ZN11QStaticTextC2Ev @ 11833 NONAME ABSENT + _ZN11QStaticTextD1Ev @ 11834 NONAME ABSENT + _ZN11QStaticTextD2Ev @ 11835 NONAME ABSENT + _ZN11QStaticTextaSERKS_ @ 11836 NONAME ABSENT + _ZN12QKeySequence6assignERK7QStringNS_14SequenceFormatE @ 11837 NONAME ABSENT + _ZN12QKeySequenceC1ERK7QStringNS_14SequenceFormatE @ 11838 NONAME ABSENT + _ZN12QKeySequenceC2ERK7QStringNS_14SequenceFormatE @ 11839 NONAME ABSENT + _ZN13QTextDocument19clearUndoRedoStacksENS_6StacksE @ 11840 NONAME ABSENT + _ZN14QPaintEngineEx19drawPixmapFragmentsEPKN8QPainter8FragmentEiRK7QPixmap6QFlagsINS0_12FragmentHintEE @ 11841 NONAME ABSENT + _ZN14QWidgetPrivate11inTabWidgetEP7QWidget @ 11842 NONAME + _ZN14QWidgetPrivate17canKeypadNavigateEN2Qt11OrientationE @ 11843 NONAME + _ZN14QWidgetPrivate6renderEP12QPaintDeviceRK6QPointRK7QRegion6QFlagsIN7QWidget10RenderFlagEEb @ 11844 NONAME ABSENT + _ZN15QGraphicsWidget21setAutoFillBackgroundEb @ 11845 NONAME ABSENT + _ZN16QFileSystemModel15directoryLoadedERK7QString @ 11846 NONAME ABSENT + _ZN18QTextureGlyphCache8populateEP11QFontEngineiPKjPK11QFixedPoint @ 11847 NONAME ABSENT + _ZN19QApplicationPrivate15getPixmapCursorEN2Qt11CursorShapeE @ 11848 NONAME ABSENT + _ZN20QGraphicsViewPrivate10centerViewEN13QGraphicsView14ViewportAnchorE @ 11849 NONAME ABSENT + _ZN20QGraphicsViewPrivate10updateRectERK5QRect @ 11850 NONAME ABSENT + _ZN20QGraphicsViewPrivate12updateRegionERK7QRegion @ 11851 NONAME ABSENT + _ZN20QGraphicsViewPrivate12updateScrollEv @ 11852 NONAME ABSENT + _ZN20QGraphicsViewPrivate15storeMouseEventEP11QMouseEvent @ 11853 NONAME ABSENT + _ZN20QGraphicsViewPrivate18storeDragDropEventEPK27QGraphicsSceneDragDropEvent @ 11854 NONAME ABSENT + _ZN20QGraphicsViewPrivate19translateTouchEventEPS_P11QTouchEvent @ 11855 NONAME ABSENT + _ZN20QGraphicsViewPrivate20_q_setViewportCursorERK7QCursor @ 11856 NONAME ABSENT + _ZN20QGraphicsViewPrivate20replayLastMouseEventEv @ 11857 NONAME ABSENT + _ZN20QGraphicsViewPrivate21freeStyleOptionsArrayEP24QStyleOptionGraphicsItem @ 11858 NONAME ABSENT + _ZN20QGraphicsViewPrivate21mouseMoveEventHandlerEP11QMouseEvent @ 11859 NONAME ABSENT + _ZN20QGraphicsViewPrivate21processPendingUpdatesEv @ 11860 NONAME ABSENT + _ZN20QGraphicsViewPrivate21updateLastCenterPointEv @ 11861 NONAME ABSENT + _ZN20QGraphicsViewPrivate22_q_unsetViewportCursorEv @ 11862 NONAME ABSENT + _ZN20QGraphicsViewPrivate22allocStyleOptionsArrayEi @ 11863 NONAME ABSENT + _ZN20QGraphicsViewPrivate22recalculateContentSizeEv @ 11864 NONAME ABSENT + _ZN20QGraphicsViewPrivate26populateSceneDragDropEventEP27QGraphicsSceneDragDropEventP10QDropEvent @ 11865 NONAME ABSENT + _ZN20QGraphicsViewPrivate28updateInputMethodSensitivityEv @ 11866 NONAME ABSENT + _ZN20QGraphicsViewPrivateC1Ev @ 11867 NONAME ABSENT + _ZN20QGraphicsViewPrivateC2Ev @ 11868 NONAME ABSENT + _ZN24QImagePixmapCleanupHooks13isImageCachedERK6QImage @ 11869 NONAME + _ZN24QImagePixmapCleanupHooks14isPixmapCachedERK7QPixmap @ 11870 NONAME + _ZN26QAbstractScrollAreaPrivate14layoutChildrenEv @ 11871 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivate16replaceScrollBarEP10QScrollBarN2Qt11OrientationE @ 11872 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivate23_q_showOrHideScrollBarsEv @ 11873 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivate4initEv @ 11874 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivate9_q_hslideEi @ 11875 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivate9_q_vslideEi @ 11876 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivateC1Ev @ 11877 NONAME ABSENT + _ZN26QAbstractScrollAreaPrivateC2Ev @ 11878 NONAME ABSENT + _ZN6QColor12isValidColorERK7QString @ 11879 NONAME ABSENT + _ZN6QColor18setColorFromStringERK7QString @ 11880 NONAME ABSENT + _ZN6QLabel12setSelectionEii @ 11881 NONAME ABSENT + _ZN7QPixmap16convertFromImageERK6QImage6QFlagsIN2Qt19ImageConversionFlagEE @ 11882 NONAME ABSENT + _ZN8QPainter14drawStaticTextERK7QPointFRK11QStaticText @ 11883 NONAME ABSENT + _ZN8QPainter19drawPixmapFragmentsEPKNS_8FragmentEiRK7QPixmap6QFlagsINS_12FragmentHintEE @ 11884 NONAME ABSENT + _ZN8QPainter8Fragment6createERK7QPointFRK6QRectFffff @ 11885 NONAME ABSENT + _ZN8QToolBar17visibilityChangedEb @ 11886 NONAME ABSENT + _ZNK10QZipReader10extractAllERK7QString @ 11887 NONAME ABSENT + _ZNK10QZipReader10isReadableEv @ 11888 NONAME ABSENT + _ZNK10QZipReader11entryInfoAtEi @ 11889 NONAME ABSENT + _ZNK10QZipReader12fileInfoListEv @ 11890 NONAME ABSENT + _ZNK10QZipReader5countEv @ 11891 NONAME ABSENT + _ZNK10QZipReader6existsEv @ 11892 NONAME ABSENT + _ZNK10QZipReader6statusEv @ 11893 NONAME ABSENT + _ZNK10QZipReader8fileDataERK7QString @ 11894 NONAME ABSENT + _ZNK11QStaticText10textFormatEv @ 11895 NONAME ABSENT + _ZNK11QStaticText11maximumSizeEv @ 11896 NONAME ABSENT + _ZNK11QStaticText15performanceHintEv @ 11897 NONAME ABSENT + _ZNK11QStaticText4sizeEv @ 11898 NONAME ABSENT + _ZNK11QStaticText4textEv @ 11899 NONAME ABSENT + _ZNK11QStaticTexteqERKS_ @ 11900 NONAME ABSENT + _ZNK11QStaticTextneERKS_ @ 11901 NONAME ABSENT + _ZNK11QTextCursor15positionInBlockEv @ 11902 NONAME ABSENT + _ZNK13QIntValidator5fixupER7QString @ 11903 NONAME ABSENT + _ZNK14QPlainTextEdit8anchorAtERK6QPoint @ 11904 NONAME ABSENT + _ZNK15QGraphicsWidget18autoFillBackgroundEv @ 11905 NONAME ABSENT + _ZNK20QGraphicsViewPrivate10mapToSceneERK6QRectF @ 11906 NONAME ABSENT + _ZNK20QGraphicsViewPrivate10mapToSceneERK7QPointF @ 11907 NONAME ABSENT + _ZNK20QGraphicsViewPrivate13mapToViewRectEPK13QGraphicsItemRK6QRectF @ 11908 NONAME ABSENT + _ZNK20QGraphicsViewPrivate14mapRectToSceneERK5QRect @ 11909 NONAME ABSENT + _ZNK20QGraphicsViewPrivate14verticalScrollEv @ 11910 NONAME ABSENT + _ZNK20QGraphicsViewPrivate15mapToViewRegionEPK13QGraphicsItemRK6QRectF @ 11911 NONAME ABSENT + _ZNK20QGraphicsViewPrivate16horizontalScrollEv @ 11912 NONAME ABSENT + _ZNK20QGraphicsViewPrivate16mapRectFromSceneERK6QRectF @ 11913 NONAME ABSENT + _ZNK20QGraphicsViewPrivate16rubberBandRegionEPK7QWidgetRK5QRect @ 11914 NONAME ABSENT + _ZNK20QGraphicsViewPrivate9findItemsERK7QRegionPbRK10QTransform @ 11915 NONAME ABSENT + _ZNK26QAbstractScrollAreaPrivate14contentsOffsetEv @ 11916 NONAME ABSENT + _ZNK6QImage13constScanLineEi @ 11917 NONAME ABSENT + _ZNK6QImage9constBitsEv @ 11918 NONAME ABSENT + _ZNK6QLabel12selectedTextEv @ 11919 NONAME ABSENT + _ZNK6QLabel14selectionStartEv @ 11920 NONAME ABSENT + _ZNK6QLabel15hasSelectedTextEv @ 11921 NONAME ABSENT + _ZNK7QBezier11getSubRangeEff @ 11922 NONAME ABSENT + _ZNK7QBezier5mapByERK10QTransform @ 11923 NONAME ABSENT + _ZTI20QGraphicsViewPrivate @ 11924 NONAME ABSENT + _ZTI26QAbstractScrollAreaPrivate @ 11925 NONAME ABSENT + _ZTV20QGraphicsViewPrivate @ 11926 NONAME ABSENT + _ZTV26QAbstractScrollAreaPrivate @ 11927 NONAME ABSENT + _Z14qt_draw_glyphsP8QPainterPKjPK7QPointFi @ 11928 NONAME ABSENT + _ZN11QFontEngine16getGlyphBearingsEjPfS0_ @ 11929 NONAME + _ZN12QLineControl17updateDisplayTextEb @ 11930 NONAME + _ZN12QLineControl5pasteEN10QClipboard4ModeE @ 11931 NONAME ABSENT + _ZN12QTextControl5pasteEN10QClipboard4ModeE @ 11932 NONAME ABSENT + _ZN14QPaintEngineEx19drawPixmapFragmentsEPKN8QPainter14PixmapFragmentEiRK7QPixmap6QFlagsINS0_18PixmapFragmentHintEE @ 11933 NONAME ABSENT + _ZN15QGraphicsObject12widthChangedEv @ 11934 NONAME ABSENT + _ZN15QGraphicsObject13heightChangedEv @ 11935 NONAME ABSENT + _ZN15QGraphicsObject15childrenChangedEv @ 11936 NONAME ABSENT + _ZN15QGraphicsWidget15geometryChangedEv @ 11937 NONAME ABSENT + _ZN15QSplitterHandle11resizeEventEP12QResizeEvent @ 11938 NONAME ABSENT + _ZN20QGraphicsItemPrivate10resetWidthEv @ 11939 NONAME ABSENT + _ZN20QGraphicsItemPrivate11resetHeightEv @ 11940 NONAME ABSENT + _ZN20QGraphicsItemPrivate12childrenListEv @ 11941 NONAME ABSENT + _ZN20QGraphicsItemPrivate14setFocusHelperEN2Qt11FocusReasonEbb @ 11942 NONAME + _ZN20QGraphicsItemPrivate16clearFocusHelperEb @ 11943 NONAME + _ZN20QGraphicsItemPrivate24prependGraphicsTransformEP18QGraphicsTransform @ 11944 NONAME ABSENT + _ZN20QGraphicsItemPrivate6appendEP24QDeclarativeListPropertyI15QGraphicsObjectEPS1_ @ 11945 NONAME ABSENT + _ZN20QGraphicsItemPrivate8setWidthEf @ 11946 NONAME ABSENT + _ZN20QGraphicsItemPrivate9setHeightEf @ 11947 NONAME ABSENT + _ZN7QWizard11pageRemovedEi @ 11948 NONAME ABSENT + _ZN7QWizard13setSideWidgetEP7QWidget @ 11949 NONAME ABSENT + _ZN7QWizard9pageAddedEi @ 11950 NONAME ABSENT + _ZN8QPainter14PixmapFragment6createERK7QPointFRK6QRectFffff @ 11951 NONAME ABSENT + _ZN8QPainter19drawPixmapFragmentsEPKNS_14PixmapFragmentEiRK7QPixmap6QFlagsINS_18PixmapFragmentHintEE @ 11952 NONAME ABSENT + _ZN9QLineEdit18setPlaceholderTextERK7QString @ 11953 NONAME ABSENT + _ZNK10QZipReader6deviceEv @ 11954 NONAME ABSENT + _ZNK10QZipReader8FileInfo7isValidEv @ 11955 NONAME ABSENT + _ZNK20QGraphicsItemPrivate5widthEv @ 11956 NONAME ABSENT + _ZNK20QGraphicsItemPrivate6heightEv @ 11957 NONAME ABSENT + _ZNK6QImage13bitPlaneCountEv @ 11958 NONAME ABSENT + _ZNK7QWizard10sideWidgetEv @ 11959 NONAME ABSENT + _ZNK9QLineEdit15placeholderTextEv @ 11960 NONAME ABSENT + _ZNK9QTextLine17horizontalAdvanceEv @ 11961 NONAME ABSENT + _ZN11QStaticText12setTextWidthEf @ 11962 NONAME ABSENT + _ZN13QGraphicsItem16updateMicroFocusEv @ 11963 NONAME ABSENT + _ZN15QGraphicsObject16updateMicroFocusEv @ 11964 NONAME ABSENT + _ZN15QGraphicsWidget13layoutChangedEv @ 11965 NONAME ABSENT + _ZN16QPainterReplayer15processCommandsERK12QPaintBufferP8QPainterii @ 11966 NONAME ABSENT + _ZNK11QStaticText9textWidthEv @ 11967 NONAME ABSENT + _ZNK12QPaintBuffer13frameEndIndexEi @ 11968 NONAME ABSENT + _ZNK12QPaintBuffer15frameStartIndexEi @ 11969 NONAME ABSENT + _ZNK12QPaintBuffer15processCommandsEP8QPainterii @ 11970 NONAME ABSENT + _ZNK12QPaintBuffer18commandDescriptionEi @ 11971 NONAME ABSENT + _ZN20QGraphicsItemPrivate11children_atEP24QDeclarativeListPropertyI15QGraphicsObjectEi @ 11972 NONAME ABSENT + _ZN20QGraphicsItemPrivate14children_countEP24QDeclarativeListPropertyI15QGraphicsObjectE @ 11973 NONAME ABSENT + _ZN20QGraphicsItemPrivate15children_appendEP24QDeclarativeListPropertyI15QGraphicsObjectEPS1_ @ 11974 NONAME ABSENT + _ZN11QEglContext14destroyContextEv @ 11975 NONAME + _ZN14QEglProperties13setDeviceTypeEi @ 11976 NONAME ABSENT + _ZN4QEgl10clearErrorEv @ 11977 NONAME ABSENT + _ZN4QEgl10extensionsEv @ 11978 NONAME ABSENT + _ZN4QEgl11errorStringEi @ 11979 NONAME ABSENT + _ZN4QEgl11errorStringEv @ 11980 NONAME ABSENT + _ZN4QEgl12chooseConfigEPK14QEglPropertiesNS_16PixelFormatMatchE @ 11981 NONAME ABSENT + _ZN4QEgl12hasExtensionEPKc @ 11982 NONAME ABSENT + _ZN4QEgl12nativePixmapEP7QPixmap @ 11983 NONAME ABSENT + _ZN4QEgl12nativeWindowEP7QWidget @ 11984 NONAME ABSENT + _ZN4QEgl13createSurfaceEP12QPaintDeviceiPK14QEglProperties @ 11985 NONAME ABSENT + _ZN4QEgl13defaultConfigEiNS_3APIE6QFlagsINS_12ConfigOptionEE @ 11986 NONAME ABSENT + _ZN4QEgl13nativeDisplayEv @ 11987 NONAME ABSENT + _ZN4QEgl14dumpAllConfigsEv @ 11988 NONAME ABSENT + _ZN4QEgl17eglCreateImageKHREiiiiPKi @ 11989 NONAME ABSENT + _ZN4QEgl18eglDestroyImageKHREii @ 11990 NONAME ABSENT + _ZN4QEgl5errorEv @ 11991 NONAME ABSENT + _ZN4QEgl7displayEv @ 11992 NONAME ABSENT + _ZNK11QEglContext12configAttribEi @ 11993 NONAME ABSENT + _ZNK11QEglContext16configPropertiesEv @ 11994 NONAME ABSENT + _ZNK19QItemSelectionRange7isEmptyEv @ 11995 NONAME ABSENT + _ZN11QEglContext13nativeDisplayEv @ 11996 NONAME + _ZN11QEglContext3dpyE @ 11997 NONAME DATA 4 + _ZN11QEglContext7displayEv @ 11998 NONAME -- cgit v0.12 From d095a300728372fab107df27fdf4edc9d2164bfc Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Fri, 23 Apr 2010 23:52:10 +0200 Subject: Fix for EGL for symbian on 3.1/3.2/5.0, define QT_NO_EGL. Reviewed-by: Jason Barron --- src/gui/egl/egl.pri | 1 + src/gui/egl/qegl.cpp | 10 ++++++++++ src/gui/egl/qegl_p.h | 4 ++-- src/gui/egl/qegl_stub.cpp | 12 ++++++++++++ 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/gui/egl/egl.pri b/src/gui/egl/egl.pri index 65b1636..bf25438 100644 --- a/src/gui/egl/egl.pri +++ b/src/gui/egl/egl.pri @@ -23,6 +23,7 @@ contains(QT_CONFIG, egl): { } } } else:symbian { + DEFINES += QT_NO_EGL SOURCES += egl/qegl_stub.cpp SOURCES += egl/qeglproperties_stub.cpp } diff --git a/src/gui/egl/qegl.cpp b/src/gui/egl/qegl.cpp index 0ed95ea..ee19216 100644 --- a/src/gui/egl/qegl.cpp +++ b/src/gui/egl/qegl.cpp @@ -333,6 +333,16 @@ bool QEglContext::configAttrib(int name, EGLint *value) const return eglGetConfigAttrib(display(), cfg, name, value); } +void QEglContext::clearError() +{ + eglGetError(); +} + +EGLint QEglContext::error() +{ + return eglGetError(); +} + // Retrieve all of the properties on "cfg". If zero, return // the context's configuration. QEglProperties QEglContext::configProperties(EGLConfig cfg) const diff --git a/src/gui/egl/qegl_p.h b/src/gui/egl/qegl_p.h index 87ed818..e08e1dd 100644 --- a/src/gui/egl/qegl_p.h +++ b/src/gui/egl/qegl_p.h @@ -102,8 +102,8 @@ public: bool configAttrib(int name, EGLint *value) const; - static void clearError() { eglGetError(); } - static EGLint error() { return eglGetError(); } + static void clearError(); + static EGLint error(); static QString errorString(EGLint code); static EGLDisplay display(); diff --git a/src/gui/egl/qegl_stub.cpp b/src/gui/egl/qegl_stub.cpp index e280739..0363103 100644 --- a/src/gui/egl/qegl_stub.cpp +++ b/src/gui/egl/qegl_stub.cpp @@ -165,6 +165,18 @@ bool QEglContext::configAttrib(int name, EGLint *value) const return false; } +void QEglContext::clearError() +{ + NOEGL + return; +} + +EGLint QEglContext::error() +{ + NOEGL + return 0; +} + EGLDisplay QEglContext::display() { NOEGL -- cgit v0.12 From e3894396b663ff674c4af19b87b34bdf688c19b2 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 26 Apr 2010 11:02:45 +0200 Subject: Fix the use of strerror_r on GNU libc systems. Task-number: QTBUG-10014 Reviewed-By: Olivier Goffart --- src/corelib/global/qglobal.cpp | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/src/corelib/global/qglobal.cpp b/src/corelib/global/qglobal.cpp index c8f836a..66519be 100644 --- a/src/corelib/global/qglobal.cpp +++ b/src/corelib/global/qglobal.cpp @@ -2074,7 +2074,28 @@ static void mac_default_handler(const char *msg) } #endif // Q_CC_MWERKS && Q_OS_MACX - +#if !defined(Q_OS_WIN) && !defined(QT_NO_THREAD) && !defined(Q_OS_INTEGRITY) && !defined(Q_OS_QNX) && \ + defined(_POSIX_THREAD_SAFE_FUNCTIONS) && _POSIX_VERSION >= 200112L +namespace { + // There are two incompatible versions of strerror_r: + // a) the XSI/POSIX.1 version, which returns an int, + // indicating success or not + // b) the GNU version, which returns a char*, which may or may not + // be the beginning of the buffer we used + // The GNU libc manpage for strerror_r says you should use the the XSI + // version in portable code. However, it's impossible to do that if + // _GNU_SOURCE is defined so we use C++ overloading to decide what to do + // depending on the return type + static inline QString fromstrerror_helper(int, const QByteArray &buf) + { + return QString::fromLocal8Bit(buf); + } + static inline QString fromstrerror_helper(const char *str, const QByteArray &) + { + return QString::fromLocal8Bit(str); + } +} +#endif QString qt_error_string(int errorCode) { @@ -2117,12 +2138,9 @@ QString qt_error_string(int errorCode) if (ret.isEmpty() && errorCode == ERROR_MOD_NOT_FOUND) ret = QString::fromLatin1("The specified module could not be found."); - #elif !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) && _POSIX_VERSION >= 200112L && !defined(Q_OS_INTEGRITY) && !defined(Q_OS_QNX) - QByteArray buf(1024, '\0'); - strerror_r(errorCode, buf.data(), buf.size()); - ret = QString::fromLocal8Bit(buf.constData()); + ret = fromstrerror_helper(strerror_r(errorCode, buf.data(), buf.size()), buf); #else ret = QString::fromLocal8Bit(strerror(errorCode)); #endif -- cgit v0.12 From 674755d19160f8724df8fa8e19daeafc653ae543 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 26 Apr 2010 11:08:15 +0200 Subject: Fix infinite recursion in QIconvCodec when iconv fails. We mustn't use to/fromAscii because that goes back into the iconv codec... Task-number: QTBUG-10189 Reviewed-by: Olivier Goffart --- src/corelib/codecs/qiconvcodec.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/corelib/codecs/qiconvcodec.cpp b/src/corelib/codecs/qiconvcodec.cpp index 0fcdf96..44a0a01 100644 --- a/src/corelib/codecs/qiconvcodec.cpp +++ b/src/corelib/codecs/qiconvcodec.cpp @@ -168,7 +168,7 @@ Q_GLOBAL_STATIC(QThreadStorage, toUnicodeState) QString QIconvCodec::convertToUnicode(const char* chars, int len, ConverterState *convState) const { if (utf16Codec == reinterpret_cast(~0)) - return QString::fromAscii(chars, len); + return QString::fromLatin1(chars, len); int invalidCount = 0; int remainingCount = 0; @@ -207,9 +207,9 @@ QString QIconvCodec::convertToUnicode(const char* chars, int len, ConverterState static int reported = 0; if (!reported++) { fprintf(stderr, - "QIconvCodec::convertToUnicode: using ASCII for conversion, iconv_open failed\n"); + "QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed\n"); } - return QString::fromAscii(chars, len); + return QString::fromLatin1(chars, len); } *pstate = new IconvState(cd); @@ -273,14 +273,14 @@ QString QIconvCodec::convertToUnicode(const char* chars, int len, ConverterState // some other error // note, cannot use qWarning() since we are implementing the codecForLocale :) - perror("QIconvCodec::convertToUnicode: using ASCII for conversion, iconv failed"); + perror("QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv failed"); if (!convState) { // reset state iconv(state->cd, 0, &inBytesLeft, 0, &outBytesLeft); } - return QString::fromAscii(chars, len); + return QString::fromLatin1(chars, len); } } while (inBytesLeft != 0); @@ -353,12 +353,12 @@ QByteArray QIconvCodec::convertFromUnicode(const QChar *uc, int len, ConverterSt state = new IconvState(QIconvCodec::createIconv_t(0, UTF16)); if (state->cd == reinterpret_cast(-1)) { if (!setByteOrder(state->cd)) { - perror("QIconvCodec::convertFromUnicode: using ASCII for conversion, iconv failed for BOM"); + perror("QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv failed for BOM"); iconv_close(state->cd); state->cd = reinterpret_cast(-1); - return QString(uc, len).toAscii(); + return QString(uc, len).toLatin1(); } } } @@ -366,9 +366,9 @@ QByteArray QIconvCodec::convertFromUnicode(const QChar *uc, int len, ConverterSt static int reported = 0; if (!reported++) { fprintf(stderr, - "QIconvCodec::convertFromUnicode: using ASCII for conversion, iconv_open failed\n"); + "QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed\n"); } - return QString(uc, len).toAscii(); + return QString(uc, len).toLatin1(); } size_t outBytesLeft = len; @@ -425,12 +425,12 @@ QByteArray QIconvCodec::convertFromUnicode(const QChar *uc, int len, ConverterSt default: { // note, cannot use qWarning() since we are implementing the codecForLocale :) - perror("QIconvCodec::convertFromUnicode: using ASCII for conversion, iconv failed"); + perror("QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv failed"); // reset to initial state iconv(state->cd, 0, &inBytesLeft, 0, &outBytesLeft); - return QString(uc, len).toAscii(); + return QString(uc, len).toLatin1(); } } } -- cgit v0.12 From ec7ec74c6812398f74981d3703bf9a876b865bfe Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Mon, 26 Apr 2010 13:27:47 +0300 Subject: QS60Style: QMenu behaves badly with a lot of menu items Due to recent change in QS60Style where combobox menu was changed to popup menu, instead of dropdown menu, long QMenus now work sloppily. This is due to that pixel metric PE_MenuScrollerHeight was set to zero to avoid "non-drawn" areas in combobox popups. Of course, QMenu scrolling really needs the scrolling area if it is to make any scrolling. As a solution, scroller height is now zero for combobox popup and in QMenu it is the height of itemview item (for "standard" content), but no any scroller indication is drawn. The menu scrolls automatically when bottom/top part of menu list is highlighted. Task-number: QTBUG-10073 Reviewed-by: Janne Koskinen --- src/gui/styles/qs60style.cpp | 25 ++++++++++++++++--------- util/s60pixelmetrics/pixel_metrics.cpp | 18 ++++++++++++++++-- 2 files changed, 32 insertions(+), 11 deletions(-) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index 6f05908..3d993da 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -92,10 +92,10 @@ static const qreal goldenRatio = 1.618; const layoutHeader QS60StylePrivate::m_layoutHeaders[] = { // *** generated layout data *** -{240,320,1,17,"QVGA Landscape"}, -{320,240,1,17,"QVGA Portrait"}, -{360,640,1,17,"NHD Landscape"}, -{640,360,1,17,"NHD Portrait"}, +{240,320,1,18,"QVGA Landscape"}, +{320,240,1,18,"QVGA Portrait"}, +{360,640,1,18,"NHD Landscape"}, +{640,360,1,18,"NHD Portrait"}, {352,800,1,12,"E90 Landscape"} // *** End of generated data *** }; @@ -104,11 +104,11 @@ const int QS60StylePrivate::m_numberOfLayouts = const short QS60StylePrivate::data[][MAX_PIXELMETRICS] = { // *** generated pixel metrics *** -{5,0,-909,0,0,2,0,0,-1,7,12,19,13,13,6,200,-909,-909,-909,20,13,2,0,0,21,7,18,0,3,3,1,-909,-909,0,1,0,0,12,20,15,15,18,18,1,115,18,0,-909,-909,-909,-909,0,0,16,2,-909,0,0,-909,16,-909,-909,-909,-909,32,18,55,24,55,4,4,4,9,13,-909,5,51,11,5,0,3,3,6,8,3,3,-909,2,-909,-909,-909,-909,5,5,3,1, 106}, -{5,0,-909,0,0,1,0,0,-1,8,14,22,15,15,7,164,-909,-909,-909,19,15,2,0,0,21,8,27,0,4,4,1,-909,-909,0,7,6,0,13,23,17,17,21,21,7,115,21,0,-909,-909,-909,-909,0,0,15,1,-909,0,0,-909,15,-909,-909,-909,-909,32,21,65,27,65,3,3,5,10,15,-909,5,58,13,5,0,4,4,7,9,4,4,-909,2,-909,-909,-909,-909,6,6,3,1, 106}, -{7,0,-909,0,0,2,0,0,-1,25,69,28,19,19,9,258,-909,-909,-909,23,19,26,0,0,32,25,72,0,5,5,2,-909,-909,0,7,21,0,17,29,22,22,27,27,7,173,29,0,-909,-909,-909,-909,0,0,25,2,-909,0,0,-909,25,-909,-909,-909,-909,87,27,77,35,77,13,13,6,8,19,-909,7,74,19,7,0,5,5,8,12,5,5,-909,3,-909,-909,-909,-909,7,7,3,1, 135}, -{7,0,-909,0,0,2,0,0,-1,25,68,28,19,19,9,258,-909,-909,-909,31,19,6,0,0,32,25,60,0,5,5,2,-909,-909,0,7,32,0,17,29,22,22,27,27,7,173,29,0,-909,-909,-909,-909,0,0,26,2,-909,0,0,-909,26,-909,-909,-909,-909,87,27,96,35,96,12,12,6,8,19,-909,7,74,22,7,0,5,5,8,12,5,5,-909,3,-909,-909,-909,-909,7,7,3,1, 135}, -{7,0,-909,0,0,2,0,0,-1,10,20,27,18,18,9,301,-909,-909,-909,29,18,5,0,0,35,7,32,0,5,5,2,-909,-909,0,2,8,0,16,28,21,21,26,26,2,170,26,0,-909,-909,-909,-909,0,0,21,6,-909,0,0,-909,-909,-909,-909,-909,-909,54,26,265,34,265,5,5,6,3,18,-909,7,72,19,7,0,5,6,8,11,6,5,-909,2,-909,-909,-909,-909,5,5,3,1, 106} +{5,0,-909,0,0,2,0,0,-1,7,12,19,13,13,6,200,-909,-909,-909,20,13,2,0,0,21,7,18,30,3,3,1,-909,-909,0,1,0,0,12,20,15,15,18,18,1,115,18,0,-909,-909,-909,-909,0,0,16,2,-909,0,0,-909,16,-909,-909,-909,-909,32,18,55,24,55,4,4,4,9,13,-909,5,51,11,5,0,3,3,6,8,3,3,-909,2,-909,-909,-909,-909,5,5,3,1, 106}, +{5,0,-909,0,0,1,0,0,-1,8,14,22,15,15,7,164,-909,-909,-909,19,15,2,0,0,21,8,27,28,4,4,1,-909,-909,0,7,6,0,13,23,17,17,21,21,7,115,21,0,-909,-909,-909,-909,0,0,15,1,-909,0,0,-909,15,-909,-909,-909,-909,32,21,65,27,65,3,3,5,10,15,-909,5,58,13,5,0,4,4,7,9,4,4,-909,2,-909,-909,-909,-909,6,6,3,1, 106}, +{7,0,-909,0,0,2,0,0,-1,25,69,28,19,19,9,258,-909,-909,-909,23,19,26,0,0,32,25,72,44,5,5,2,-909,-909,0,7,21,0,17,29,22,22,27,27,7,173,29,0,-909,-909,-909,-909,0,0,25,2,-909,0,0,-909,25,-909,-909,-909,-909,87,27,77,35,77,13,13,6,8,19,-909,7,74,19,7,0,5,5,8,12,5,5,-909,3,-909,-909,-909,-909,7,7,3,1, 135}, +{7,0,-909,0,0,2,0,0,-1,25,68,28,19,19,9,258,-909,-909,-909,31,19,6,0,0,32,25,60,52,5,5,2,-909,-909,0,7,32,0,17,29,22,22,27,27,7,173,29,0,-909,-909,-909,-909,0,0,26,2,-909,0,0,-909,26,-909,-909,-909,-909,87,27,96,35,96,12,12,6,8,19,-909,7,74,22,7,0,5,5,8,12,5,5,-909,3,-909,-909,-909,-909,7,7,3,1, 135}, +{7,0,-909,0,0,2,0,0,-1,10,20,27,18,18,9,301,-909,-909,-909,29,18,5,0,0,35,7,32,30,5,5,2,-909,-909,0,2,8,0,16,28,21,21,26,26,2,170,26,0,-909,-909,-909,-909,0,0,21,6,-909,0,0,-909,-909,-909,-909,-909,-909,54,26,265,34,265,5,5,6,3,18,-909,7,72,19,7,0,5,6,8,11,6,5,-909,2,-909,-909,-909,-909,5,5,3,1, 106} // *** End of generated data *** }; @@ -2429,6 +2429,10 @@ int QS60Style::pixelMetric(PixelMetric metric, const QStyleOption *option, const if (metricValue == KNotFound) metricValue = QCommonStyle::pixelMetric(metric, option, widget); + // Menu scrollers should be set to zero height for combobox popups + if (metric == PM_MenuScrollerHeight && !qobject_cast(widget)) + metricValue = 0; + //if layout direction is mirrored, switch left and right border margins if (option && option->direction == Qt::RightToLeft) { if (metric == PM_LayoutLeftMargin) @@ -2570,6 +2574,9 @@ int QS60Style::styleHint(StyleHint sh, const QStyleOption *opt, const QWidget *w case SH_Menu_SelectionWrap: retValue = true; break; + case SH_Menu_MouseTracking: + retValue = true; + break; case SH_ItemView_ShowDecorationSelected: retValue = true; break; diff --git a/util/s60pixelmetrics/pixel_metrics.cpp b/util/s60pixelmetrics/pixel_metrics.cpp index 814e185..0fd650e 100644 --- a/util/s60pixelmetrics/pixel_metrics.cpp +++ b/util/s60pixelmetrics/pixel_metrics.cpp @@ -50,7 +50,7 @@ // so that we can keep dynamic and static values inline. // Please adjust version data if correcting dynamic PM calculations. const TInt KPMMajorVersion = 1; -const TInt KPMMinorVersion = 17; +const TInt KPMMinorVersion = 18; TPixelMetricsVersion PixelMetrics::Version() { @@ -1020,7 +1020,21 @@ TInt PixelMetrics::PixelMetricValue(QStyle::PixelMetric metric) break; case QStyle::PM_MenuScrollerHeight: - value = 0; + { + TRect rectParent( mainPaneRect ); + TAknLayoutRect listWidthScrollBarsRect; + listWidthScrollBarsRect.LayoutRect( rectParent, AknLayoutScalable_Avkon::listscroll_gen_pane(0).LayoutLine() ); + + TAknLayoutRect listWidgetRect; + listWidgetRect.LayoutRect( listWidthScrollBarsRect.Rect(), AknLayoutScalable_Avkon::list_gen_pane(0).LayoutLine() ); + TAknLayoutRect singleLineListWidgetRect; + singleLineListWidgetRect.LayoutRect( listWidgetRect.Rect(), AknLayoutScalable_Avkon::list_single_pane(0).LayoutLine() ); + + TAknLayoutRect listHighlightRect; + listHighlightRect.LayoutRect( singleLineListWidgetRect.Rect(), AknLayoutScalable_Avkon::list_highlight_pane_cp1(0).LayoutLine() ); + + value = listHighlightRect.Rect().Height(); + } break; // todo: re-check if these really are not available in s60 -- cgit v0.12 From 44fae8e280c71c835bcef5148f6b27946040a704 Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Mon, 26 Apr 2010 13:55:41 +0300 Subject: QS60Style: Menu separators are not drawn, yet they take up screen space Currently, QS60Style does not draw menu separators at all, yet they are calculated to take screen estate. Remove the screen reservation from them. See also QTBUG-10054 for details to add menu separator support to style. Task-number: QTBUG-10191 Reviewed-by: Alessandro Portale --- src/gui/styles/qs60style.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp index 3d993da..90b8be3 100644 --- a/src/gui/styles/qs60style.cpp +++ b/src/gui/styles/qs60style.cpp @@ -2494,6 +2494,12 @@ QSize QS60Style::sizeFromContents(ContentsType ct, const QStyleOption *opt, break; case CT_MenuItem: case CT_ItemViewItem: + if (const QStyleOptionMenuItem *menuItem = qstyleoption_cast(opt)) { + if (menuItem->menuItemType == QStyleOptionMenuItem::Separator) { + sz = QSize(); + break; + } + } sz = QCommonStyle::sizeFromContents( ct, opt, csz, widget); if (QS60StylePrivate::isTouchSupported()) //Make itemview easier to use in touch devices -- cgit v0.12 From bf3c776cf5369fd83c54a96a4e381774ab037c08 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Mon, 26 Apr 2010 17:14:18 +0200 Subject: Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( 4fb414b38f7c7c8439ce6a4323f1acb057a3ff20 ) Changes in WebKit/qt since the last update: ++ b/WebKit/qt/ChangeLog 2010-04-26 Thiago Macieira Reviewed by Simon Hausmann. [Qt] Fix the include header -> The module/header.h style inclusion removes the need to have -I$QTDIR/include/depending-module in the include search path for the application. * Api/qwebkitversion.h: --- src/3rdparty/webkit/VERSION | 2 +- src/3rdparty/webkit/WebCore/ChangeLog | 24 ++++++++++++++++++++++ .../webkit/WebCore/page/qt/EventHandlerQt.cpp | 2 +- .../platform/network/ResourceRequestBase.cpp | 8 ++++++++ src/3rdparty/webkit/WebKit/qt/ChangeLog | 11 ++++++++++ .../webkit/WebKit/qt/symbian/bwins/QtWebKitu.def | 3 +-- .../webkit/WebKit/qt/symbian/eabi/QtWebKitu.def | 2 +- 7 files changed, 47 insertions(+), 5 deletions(-) diff --git a/src/3rdparty/webkit/VERSION b/src/3rdparty/webkit/VERSION index 6c55e51..fe2950e 100644 --- a/src/3rdparty/webkit/VERSION +++ b/src/3rdparty/webkit/VERSION @@ -8,4 +8,4 @@ The commit imported was from the and has the sha1 checksum - 6ed0b6197addffc7dacbdb3e49db711420a2c47a + 4fb414b38f7c7c8439ce6a4323f1acb057a3ff20 diff --git a/src/3rdparty/webkit/WebCore/ChangeLog b/src/3rdparty/webkit/WebCore/ChangeLog index fa7e4f0..5e63c7c 100644 --- a/src/3rdparty/webkit/WebCore/ChangeLog +++ b/src/3rdparty/webkit/WebCore/ChangeLog @@ -1,3 +1,27 @@ +2010-04-26 Simon Hausmann + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Fix compilation with RVCT 4 + https://bugs.webkit.org/show_bug.cgi?id=37727 + + Swap extern and declspec to fix visibility of symbol imported from QtGui. + + * page/qt/EventHandlerQt.cpp: + +2010-04-26 Markus Goetz + + Reviewed by Simon Hausmann. + + [Qt] HTTP pipelining efficiency increase + https://bugs.webkit.org/show_bug.cgi?id=38062 + + Increase number of network requests that are fed into + QNetworkAccessManager. + + * platform/network/qt/ResourceRequestQt.cpp: + (WebCore::initializeMaximumHTTPConnectionCountPerHost): + 2009-11-03 Dan Bernstein Reviewed by Dave Hyatt. diff --git a/src/3rdparty/webkit/WebCore/page/qt/EventHandlerQt.cpp b/src/3rdparty/webkit/WebCore/page/qt/EventHandlerQt.cpp index 7563459..f06671d 100644 --- a/src/3rdparty/webkit/WebCore/page/qt/EventHandlerQt.cpp +++ b/src/3rdparty/webkit/WebCore/page/qt/EventHandlerQt.cpp @@ -51,7 +51,7 @@ #include "NotImplemented.h" QT_BEGIN_NAMESPACE -Q_DECL_IMPORT extern bool qt_tab_all_widgets; // from qapplication.cpp +Q_GUI_EXPORT extern bool qt_tab_all_widgets; // from qapplication.cpp QT_END_NAMESPACE namespace WebCore { diff --git a/src/3rdparty/webkit/WebCore/platform/network/ResourceRequestBase.cpp b/src/3rdparty/webkit/WebCore/platform/network/ResourceRequestBase.cpp index e0707d9..18841c8 100644 --- a/src/3rdparty/webkit/WebCore/platform/network/ResourceRequestBase.cpp +++ b/src/3rdparty/webkit/WebCore/platform/network/ResourceRequestBase.cpp @@ -381,9 +381,17 @@ void ResourceRequestBase::updateResourceRequest() const #if !PLATFORM(MAC) && !USE(CFNETWORK) && !USE(SOUP) && !PLATFORM(CHROMIUM) unsigned initializeMaximumHTTPConnectionCountPerHost() { +#if PLATFORM(QT) +#ifdef Q_OS_SYMBIAN + return 3 * (1 + 3 + 2); +#else + return 6 * (1 + 3 + 2); +#endif +#else // This is used by the loader to control the number of issued parallel load requests. // Four seems to be a common default in HTTP frameworks. return 4; +#endif } #endif diff --git a/src/3rdparty/webkit/WebKit/qt/ChangeLog b/src/3rdparty/webkit/WebKit/qt/ChangeLog index 6250cf5..d6b4a9d 100644 --- a/src/3rdparty/webkit/WebKit/qt/ChangeLog +++ b/src/3rdparty/webkit/WebKit/qt/ChangeLog @@ -1,3 +1,14 @@ +2010-04-26 Thiago Macieira + + Reviewed by Simon Hausmann. + + [Qt] Fix the include header -> + + The module/header.h style inclusion removes the need to have -I$QTDIR/include/depending-module + in the include search path for the application. + + * Api/qwebkitversion.h: + 2010-04-08 Joe Ligman Reviewed by Simon Hausmann. diff --git a/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def b/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def index cc609e1..086e986 100644 --- a/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def +++ b/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def @@ -623,6 +623,5 @@ EXPORTS ?qt_networkAccessAllowed@@YAX_N@Z @ 622 NONAME ; void qt_networkAccessAllowed(bool) ?qt_resumeActiveDOMObjects@@YAXPAVQWebFrame@@@Z @ 623 NONAME ; void qt_resumeActiveDOMObjects(class QWebFrame *) ?qt_suspendActiveDOMObjects@@YAXPAVQWebFrame@@@Z @ 624 NONAME ; void qt_suspendActiveDOMObjects(class QWebFrame *) - ?qtwebkit_webframe_scrollRecursively@@YA_NPAVQWebFrame@@HH@Z @ 625 NONAME ABSENT ; bool qtwebkit_webframe_scrollRecursively(class QWebFrame *, int, int) - ?qtwebkit_webframe_scrollRecursively@@YAXPAVQWebFrame@@HHABVQPoint@@@Z @ 626 NONAME ; void qtwebkit_webframe_scrollRecursively(class QWebFrame *, int, int, class QPoint const &) + ?qtwebkit_webframe_scrollRecursively@@YA_NPAVQWebFrame@@HH@Z @ 625 NONAME ; bool qtwebkit_webframe_scrollRecursively(class QWebFrame *, int, int) diff --git a/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def b/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def index d244ad5..cfa8f7f 100644 --- a/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def +++ b/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def @@ -694,4 +694,4 @@ EXPORTS _Z25qt_resumeActiveDOMObjectsP9QWebFrame @ 693 NONAME _Z26qt_suspendActiveDOMObjectsP9QWebFrame @ 694 NONAME _Z35qtwebkit_webframe_scrollRecursivelyP9QWebFrameii @ 695 NONAME ABSENT - _Z35qtwebkit_webframe_scrollRecursivelyP9QWebFrameiiRK6QPoint @ 696 NONAME + _Z35qtwebkit_webframe_scrollRecursivelyP9QWebFrameiiRK6QPoint @ 715 NONAME -- cgit v0.12 From 445aa2f6526d871086ab61fb1ca24658f5a0ca8c Mon Sep 17 00:00:00 2001 From: Iain Date: Thu, 15 Apr 2010 18:08:17 +0200 Subject: Re-apply change 5107946e97cbc480a9329565c29b7384c8ba0860 by Iain Re-apply change f14ae11e6731bd7416f45c3ef7ce464587862223 by Iain Update WebKit DEF files on Symbian Add/absent function with altered signature to BWINS DEF file. Correct ordinal numbering in EABI DEF file, it was broken and causing the build to fail. Reviewed-by: TrustMe --- src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def | 3 ++- src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def b/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def index 086e986..cc609e1 100644 --- a/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def +++ b/src/3rdparty/webkit/WebKit/qt/symbian/bwins/QtWebKitu.def @@ -623,5 +623,6 @@ EXPORTS ?qt_networkAccessAllowed@@YAX_N@Z @ 622 NONAME ; void qt_networkAccessAllowed(bool) ?qt_resumeActiveDOMObjects@@YAXPAVQWebFrame@@@Z @ 623 NONAME ; void qt_resumeActiveDOMObjects(class QWebFrame *) ?qt_suspendActiveDOMObjects@@YAXPAVQWebFrame@@@Z @ 624 NONAME ; void qt_suspendActiveDOMObjects(class QWebFrame *) - ?qtwebkit_webframe_scrollRecursively@@YA_NPAVQWebFrame@@HH@Z @ 625 NONAME ; bool qtwebkit_webframe_scrollRecursively(class QWebFrame *, int, int) + ?qtwebkit_webframe_scrollRecursively@@YA_NPAVQWebFrame@@HH@Z @ 625 NONAME ABSENT ; bool qtwebkit_webframe_scrollRecursively(class QWebFrame *, int, int) + ?qtwebkit_webframe_scrollRecursively@@YAXPAVQWebFrame@@HHABVQPoint@@@Z @ 626 NONAME ; void qtwebkit_webframe_scrollRecursively(class QWebFrame *, int, int, class QPoint const &) diff --git a/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def b/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def index cfa8f7f..d244ad5 100644 --- a/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def +++ b/src/3rdparty/webkit/WebKit/qt/symbian/eabi/QtWebKitu.def @@ -694,4 +694,4 @@ EXPORTS _Z25qt_resumeActiveDOMObjectsP9QWebFrame @ 693 NONAME _Z26qt_suspendActiveDOMObjectsP9QWebFrame @ 694 NONAME _Z35qtwebkit_webframe_scrollRecursivelyP9QWebFrameii @ 695 NONAME ABSENT - _Z35qtwebkit_webframe_scrollRecursivelyP9QWebFrameiiRK6QPoint @ 715 NONAME + _Z35qtwebkit_webframe_scrollRecursivelyP9QWebFrameiiRK6QPoint @ 696 NONAME -- cgit v0.12 From b7fa0c137c2ef567b286d83435aba843e33280b7 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Fri, 23 Apr 2010 15:58:37 +0200 Subject: QNAM HTTP: Avoid one copy Even if we have implicit sharing in QByteArray it makes sense. Reviewed-by: joao --- src/network/access/qnetworkaccesshttpbackend.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/network/access/qnetworkaccesshttpbackend.cpp b/src/network/access/qnetworkaccesshttpbackend.cpp index af971a7..ba26dad 100644 --- a/src/network/access/qnetworkaccesshttpbackend.cpp +++ b/src/network/access/qnetworkaccesshttpbackend.cpp @@ -680,8 +680,7 @@ void QNetworkAccessHttpBackend::readFromHttp() QByteDataBuffer list; while (httpReply->bytesAvailable() != 0 && nextDownstreamBlockSize() != 0 && nextDownstreamBlockSize() > list.byteAmount()) { - QByteArray data = httpReply->readAny(); - list.append(data); + list.append(httpReply->readAny()); } if (!list.isEmpty()) -- cgit v0.12 From ed692616c6a358ccfbdb10b716d6d5829a92f7bb Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Wed, 7 Apr 2010 14:17:53 +0200 Subject: QNAM HTTP: Divide QNetworkReplyImplPrivate::appendDownstreamData The goal is to easier add an overload for (const &QByteArray). Reviewed-by: Peter Hartmann --- src/network/access/qnetworkreplyimpl.cpp | 73 +++++++++++++++++++++----------- src/network/access/qnetworkreplyimpl_p.h | 5 +++ 2 files changed, 53 insertions(+), 25 deletions(-) diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp index 320b1ac..4f35358 100644 --- a/src/network/access/qnetworkreplyimpl.cpp +++ b/src/network/access/qnetworkreplyimpl.cpp @@ -403,6 +403,37 @@ qint64 QNetworkReplyImplPrivate::nextDownstreamBlockSize() const return qMax(0, readBufferMaxSize - readBuffer.byteAmount()); } +void QNetworkReplyImplPrivate::initCacheSaveDevice() +{ + Q_Q(QNetworkReplyImpl); + + // save the meta data + QNetworkCacheMetaData metaData; + metaData.setUrl(url); + metaData = backend->fetchCacheMetaData(metaData); + + // save the redirect request also in the cache + QVariant redirectionTarget = q->attribute(QNetworkRequest::RedirectionTargetAttribute); + if (redirectionTarget.isValid()) { + QNetworkCacheMetaData::AttributesMap attributes = metaData.attributes(); + attributes.insert(QNetworkRequest::RedirectionTargetAttribute, redirectionTarget); + metaData.setAttributes(attributes); + } + + cacheSaveDevice = networkCache()->prepare(metaData); + + if (!cacheSaveDevice || (cacheSaveDevice && !cacheSaveDevice->isOpen())) { + if (cacheSaveDevice && !cacheSaveDevice->isOpen()) + qCritical("QNetworkReplyImpl: network cache returned a device that is not open -- " + "class %s probably needs to be fixed", + networkCache()->metaObject()->className()); + + networkCache()->remove(url); + cacheSaveDevice = 0; + cacheEnabled = false; + } +} + // we received downstream data and send this to the cache // and to our readBuffer (which in turn gets read by the user of QNetworkReply) void QNetworkReplyImplPrivate::appendDownstreamData(QByteDataBuffer &data) @@ -412,31 +443,7 @@ void QNetworkReplyImplPrivate::appendDownstreamData(QByteDataBuffer &data) return; if (cacheEnabled && !cacheSaveDevice) { - // save the meta data - QNetworkCacheMetaData metaData; - metaData.setUrl(url); - metaData = backend->fetchCacheMetaData(metaData); - - // save the redirect request also in the cache - QVariant redirectionTarget = q->attribute(QNetworkRequest::RedirectionTargetAttribute); - if (redirectionTarget.isValid()) { - QNetworkCacheMetaData::AttributesMap attributes = metaData.attributes(); - attributes.insert(QNetworkRequest::RedirectionTargetAttribute, redirectionTarget); - metaData.setAttributes(attributes); - } - - cacheSaveDevice = networkCache()->prepare(metaData); - - if (!cacheSaveDevice || (cacheSaveDevice && !cacheSaveDevice->isOpen())) { - if (cacheSaveDevice && !cacheSaveDevice->isOpen()) - qCritical("QNetworkReplyImpl: network cache returned a device that is not open -- " - "class %s probably needs to be fixed", - networkCache()->metaObject()->className()); - - networkCache()->remove(url); - cacheSaveDevice = 0; - cacheEnabled = false; - } + initCacheSaveDevice(); } qint64 bytesWritten = 0; @@ -454,6 +461,13 @@ void QNetworkReplyImplPrivate::appendDownstreamData(QByteDataBuffer &data) bytesDownloaded += bytesWritten; lastBytesDownloaded = bytesDownloaded; + appendDownstreamDataSignalEmissions(); +} + +void QNetworkReplyImplPrivate::appendDownstreamDataSignalEmissions() +{ + Q_Q(QNetworkReplyImpl); + QPointer qq = q; QVariant totalSize = cookedHeaders.value(QNetworkRequest::ContentLengthHeader); @@ -495,6 +509,15 @@ void QNetworkReplyImplPrivate::appendDownstreamData(QIODevice *data) _q_copyReadyRead(); } +void QNetworkReplyImplPrivate::appendDownstreamData(const QByteArray &data) +{ + // TODO implement + + // TODO call + + qFatal("QNetworkReplyImplPrivate::appendDownstreamData not implemented"); +} + void QNetworkReplyImplPrivate::finished() { Q_Q(QNetworkReplyImpl); diff --git a/src/network/access/qnetworkreplyimpl_p.h b/src/network/access/qnetworkreplyimpl_p.h index 168e5cf..a7a568a 100644 --- a/src/network/access/qnetworkreplyimpl_p.h +++ b/src/network/access/qnetworkreplyimpl_p.h @@ -145,8 +145,13 @@ public: void consume(qint64 count); void emitUploadProgress(qint64 bytesSent, qint64 bytesTotal); qint64 nextDownstreamBlockSize() const; + + void initCacheSaveDevice(); + void appendDownstreamDataSignalEmissions(); void appendDownstreamData(QByteDataBuffer &data); void appendDownstreamData(QIODevice *data); + void appendDownstreamData(const QByteArray &data); + void finished(); void error(QNetworkReply::NetworkError code, const QString &errorString); void metaDataChanged(); -- cgit v0.12 From 2e95891d29cb115dfadd57076e215030cd255489 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Wed, 7 Apr 2010 14:09:20 +0200 Subject: QNAM: Use a reference in appendDownstreamData --- src/corelib/tools/qbytedata_p.h | 2 +- src/network/access/qnetworkreplyimpl.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/tools/qbytedata_p.h b/src/corelib/tools/qbytedata_p.h index 9aad6a9..17a3a60 100644 --- a/src/corelib/tools/qbytedata_p.h +++ b/src/corelib/tools/qbytedata_p.h @@ -84,7 +84,7 @@ public: } - inline void append(QByteArray& bd) + inline void append(const QByteArray& bd) { if (bd.isEmpty()) return; diff --git a/src/network/access/qnetworkreplyimpl.cpp b/src/network/access/qnetworkreplyimpl.cpp index 4f35358..0f5bdd0 100644 --- a/src/network/access/qnetworkreplyimpl.cpp +++ b/src/network/access/qnetworkreplyimpl.cpp @@ -448,7 +448,7 @@ void QNetworkReplyImplPrivate::appendDownstreamData(QByteDataBuffer &data) qint64 bytesWritten = 0; for (int i = 0; i < data.bufferCount(); i++) { - QByteArray item = data[i]; + QByteArray const &item = data[i]; if (cacheSaveDevice) cacheSaveDevice->write(item.constData(), item.size()); -- cgit v0.12 From c3067851071ae9480688e0d746dd6b03bd113823 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Mon, 26 Apr 2010 17:05:46 +0200 Subject: QNAM HTTP: Fix invoking a method when being destructed right now (2) Task-number: QTBUG-10171 Reviewed-by: Olivier Goffart --- src/network/access/qhttpnetworkconnectionchannel.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/network/access/qhttpnetworkconnectionchannel.cpp b/src/network/access/qhttpnetworkconnectionchannel.cpp index f1c51bc..22dd5cb 100644 --- a/src/network/access/qhttpnetworkconnectionchannel.cpp +++ b/src/network/access/qhttpnetworkconnectionchannel.cpp @@ -317,6 +317,13 @@ void QHttpNetworkConnectionChannel::_q_receiveReply() return; } + // only run when the QHttpNetworkConnection is not currently being destructed, e.g. + // this function is called from _q_disconnected which is called because + // of ~QHttpNetworkConnectionPrivate + if (!qobject_cast(connection)) { + return; + } + qint64 bytes = 0; QAbstractSocket::SocketState socketState = socket->state(); -- cgit v0.12 From 5b086892cec1cbcd9fe7f0abca5293519ecc4633 Mon Sep 17 00:00:00 2001 From: Peter Hartmann Date: Tue, 16 Mar 2010 14:01:17 +0100 Subject: QXmlSchema internals: fix crash with anonymous types The crash occurred when an anonymous type was created that was a list type. In that case, we did not set the item type, which is used later at XsdSchemaChecker::checkSimpleDerivationRestrictions(), which would lead to a crash. Additionally, in the xmlpatternsvalidator test, check the exit status of the process after it has finished, to detect crashes. Reviewed-by: Tobias Koenig Reviewed-by: Frans Englich Task-number: QTBUG-8920 --- src/xmlpatterns/schema/qxsdschemaresolver.cpp | 9 +++++++- .../complex-type-including-anonymous-type.xsd | 24 ++++++++++++++++++++++ .../tst_xmlpatternsvalidator.cpp | 13 ++++++++---- 3 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 tests/auto/xmlpatternsvalidator/files/complex-type-including-anonymous-type.xsd diff --git a/src/xmlpatterns/schema/qxsdschemaresolver.cpp b/src/xmlpatterns/schema/qxsdschemaresolver.cpp index 34eb12c..f3d1ed0 100644 --- a/src/xmlpatterns/schema/qxsdschemaresolver.cpp +++ b/src/xmlpatterns/schema/qxsdschemaresolver.cpp @@ -632,7 +632,14 @@ void XsdSchemaResolver::resolveSimpleContentComplexTypes(const XsdComplexType::P } else { // 1.2 const XsdSimpleType::Ptr anonType(new XsdSimpleType()); - anonType->setCategory(complexBaseType->contentType()->simpleType()->category()); + XsdSimpleType::TypeCategory baseCategory = complexBaseType->contentType()->simpleType()->category(); + anonType->setCategory(baseCategory); + + if (baseCategory == XsdSimpleType::SimpleTypeList) { + const XsdSimpleType::Ptr baseSimpleType = complexBaseType->contentType()->simpleType(); + anonType->setItemType(baseSimpleType->itemType()); + } + anonType->setDerivationMethod(XsdSimpleType::DerivationRestriction); anonType->setWxsSuperType(complexBaseType->contentType()->simpleType()); anonType->setFacets(complexTypeFacets(complexType)); diff --git a/tests/auto/xmlpatternsvalidator/files/complex-type-including-anonymous-type.xsd b/tests/auto/xmlpatternsvalidator/files/complex-type-including-anonymous-type.xsd new file mode 100644 index 0000000..da765b4 --- /dev/null +++ b/tests/auto/xmlpatternsvalidator/files/complex-type-including-anonymous-type.xsd @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp b/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp index 7aab47f..3517b5a 100644 --- a/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp +++ b/tests/auto/xmlpatternsvalidator/tst_xmlpatternsvalidator.cpp @@ -111,8 +111,8 @@ void tst_XmlPatternsValidator::xsdSupport() process.start(m_command, arguments); - QCOMPARE(process.exitStatus(), QProcess::NormalExit); QVERIFY(process.waitForFinished()); + QCOMPARE(process.exitStatus(), QProcess::NormalExit); if(process.exitCode() != expectedExitCode) QTextStream(stderr) << "foo:" << process.readAllStandardError(); @@ -197,20 +197,25 @@ void tst_XmlPatternsValidator::xsdSupport_data() const << (QStringList() << QLatin1String("files/instance.xml")) << QString(); - QTest::newRow("A schema with an indirectly included type") + QTest::newRow("QTBUG-8394 A schema with an indirectly included type") << 0 << (QStringList() << QLatin1String("files/indirect-include-a.xsd")) << QString(); - QTest::newRow("A schema with an indirectly imported type") + QTest::newRow("QTBUG-8394 A schema with an indirectly imported type") << 0 << (QStringList() << QLatin1String("files/indirect-import-a.xsd")) << QString(); - QTest::newRow("A schema with an indirectly redefined type") + QTest::newRow("QTBUG-8394 A schema with an indirectly redefined type") << 0 << (QStringList() << QLatin1String("files/indirect-redefine-a.xsd")) << QString(); + + QTest::newRow("QTBUG-8920 A schema with a complex type that indirectly includes an anonymous type") + << 0 + << (QStringList() << QLatin1String("files/complex-type-including-anonymous-type.xsd")) + << QString(); } QTEST_MAIN(tst_XmlPatternsValidator) -- cgit v0.12 From e340e68d7ee2c0e7cbf2e1bd2f79b15418141016 Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Tue, 27 Apr 2010 08:56:25 +1000 Subject: win32 backend for low-level audio fixes - fix deadlock with QAudioInput (win32) backend - changed win32 backend to use QMutex lock - setNotifyInterval(0) to disable notify() signal Reviewed-by:Derick Hawcroft --- src/multimedia/audio/qaudioinput_win32_p.cpp | 68 +++++++++++-------------- src/multimedia/audio/qaudioinput_win32_p.h | 3 +- src/multimedia/audio/qaudiooutput_win32_p.cpp | 71 +++++++++++++-------------- src/multimedia/audio/qaudiooutput_win32_p.h | 3 +- 4 files changed, 67 insertions(+), 78 deletions(-) diff --git a/src/multimedia/audio/qaudioinput_win32_p.cpp b/src/multimedia/audio/qaudioinput_win32_p.cpp index 5152d9a..8240047 100644 --- a/src/multimedia/audio/qaudioinput_win32_p.cpp +++ b/src/multimedia/audio/qaudioinput_win32_p.cpp @@ -57,8 +57,6 @@ QT_BEGIN_NAMESPACE //#define DEBUG_AUDIO 1 -static const int minimumIntervalTime = 50; - QAudioInputPrivate::QAudioInputPrivate(const QByteArray &device, const QAudioFormat& audioFormat): settings(audioFormat) { @@ -74,16 +72,11 @@ QAudioInputPrivate::QAudioInputPrivate(const QByteArray &device, const QAudioFor pullMode = true; resuming = false; finished = false; - - connect(this,SIGNAL(processMore()),SLOT(deviceReady())); - - InitializeCriticalSection(&waveInCriticalSection); } QAudioInputPrivate::~QAudioInputPrivate() { stop(); - DeleteCriticalSection(&waveInCriticalSection); } void CALLBACK QAudioInputPrivate::waveInProc( HWAVEIN hWaveIn, UINT uMsg, @@ -98,20 +91,18 @@ void CALLBACK QAudioInputPrivate::waveInProc( HWAVEIN hWaveIn, UINT uMsg, if(!qAudio) return; + QMutexLocker(&qAudio->mutex); + switch(uMsg) { case WIM_OPEN: break; case WIM_DATA: - EnterCriticalSection(&qAudio->waveInCriticalSection); if(qAudio->waveFreeBlockCount > 0) qAudio->waveFreeBlockCount--; qAudio->feedback(); - LeaveCriticalSection(&qAudio->waveInCriticalSection); break; case WIM_CLOSE: - EnterCriticalSection(&qAudio->waveInCriticalSection); qAudio->finished = true; - LeaveCriticalSection(&qAudio->waveInCriticalSection); break; default: return; @@ -156,8 +147,7 @@ void QAudioInputPrivate::freeBlocks(WAVEHDR* blockArray) int count = buffer_size/period_size; for(int i = 0; i < count; i++) { - if (blocks->dwFlags & WHDR_PREPARED) - waveInUnprepareHeader(hWaveIn,blocks, sizeof(WAVEHDR)); + waveInUnprepareHeader(hWaveIn,blocks, sizeof(WAVEHDR)); blocks+=sizeof(WAVEHDR); } HeapFree(GetProcessHeap(), 0, blockArray); @@ -279,9 +269,9 @@ bool QAudioInputPrivate::open() return false; } - EnterCriticalSection(&waveInCriticalSection); + mutex.lock(); waveFreeBlockCount = buffer_size/period_size; - LeaveCriticalSection(&waveInCriticalSection); + mutex.unlock(); waveCurrentBlock = 0; @@ -325,13 +315,11 @@ void QAudioInputPrivate::close() Sleep(10); } - EnterCriticalSection(&waveInCriticalSection); - for(int i=0; i len && waveFreeBlockCount == buffer_size/period_size) done = true; @@ -439,7 +432,7 @@ qint64 QAudioInputPrivate::read(char* data, qint64 len) if(waveFreeBlockCount == buffer_size/period_size) done = true; } - LeaveCriticalSection(&waveInCriticalSection); + mutex.unlock(); written+=l; } @@ -463,9 +456,10 @@ void QAudioInputPrivate::resume() return; } } - EnterCriticalSection(&waveInCriticalSection); + + mutex.lock(); waveFreeBlockCount = buffer_size/period_size; - LeaveCriticalSection(&waveInCriticalSection); + mutex.unlock(); waveCurrentBlock = 0; header = 0; @@ -493,10 +487,7 @@ int QAudioInputPrivate::periodSize() const void QAudioInputPrivate::setNotifyInterval(int ms) { - if(ms >= minimumIntervalTime) - intervalTime = ms; - else - intervalTime = minimumIntervalTime; + intervalTime = qMax(0, ms); } int QAudioInputPrivate::notifyInterval() const @@ -530,14 +521,13 @@ void QAudioInputPrivate::feedback() QTime now(QTime::currentTime()); qDebug()<trigger(); } - if((timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { + if(intervalTime && (timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { emit notify(); elapsedTimeOffset = timeStamp.elapsed() + elapsedTimeOffset - intervalTime; timeStamp.restart(); diff --git a/src/multimedia/audio/qaudioinput_win32_p.h b/src/multimedia/audio/qaudioinput_win32_p.h index a12c75e..1737bb1 100644 --- a/src/multimedia/audio/qaudioinput_win32_p.h +++ b/src/multimedia/audio/qaudioinput_win32_p.h @@ -62,6 +62,7 @@ #include #include #include +#include #include #include @@ -122,7 +123,7 @@ private: volatile int waveFreeBlockCount; int waveCurrentBlock; - CRITICAL_SECTION waveInCriticalSection; + QMutex mutex; static void CALLBACK waveInProc( HWAVEIN hWaveIn, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2 ); diff --git a/src/multimedia/audio/qaudiooutput_win32_p.cpp b/src/multimedia/audio/qaudiooutput_win32_p.cpp index b92565d..533583a 100644 --- a/src/multimedia/audio/qaudiooutput_win32_p.cpp +++ b/src/multimedia/audio/qaudiooutput_win32_p.cpp @@ -56,8 +56,6 @@ QT_BEGIN_NAMESPACE -static const int minimumIntervalTime = 50; - QAudioOutputPrivate::QAudioOutputPrivate(const QByteArray &device, const QAudioFormat& audioFormat): settings(audioFormat) { @@ -73,17 +71,15 @@ QAudioOutputPrivate::QAudioOutputPrivate(const QByteArray &device, const QAudioF audioSource = 0; pullMode = true; finished = false; - InitializeCriticalSection(&waveOutCriticalSection); } QAudioOutputPrivate::~QAudioOutputPrivate() { - EnterCriticalSection(&waveOutCriticalSection); + mutex.lock(); finished = true; - LeaveCriticalSection(&waveOutCriticalSection); + mutex.unlock(); close(); - DeleteCriticalSection(&waveOutCriticalSection); } void CALLBACK QAudioOutputPrivate::waveOutProc( HWAVEOUT hWaveOut, UINT uMsg, @@ -98,6 +94,8 @@ void CALLBACK QAudioOutputPrivate::waveOutProc( HWAVEOUT hWaveOut, UINT uMsg, if(!qAudio) return; + QMutexLocker(&qAudio->mutex); + switch(uMsg) { case WOM_OPEN: qAudio->feedback(); @@ -105,16 +103,13 @@ void CALLBACK QAudioOutputPrivate::waveOutProc( HWAVEOUT hWaveOut, UINT uMsg, case WOM_CLOSE: return; case WOM_DONE: - EnterCriticalSection(&qAudio->waveOutCriticalSection); if(qAudio->finished || qAudio->buffer_size == 0 || qAudio->period_size == 0) { - LeaveCriticalSection(&qAudio->waveOutCriticalSection); return; } qAudio->waveFreeBlockCount++; if(qAudio->waveFreeBlockCount >= qAudio->buffer_size/qAudio->period_size) qAudio->waveFreeBlockCount = qAudio->buffer_size/qAudio->period_size; qAudio->feedback(); - LeaveCriticalSection(&qAudio->waveOutCriticalSection); break; default: return; @@ -150,8 +145,7 @@ void QAudioOutputPrivate::freeBlocks(WAVEHDR* blockArray) int count = buffer_size/period_size; for(int i = 0; i < count; i++) { - if (blocks->dwFlags & WHDR_PREPARED) - waveOutUnprepareHeader(hWaveOut,blocks, sizeof(WAVEHDR)); + waveOutUnprepareHeader(hWaveOut,blocks, sizeof(WAVEHDR)); blocks+=sizeof(WAVEHDR); } HeapFree(GetProcessHeap(), 0, blockArray); @@ -226,9 +220,9 @@ bool QAudioOutputPrivate::open() } waveBlocks = allocateBlocks(period_size, buffer_size/period_size); - EnterCriticalSection(&waveOutCriticalSection); + mutex.lock(); waveFreeBlockCount = buffer_size/period_size; - LeaveCriticalSection(&waveOutCriticalSection); + mutex.unlock(); waveCurrentBlock = 0; @@ -334,10 +328,7 @@ int QAudioOutputPrivate::bufferSize() const void QAudioOutputPrivate::setNotifyInterval(int ms) { - if(ms >= minimumIntervalTime) - intervalTime = ms; - else - intervalTime = minimumIntervalTime; + intervalTime = qMax(0, ms); } int QAudioOutputPrivate::notifyInterval() const @@ -369,12 +360,12 @@ qint64 QAudioOutputPrivate::write( const char *data, qint64 len ) int remain; current = &waveBlocks[waveCurrentBlock]; while(l > 0) { - EnterCriticalSection(&waveOutCriticalSection); + mutex.lock(); if(waveFreeBlockCount==0) { - LeaveCriticalSection(&waveOutCriticalSection); + mutex.unlock(); break; } - LeaveCriticalSection(&waveOutCriticalSection); + mutex.unlock(); if(current->dwFlags & WHDR_PREPARED) waveOutUnprepareHeader(hWaveOut, current, sizeof(WAVEHDR)); @@ -391,15 +382,13 @@ qint64 QAudioOutputPrivate::write( const char *data, qint64 len ) waveOutPrepareHeader(hWaveOut, current, sizeof(WAVEHDR)); waveOutWrite(hWaveOut, current, sizeof(WAVEHDR)); - EnterCriticalSection(&waveOutCriticalSection); + mutex.lock(); waveFreeBlockCount--; - LeaveCriticalSection(&waveOutCriticalSection); #ifdef DEBUG_AUDIO - EnterCriticalSection(&waveOutCriticalSection); qDebug("write out l=%d, waveFreeBlockCount=%d", current->dwBufferLength,waveFreeBlockCount); - LeaveCriticalSection(&waveOutCriticalSection); #endif + mutex.unlock(); totalTimeValue += current->dwBufferLength; waveCurrentBlock++; waveCurrentBlock %= buffer_size/period_size; @@ -454,7 +443,7 @@ void QAudioOutputPrivate::feedback() bool QAudioOutputPrivate::deviceReady() { - if(deviceState == QAudio::StoppedState) + if(deviceState == QAudio::StoppedState || deviceState == QAudio::SuspendedState) return false; if(pullMode) { @@ -468,14 +457,16 @@ bool QAudioOutputPrivate::deviceReady() startup = true; bool full=false; - EnterCriticalSection(&waveOutCriticalSection); + + mutex.lock(); if(waveFreeBlockCount==0) full = true; - LeaveCriticalSection(&waveOutCriticalSection); + mutex.unlock(); + if (full){ #ifdef DEBUG_AUDIO qDebug() << "Skipping data as unable to write"; #endif - if((timeStamp.elapsed() + elapsedTimeOffset) > intervalTime ) { + if(intervalTime && (timeStamp.elapsed() + elapsedTimeOffset) > intervalTime ) { emit notify(); elapsedTimeOffset = timeStamp.elapsed() + elapsedTimeOffset - intervalTime; timeStamp.restart(); @@ -505,12 +496,14 @@ bool QAudioOutputPrivate::deviceReady() bytesAvailable = bytesFree(); int check = 0; - EnterCriticalSection(&waveOutCriticalSection); + + mutex.lock(); check = waveFreeBlockCount; - LeaveCriticalSection(&waveOutCriticalSection); + mutex.unlock(); + if(check == buffer_size/period_size) { - errorState = QAudio::UnderrunError; if (deviceState != QAudio::IdleState) { + errorState = QAudio::UnderrunError; deviceState = QAudio::IdleState; emit stateChanged(deviceState); } @@ -522,19 +515,23 @@ bool QAudioOutputPrivate::deviceReady() } } else { int buffered; - EnterCriticalSection(&waveOutCriticalSection); + + mutex.lock(); buffered = waveFreeBlockCount; - LeaveCriticalSection(&waveOutCriticalSection); - errorState = QAudio::UnderrunError; + mutex.unlock(); + if (buffered >= buffer_size/period_size && deviceState == QAudio::ActiveState) { - deviceState = QAudio::IdleState; - emit stateChanged(deviceState); + if (deviceState != QAudio::IdleState) { + errorState = QAudio::UnderrunError; + deviceState = QAudio::IdleState; + emit stateChanged(deviceState); + } } } if(deviceState != QAudio::ActiveState && deviceState != QAudio::IdleState) return true; - if((timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { + if(intervalTime && (timeStamp.elapsed() + elapsedTimeOffset) > intervalTime) { emit notify(); elapsedTimeOffset = timeStamp.elapsed() + elapsedTimeOffset - intervalTime; timeStamp.restart(); diff --git a/src/multimedia/audio/qaudiooutput_win32_p.h b/src/multimedia/audio/qaudiooutput_win32_p.h index a7a0b07..aab1064 100644 --- a/src/multimedia/audio/qaudiooutput_win32_p.h +++ b/src/multimedia/audio/qaudiooutput_win32_p.h @@ -61,6 +61,7 @@ #include #include #include +#include #include #include @@ -119,7 +120,7 @@ private: static void CALLBACK waveOutProc( HWAVEOUT hWaveOut, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2 ); - CRITICAL_SECTION waveOutCriticalSection; + QMutex mutex; WAVEHDR* allocateBlocks(int size, int count); void freeBlocks(WAVEHDR* blockArray); -- cgit v0.12 From d1b922bf2e80e04e33d293aeba2d74df060656b7 Mon Sep 17 00:00:00 2001 From: Kurt Korbatits Date: Tue, 27 Apr 2010 12:30:47 +1000 Subject: Adjusted layout of audiodevice example to use scrollbar. Reviewed-by:Justin McPherson --- .../multimedia/audiodevices/audiodevicesbase.ui | 517 +++++++++++---------- 1 file changed, 282 insertions(+), 235 deletions(-) diff --git a/examples/multimedia/audiodevices/audiodevicesbase.ui b/examples/multimedia/audiodevices/audiodevicesbase.ui index faa39dc..667a6e5 100644 --- a/examples/multimedia/audiodevices/audiodevicesbase.ui +++ b/examples/multimedia/audiodevices/audiodevicesbase.ui @@ -6,8 +6,8 @@ 0 0 - 504 - 702 + 320 + 300 @@ -16,241 +16,288 @@ - - - - - - 1 - 0 - - - - Device - - - - - - - Mode - - - - - - - - + + + + 0 + 0 + + + + true + + + + + 0 + -192 + 282 + 471 + + + - - Input - + + + + + + 1 + 0 + + + + Device + + + + + + + Mode + + + + + + + + 0 + 0 + + + + + 150 + 0 + + + + + + + + + 0 + 0 + + + + + Input + + + + + Output + + + + + + + + QFrame::Panel + + + QFrame::Raised + + + Actual Settings + + + Qt::AlignCenter + + + + + + + QFrame::Panel + + + QFrame::Raised + + + Nearest Settings + + + Qt::AlignCenter + + + + + + + Frequency + + + + + + + Frequency + + + + + + + + + + false + + + + + + + Channels + + + + + + + Channel + + + + + + + + + + false + + + + + + + Codecs + + + + + + + Codec + + + + + + + + + + false + + + + + + + SampleSize + + + + + + + SampleSize + + + + + + + + + + false + + + + + + + SampleType + + + + + + + SampleType + + + + + + + + + + false + + + + + + + Endianess + + + + + + + Endianess + + + + + + + + + + false + + + + + + + false + + + + 0 + 0 + + + + Qt::ScrollBarAlwaysOff + + + + + + + Test + + + + - - - Output - - - - - - - - QFrame::Panel - - - QFrame::Raised - - - Actual Settings - - - Qt::AlignCenter - - - - - - - QFrame::Panel - - - QFrame::Raised - - - Nearest Settings - - - Qt::AlignCenter - - - - - - - Frequency - - - - - - - Frequency - - - - - - - - - - false - - - - - - - Channels - - - - - - - Channel - - - - - - - - - - false - - - - - - - Codecs - - - - - - - Codec - - - - - - - - - - false - - - - - - - SampleSize - - - - - - - SampleSize - - - - - - - - - - false - - - - - - - SampleType - - - - - - - SampleType - - - - - - - - - - false - - - - - - - Endianess - - - - - - - Endianess - - - - - - - - - - false - - - - - - - false - - - - 0 - 40 - - - - - - - - Test - - - - + + + -- cgit v0.12 From 1113ec294d0f92f4961d3f102ef7a702a765cfe3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Trond=20Kjern=C3=A5sen?= Date: Tue, 27 Apr 2010 10:34:43 +0200 Subject: Fixed QGLWidget::grabFrameBuffer() to honor the 'withAlpha' value. Task-number: QTBUG-7545 Reviewed-by: Kim --- src/opengl/qgl.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index ca898c7..c294e4f 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -1534,7 +1534,14 @@ static void convertFromGLImage(QImage &img, int w, int h, bool alpha_format, boo uint *q = (uint*)img.scanLine(y); for (int x=0; x < w; ++x) { const uint pixel = *q; - *q = ((pixel << 16) & 0xff0000) | ((pixel >> 16) & 0xff) | (pixel & 0xff00ff00); + if (alpha_format && include_alpha) { + *q = ((pixel << 16) & 0xff0000) | ((pixel >> 16) & 0xff) + | (pixel & 0xff00ff00); + } else { + *q = 0xff000000 | ((pixel << 16) & 0xff0000) + | ((pixel >> 16) & 0xff) | (pixel & 0x00ff00); + } + q++; } } @@ -1545,7 +1552,8 @@ static void convertFromGLImage(QImage &img, int w, int h, bool alpha_format, boo QImage qt_gl_read_framebuffer(const QSize &size, bool alpha_format, bool include_alpha) { - QImage img(size, alpha_format ? QImage::Format_ARGB32 : QImage::Format_RGB32); + QImage img(size, (alpha_format && include_alpha) ? QImage::Format_ARGB32 + : QImage::Format_RGB32); int w = size.width(); int h = size.height(); glReadPixels(0, 0, w, h, GL_RGBA, GL_UNSIGNED_BYTE, img.bits()); -- cgit v0.12 From 85dad87b4969ad9cf96116367132ad18b0e7a4bb Mon Sep 17 00:00:00 2001 From: Aleksandar Sasha Babic Date: Thu, 8 Apr 2010 14:48:18 +0200 Subject: The cmd line arguments have not been delegated properly. Task-number: QT-9377 Reviewed-by: Joao --- .../corelib/tools/qstringbuilder/main.cpp | 33 +--------------------- 1 file changed, 1 insertion(+), 32 deletions(-) diff --git a/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp b/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp index 9bd146f..d46a36b 100644 --- a/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp +++ b/tests/benchmarks/corelib/tools/qstringbuilder/main.cpp @@ -428,37 +428,6 @@ private: std::string stdr; }; - -//void operator%(QString, int) {} - -int main(int argc, char *argv[]) -{ - //qDebug() << (QString("xx") * QLatin1String("y")).toString(); - //42 % 3; // Sanity test, should always work. - //QString("x") % 2; // Sanity test, should only compile when the - // operator%(QString, int) is visible. - - if (argc == 2 && (QLatin1String(argv[1]) == QLatin1String("--run-builder") - || QLatin1String(argv[1]) == QLatin1String("-b"))) { - tst_qstringbuilder test; - return test.run_builder(); - } - - if (argc == 2 && (QLatin1String(argv[1]) == QLatin1String("--run-traditional") - || QLatin1String(argv[1]) == QLatin1String("-t"))) { - tst_qstringbuilder test; - return test.run_traditional(); - } - - if (argc == 1) { - QCoreApplication app(argc, argv); - QStringList args = app.arguments(); - tst_qstringbuilder test; - return QTest::qExec(&test, argc, argv); - } - - qDebug() << "Usage: " << argv[0] << " [--run-builder|-r|--run-traditional|-t]"; -} - +QTEST_MAIN(tst_qstringbuilder) #include "main.moc" -- cgit v0.12 From cc1d15dc46ecdc661e9eb96e0a6c2bd3832d5c83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Trond=20Kjern=C3=A5sen?= Date: Tue, 27 Apr 2010 13:46:57 +0200 Subject: Fixed a QFontEngine leak for QFont objects used in threads. Only the QFontCache object for the main thread was cleared when the the application exited, or a thread was destroyed. This caused font engine references to hang around and never get deleted. Task-number: QTBUG-3976 Reviewed-by: Brad --- src/gui/text/qfont.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/gui/text/qfont.cpp b/src/gui/text/qfont.cpp index a41b000..b349bcf 100644 --- a/src/gui/text/qfont.cpp +++ b/src/gui/text/qfont.cpp @@ -2612,10 +2612,8 @@ void QFontCache::cleanup() } QT_CATCH (const std::bad_alloc &) { // no cache - just ignore } - if (cache && cache->hasLocalData()) { - cache->localData()->clear(); + if (cache && cache->hasLocalData()) cache->setLocalData(0); - } } #endif // QT_NO_THREAD @@ -2627,6 +2625,7 @@ QFontCache::QFontCache() QFontCache::~QFontCache() { + clear(); { EngineDataCache::ConstIterator it = engineDataCache.constBegin(), end = engineDataCache.constEnd(); -- cgit v0.12 From 0948393df9b9046db5c3c92a12698aee056d8483 Mon Sep 17 00:00:00 2001 From: Peter Hartmann Date: Fri, 23 Apr 2010 16:12:10 +0200 Subject: fix crash in QXmlStreamReader this fixes a possible off-by-one data corruption which apparently is only triggered in rare circumstances. The problem was: We were checking whether we would need to reallocate the stack (line 1245), but sometimes were incrementing tos (line 1278) and then accessing the state stack at an out-of-bounds position (line 1951). Additionally, adapt the qlalr generator for changes made to qxmlstream_p.h directly and recreate that file with qlalr. Reviewed-by: Frans Englich Reviewed-by: Roberto Raggi Task-number: QTBUG-9196 --- src/corelib/xml/qxmlstream.g | 2 +- src/corelib/xml/qxmlstream_p.h | 4 ++-- tests/auto/qxmlstream/tst_qxmlstream.cpp | 12 ++++++++++++ util/qlalr/cppgenerator.cpp | 2 +- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/corelib/xml/qxmlstream.g b/src/corelib/xml/qxmlstream.g index 1b882e0..e91408f 100644 --- a/src/corelib/xml/qxmlstream.g +++ b/src/corelib/xml/qxmlstream.g @@ -748,7 +748,7 @@ bool QXmlStreamReaderPrivate::parse() state_stack[tos] = 0; return true; } else if (act > 0) { - if (++tos == stack_size) + if (++tos == stack_size-1) reallocateStack(); Value &val = sym_stack[tos]; diff --git a/src/corelib/xml/qxmlstream_p.h b/src/corelib/xml/qxmlstream_p.h index ac421cf..f6ab3a1 100644 --- a/src/corelib/xml/qxmlstream_p.h +++ b/src/corelib/xml/qxmlstream_p.h @@ -61,7 +61,7 @@ class QXmlStreamReader_Table { public: - enum { + enum VariousConstants { EOF_SYMBOL = 0, AMPERSAND = 5, ANY = 41, @@ -1242,7 +1242,7 @@ bool QXmlStreamReaderPrivate::parse() state_stack[tos] = 0; return true; } else if (act > 0) { - if (++tos == stack_size) + if (++tos == stack_size-1) reallocateStack(); Value &val = sym_stack[tos]; diff --git a/tests/auto/qxmlstream/tst_qxmlstream.cpp b/tests/auto/qxmlstream/tst_qxmlstream.cpp index 27ae089..3c5358c 100644 --- a/tests/auto/qxmlstream/tst_qxmlstream.cpp +++ b/tests/auto/qxmlstream/tst_qxmlstream.cpp @@ -569,6 +569,7 @@ private slots: void clear() const; void checkCommentIndentation() const; void checkCommentIndentation_data() const; + void qtbug9196_crash() const; private: static QByteArray readFile(const QString &filename); @@ -1528,5 +1529,16 @@ void tst_QXmlStream::checkCommentIndentation() const // task 256468 QCOMPARE(output, expectedOutput); } +void tst_QXmlStream::qtbug9196_crash() const +{ + // the following input used to produce a crash in the stream reader + QByteArray ba("" + ""); + QXmlStreamReader xml(ba); + while (!xml.atEnd()) { + xml.readNext(); + } +} + #include "tst_qxmlstream.moc" // vim: et:ts=4:sw=4:sts=4 diff --git a/util/qlalr/cppgenerator.cpp b/util/qlalr/cppgenerator.cpp index f52a86f..45de51c 100644 --- a/util/qlalr/cppgenerator.cpp +++ b/util/qlalr/cppgenerator.cpp @@ -355,7 +355,7 @@ void CppGenerator::operator () () out << startIncludeGuard(grammar.merged_output) << endl; if (copyright) { - out << "#if defined(Q_OS_VXWORKS) && defined(ERROR)" << endl + out << "#if defined(ERROR)" << endl << "# undef ERROR" << endl << "#endif" << endl << endl; } -- cgit v0.12 From 1e4912c70ee2ce8ce7e62bc1daad625070bc4a44 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 28 Apr 2010 11:51:07 +0200 Subject: tst_selftest: use @INSERT_QT_VERSION_HERE@ to indicate the Qt version. Otherwise, the tests break when the Qt version changes --- tests/auto/selftests/expected_assert.lightxml | 4 ++-- tests/auto/selftests/expected_assert.xml | 4 ++-- tests/auto/selftests/expected_assert.xunitxml | 4 ++-- tests/auto/selftests/expected_badxml.lightxml | 4 ++-- tests/auto/selftests/expected_badxml.xml | 4 ++-- tests/auto/selftests/expected_badxml.xunitxml | 4 ++-- tests/auto/selftests/expected_benchlibcallgrind.lightxml | 4 ++-- tests/auto/selftests/expected_benchlibcallgrind.xml | 4 ++-- tests/auto/selftests/expected_benchlibcallgrind.xunitxml | 4 ++-- tests/auto/selftests/expected_benchlibeventcounter.lightxml | 4 ++-- tests/auto/selftests/expected_benchlibeventcounter.xml | 4 ++-- tests/auto/selftests/expected_benchlibeventcounter.xunitxml | 4 ++-- tests/auto/selftests/expected_benchliboptions.lightxml | 4 ++-- tests/auto/selftests/expected_benchliboptions.xml | 4 ++-- tests/auto/selftests/expected_benchliboptions.xunitxml | 4 ++-- tests/auto/selftests/expected_benchlibtickcounter.lightxml | 4 ++-- tests/auto/selftests/expected_benchlibtickcounter.xml | 4 ++-- tests/auto/selftests/expected_benchlibtickcounter.xunitxml | 4 ++-- tests/auto/selftests/expected_benchlibwalltime.lightxml | 4 ++-- tests/auto/selftests/expected_benchlibwalltime.xml | 4 ++-- tests/auto/selftests/expected_benchlibwalltime.xunitxml | 4 ++-- tests/auto/selftests/expected_cmptest.lightxml | 4 ++-- tests/auto/selftests/expected_cmptest.xml | 4 ++-- tests/auto/selftests/expected_cmptest.xunitxml | 4 ++-- tests/auto/selftests/expected_commandlinedata.lightxml | 4 ++-- tests/auto/selftests/expected_commandlinedata.xml | 4 ++-- tests/auto/selftests/expected_commandlinedata.xunitxml | 4 ++-- tests/auto/selftests/expected_crashes.lightxml | 4 ++-- tests/auto/selftests/expected_crashes.xml | 4 ++-- tests/auto/selftests/expected_crashes.xunitxml | 4 ++-- tests/auto/selftests/expected_datatable.lightxml | 4 ++-- tests/auto/selftests/expected_datatable.xml | 4 ++-- tests/auto/selftests/expected_datatable.xunitxml | 4 ++-- tests/auto/selftests/expected_datetime.lightxml | 4 ++-- tests/auto/selftests/expected_datetime.xml | 4 ++-- tests/auto/selftests/expected_datetime.xunitxml | 4 ++-- tests/auto/selftests/expected_exceptionthrow.lightxml | 4 ++-- tests/auto/selftests/expected_exceptionthrow.xml | 4 ++-- tests/auto/selftests/expected_exceptionthrow.xunitxml | 4 ++-- tests/auto/selftests/expected_expectfail.lightxml | 4 ++-- tests/auto/selftests/expected_expectfail.xml | 4 ++-- tests/auto/selftests/expected_expectfail.xunitxml | 4 ++-- tests/auto/selftests/expected_failinit.lightxml | 4 ++-- tests/auto/selftests/expected_failinit.xml | 4 ++-- tests/auto/selftests/expected_failinit.xunitxml | 4 ++-- tests/auto/selftests/expected_failinitdata.lightxml | 4 ++-- tests/auto/selftests/expected_failinitdata.xml | 4 ++-- tests/auto/selftests/expected_failinitdata.xunitxml | 4 ++-- tests/auto/selftests/expected_fetchbogus.lightxml | 4 ++-- tests/auto/selftests/expected_fetchbogus.xml | 4 ++-- tests/auto/selftests/expected_fetchbogus.xunitxml | 4 ++-- tests/auto/selftests/expected_globaldata.lightxml | 4 ++-- tests/auto/selftests/expected_globaldata.xml | 4 ++-- tests/auto/selftests/expected_globaldata.xunitxml | 4 ++-- tests/auto/selftests/expected_longstring.lightxml | 4 ++-- tests/auto/selftests/expected_longstring.xml | 4 ++-- tests/auto/selftests/expected_longstring.xunitxml | 4 ++-- tests/auto/selftests/expected_maxwarnings.lightxml | 4 ++-- tests/auto/selftests/expected_maxwarnings.xml | 4 ++-- tests/auto/selftests/expected_maxwarnings.xunitxml | 4 ++-- tests/auto/selftests/expected_multiexec.lightxml | 4 ++-- tests/auto/selftests/expected_multiexec.xml | 4 ++-- tests/auto/selftests/expected_multiexec.xunitxml | 4 ++-- tests/auto/selftests/expected_singleskip.lightxml | 4 ++-- tests/auto/selftests/expected_singleskip.xml | 4 ++-- tests/auto/selftests/expected_singleskip.xunitxml | 4 ++-- tests/auto/selftests/expected_skip.lightxml | 4 ++-- tests/auto/selftests/expected_skip.xml | 4 ++-- tests/auto/selftests/expected_skip.xunitxml | 4 ++-- tests/auto/selftests/expected_skipglobal.lightxml | 4 ++-- tests/auto/selftests/expected_skipglobal.xml | 4 ++-- tests/auto/selftests/expected_skipglobal.xunitxml | 4 ++-- tests/auto/selftests/expected_skipinit.lightxml | 4 ++-- tests/auto/selftests/expected_skipinit.xml | 4 ++-- tests/auto/selftests/expected_skipinit.xunitxml | 4 ++-- tests/auto/selftests/expected_skipinitdata.lightxml | 4 ++-- tests/auto/selftests/expected_skipinitdata.xml | 4 ++-- tests/auto/selftests/expected_skipinitdata.xunitxml | 4 ++-- tests/auto/selftests/expected_sleep.lightxml | 4 ++-- tests/auto/selftests/expected_sleep.xml | 4 ++-- tests/auto/selftests/expected_sleep.xunitxml | 4 ++-- tests/auto/selftests/expected_strcmp.lightxml | 4 ++-- tests/auto/selftests/expected_strcmp.xml | 4 ++-- tests/auto/selftests/expected_strcmp.xunitxml | 4 ++-- tests/auto/selftests/expected_subtest.lightxml | 4 ++-- tests/auto/selftests/expected_subtest.xml | 4 ++-- tests/auto/selftests/expected_subtest.xunitxml | 4 ++-- tests/auto/selftests/expected_warnings.lightxml | 4 ++-- tests/auto/selftests/expected_warnings.xml | 4 ++-- tests/auto/selftests/expected_warnings.xunitxml | 4 ++-- tests/auto/selftests/expected_xunit.lightxml | 4 ++-- tests/auto/selftests/expected_xunit.xml | 4 ++-- tests/auto/selftests/expected_xunit.xunitxml | 4 ++-- tests/auto/selftests/tst_selftests.cpp | 2 +- 94 files changed, 187 insertions(+), 187 deletions(-) diff --git a/tests/auto/selftests/expected_assert.lightxml b/tests/auto/selftests/expected_assert.lightxml index 50b5376..f49cdf0 100644 --- a/tests/auto/selftests/expected_assert.lightxml +++ b/tests/auto/selftests/expected_assert.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_assert.xml b/tests/auto/selftests/expected_assert.xml index 2a77999..3a7152c 100644 --- a/tests/auto/selftests/expected_assert.xml +++ b/tests/auto/selftests/expected_assert.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_assert.xunitxml b/tests/auto/selftests/expected_assert.xunitxml index 264ae93..2a7d5eb 100644 --- a/tests/auto/selftests/expected_assert.xunitxml +++ b/tests/auto/selftests/expected_assert.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_badxml.lightxml b/tests/auto/selftests/expected_badxml.lightxml index d6a76f2..244f9b3 100644 --- a/tests/auto/selftests/expected_badxml.lightxml +++ b/tests/auto/selftests/expected_badxml.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_badxml.xml b/tests/auto/selftests/expected_badxml.xml index c1962c7..86fdd54 100644 --- a/tests/auto/selftests/expected_badxml.xml +++ b/tests/auto/selftests/expected_badxml.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_badxml.xunitxml b/tests/auto/selftests/expected_badxml.xunitxml index 3a410e7..724aed5 100644 --- a/tests/auto/selftests/expected_badxml.xunitxml +++ b/tests/auto/selftests/expected_badxml.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_benchlibcallgrind.lightxml b/tests/auto/selftests/expected_benchlibcallgrind.lightxml index b3959ad..b47cdc4 100644 --- a/tests/auto/selftests/expected_benchlibcallgrind.lightxml +++ b/tests/auto/selftests/expected_benchlibcallgrind.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibcallgrind.xml b/tests/auto/selftests/expected_benchlibcallgrind.xml index e27fbab..12da64f 100644 --- a/tests/auto/selftests/expected_benchlibcallgrind.xml +++ b/tests/auto/selftests/expected_benchlibcallgrind.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibcallgrind.xunitxml b/tests/auto/selftests/expected_benchlibcallgrind.xunitxml index 61b4b5a..cc58f7f 100644 --- a/tests/auto/selftests/expected_benchlibcallgrind.xunitxml +++ b/tests/auto/selftests/expected_benchlibcallgrind.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_benchlibeventcounter.lightxml b/tests/auto/selftests/expected_benchlibeventcounter.lightxml index 3e6c444..2d6b727 100644 --- a/tests/auto/selftests/expected_benchlibeventcounter.lightxml +++ b/tests/auto/selftests/expected_benchlibeventcounter.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibeventcounter.xml b/tests/auto/selftests/expected_benchlibeventcounter.xml index 0e29bc4..7fa1fdd 100644 --- a/tests/auto/selftests/expected_benchlibeventcounter.xml +++ b/tests/auto/selftests/expected_benchlibeventcounter.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibeventcounter.xunitxml b/tests/auto/selftests/expected_benchlibeventcounter.xunitxml index 72a8b9e..60dca28 100644 --- a/tests/auto/selftests/expected_benchlibeventcounter.xunitxml +++ b/tests/auto/selftests/expected_benchlibeventcounter.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_benchliboptions.lightxml b/tests/auto/selftests/expected_benchliboptions.lightxml index 1138462..7a42cc7 100644 --- a/tests/auto/selftests/expected_benchliboptions.lightxml +++ b/tests/auto/selftests/expected_benchliboptions.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchliboptions.xml b/tests/auto/selftests/expected_benchliboptions.xml index bcf1ea0..40bff95 100644 --- a/tests/auto/selftests/expected_benchliboptions.xml +++ b/tests/auto/selftests/expected_benchliboptions.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchliboptions.xunitxml b/tests/auto/selftests/expected_benchliboptions.xunitxml index f5c776d..7317e90 100644 --- a/tests/auto/selftests/expected_benchliboptions.xunitxml +++ b/tests/auto/selftests/expected_benchliboptions.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_benchlibtickcounter.lightxml b/tests/auto/selftests/expected_benchlibtickcounter.lightxml index 0071ceb..ea926c2 100644 --- a/tests/auto/selftests/expected_benchlibtickcounter.lightxml +++ b/tests/auto/selftests/expected_benchlibtickcounter.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibtickcounter.xml b/tests/auto/selftests/expected_benchlibtickcounter.xml index 3a63d74..3cd82a2 100644 --- a/tests/auto/selftests/expected_benchlibtickcounter.xml +++ b/tests/auto/selftests/expected_benchlibtickcounter.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibtickcounter.xunitxml b/tests/auto/selftests/expected_benchlibtickcounter.xunitxml index 15ff5ae..28c8f11 100644 --- a/tests/auto/selftests/expected_benchlibtickcounter.xunitxml +++ b/tests/auto/selftests/expected_benchlibtickcounter.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_benchlibwalltime.lightxml b/tests/auto/selftests/expected_benchlibwalltime.lightxml index aa0cc01..500647d 100644 --- a/tests/auto/selftests/expected_benchlibwalltime.lightxml +++ b/tests/auto/selftests/expected_benchlibwalltime.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibwalltime.xml b/tests/auto/selftests/expected_benchlibwalltime.xml index 155fca9..1379d4b 100644 --- a/tests/auto/selftests/expected_benchlibwalltime.xml +++ b/tests/auto/selftests/expected_benchlibwalltime.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_benchlibwalltime.xunitxml b/tests/auto/selftests/expected_benchlibwalltime.xunitxml index 5b713a9..e4ffca4 100644 --- a/tests/auto/selftests/expected_benchlibwalltime.xunitxml +++ b/tests/auto/selftests/expected_benchlibwalltime.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_cmptest.lightxml b/tests/auto/selftests/expected_cmptest.lightxml index 9824dae..a6d35e4 100644 --- a/tests/auto/selftests/expected_cmptest.lightxml +++ b/tests/auto/selftests/expected_cmptest.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_cmptest.xml b/tests/auto/selftests/expected_cmptest.xml index 4dd1bc5..7064fcb 100644 --- a/tests/auto/selftests/expected_cmptest.xml +++ b/tests/auto/selftests/expected_cmptest.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_cmptest.xunitxml b/tests/auto/selftests/expected_cmptest.xunitxml index dc77fd2..01bfda8 100644 --- a/tests/auto/selftests/expected_cmptest.xunitxml +++ b/tests/auto/selftests/expected_cmptest.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_commandlinedata.lightxml b/tests/auto/selftests/expected_commandlinedata.lightxml index 8763a91..ad1f893 100644 --- a/tests/auto/selftests/expected_commandlinedata.lightxml +++ b/tests/auto/selftests/expected_commandlinedata.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_commandlinedata.xml b/tests/auto/selftests/expected_commandlinedata.xml index 95b7a50..bcc8cbd 100644 --- a/tests/auto/selftests/expected_commandlinedata.xml +++ b/tests/auto/selftests/expected_commandlinedata.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_commandlinedata.xunitxml b/tests/auto/selftests/expected_commandlinedata.xunitxml index 9c4dbfd..45b833c 100644 --- a/tests/auto/selftests/expected_commandlinedata.xunitxml +++ b/tests/auto/selftests/expected_commandlinedata.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_crashes.lightxml b/tests/auto/selftests/expected_crashes.lightxml index 60ef540..2eee3cc 100644 --- a/tests/auto/selftests/expected_crashes.lightxml +++ b/tests/auto/selftests/expected_crashes.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_crashes.xml b/tests/auto/selftests/expected_crashes.xml index d20cee3..be01e63 100644 --- a/tests/auto/selftests/expected_crashes.xml +++ b/tests/auto/selftests/expected_crashes.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_crashes.xunitxml b/tests/auto/selftests/expected_crashes.xunitxml index 7b5b552..558491c 100644 --- a/tests/auto/selftests/expected_crashes.xunitxml +++ b/tests/auto/selftests/expected_crashes.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_datatable.lightxml b/tests/auto/selftests/expected_datatable.lightxml index 681aa10..a1c9d2b 100644 --- a/tests/auto/selftests/expected_datatable.lightxml +++ b/tests/auto/selftests/expected_datatable.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_datatable.xml b/tests/auto/selftests/expected_datatable.xml index 4472451..0d12594 100644 --- a/tests/auto/selftests/expected_datatable.xml +++ b/tests/auto/selftests/expected_datatable.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_datatable.xunitxml b/tests/auto/selftests/expected_datatable.xunitxml index 8b23938..6bac80e 100644 --- a/tests/auto/selftests/expected_datatable.xunitxml +++ b/tests/auto/selftests/expected_datatable.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_datetime.lightxml b/tests/auto/selftests/expected_datetime.lightxml index 054d306..edad6aa 100644 --- a/tests/auto/selftests/expected_datetime.lightxml +++ b/tests/auto/selftests/expected_datetime.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_datetime.xml b/tests/auto/selftests/expected_datetime.xml index 7ac35d8..b7b870e 100644 --- a/tests/auto/selftests/expected_datetime.xml +++ b/tests/auto/selftests/expected_datetime.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_datetime.xunitxml b/tests/auto/selftests/expected_datetime.xunitxml index 0c66aa6..b30d1c4 100644 --- a/tests/auto/selftests/expected_datetime.xunitxml +++ b/tests/auto/selftests/expected_datetime.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_exceptionthrow.lightxml b/tests/auto/selftests/expected_exceptionthrow.lightxml index f092a0c..90371e4 100644 --- a/tests/auto/selftests/expected_exceptionthrow.lightxml +++ b/tests/auto/selftests/expected_exceptionthrow.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_exceptionthrow.xml b/tests/auto/selftests/expected_exceptionthrow.xml index 69d6e2a..bddbb7d 100644 --- a/tests/auto/selftests/expected_exceptionthrow.xml +++ b/tests/auto/selftests/expected_exceptionthrow.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_exceptionthrow.xunitxml b/tests/auto/selftests/expected_exceptionthrow.xunitxml index 6fcf70f..ab0d379 100644 --- a/tests/auto/selftests/expected_exceptionthrow.xunitxml +++ b/tests/auto/selftests/expected_exceptionthrow.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_expectfail.lightxml b/tests/auto/selftests/expected_expectfail.lightxml index 2424ada..d3fb05b 100644 --- a/tests/auto/selftests/expected_expectfail.lightxml +++ b/tests/auto/selftests/expected_expectfail.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_expectfail.xml b/tests/auto/selftests/expected_expectfail.xml index 849b16a..670467e 100644 --- a/tests/auto/selftests/expected_expectfail.xml +++ b/tests/auto/selftests/expected_expectfail.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_expectfail.xunitxml b/tests/auto/selftests/expected_expectfail.xunitxml index 429093c..32a5cfc 100644 --- a/tests/auto/selftests/expected_expectfail.xunitxml +++ b/tests/auto/selftests/expected_expectfail.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_failinit.lightxml b/tests/auto/selftests/expected_failinit.lightxml index 13ba15d..93a4e3f 100644 --- a/tests/auto/selftests/expected_failinit.lightxml +++ b/tests/auto/selftests/expected_failinit.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_failinit.xml b/tests/auto/selftests/expected_failinit.xml index 0943586..e1f9e8d 100644 --- a/tests/auto/selftests/expected_failinit.xml +++ b/tests/auto/selftests/expected_failinit.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_failinit.xunitxml b/tests/auto/selftests/expected_failinit.xunitxml index 40f9134..3c2e31b 100644 --- a/tests/auto/selftests/expected_failinit.xunitxml +++ b/tests/auto/selftests/expected_failinit.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_failinitdata.lightxml b/tests/auto/selftests/expected_failinitdata.lightxml index 9fac6f9..56d8c71 100644 --- a/tests/auto/selftests/expected_failinitdata.lightxml +++ b/tests/auto/selftests/expected_failinitdata.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_failinitdata.xml b/tests/auto/selftests/expected_failinitdata.xml index 7ef3e0f..47be1b6 100644 --- a/tests/auto/selftests/expected_failinitdata.xml +++ b/tests/auto/selftests/expected_failinitdata.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_failinitdata.xunitxml b/tests/auto/selftests/expected_failinitdata.xunitxml index e2c11b0..f32ccd5 100644 --- a/tests/auto/selftests/expected_failinitdata.xunitxml +++ b/tests/auto/selftests/expected_failinitdata.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_fetchbogus.lightxml b/tests/auto/selftests/expected_fetchbogus.lightxml index edce196..c53d851 100644 --- a/tests/auto/selftests/expected_fetchbogus.lightxml +++ b/tests/auto/selftests/expected_fetchbogus.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_fetchbogus.xml b/tests/auto/selftests/expected_fetchbogus.xml index 9df9b6d..7daa065 100644 --- a/tests/auto/selftests/expected_fetchbogus.xml +++ b/tests/auto/selftests/expected_fetchbogus.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_fetchbogus.xunitxml b/tests/auto/selftests/expected_fetchbogus.xunitxml index 864e8a0..fe31b4b 100644 --- a/tests/auto/selftests/expected_fetchbogus.xunitxml +++ b/tests/auto/selftests/expected_fetchbogus.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_globaldata.lightxml b/tests/auto/selftests/expected_globaldata.lightxml index 47ef0e9..2d195ee 100644 --- a/tests/auto/selftests/expected_globaldata.lightxml +++ b/tests/auto/selftests/expected_globaldata.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_globaldata.xml b/tests/auto/selftests/expected_globaldata.xml index 8cafbf8..ea4beb1 100644 --- a/tests/auto/selftests/expected_globaldata.xml +++ b/tests/auto/selftests/expected_globaldata.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_globaldata.xunitxml b/tests/auto/selftests/expected_globaldata.xunitxml index f444676..d88fdbf 100644 --- a/tests/auto/selftests/expected_globaldata.xunitxml +++ b/tests/auto/selftests/expected_globaldata.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_longstring.lightxml b/tests/auto/selftests/expected_longstring.lightxml index df615a1..a186ccc 100644 --- a/tests/auto/selftests/expected_longstring.lightxml +++ b/tests/auto/selftests/expected_longstring.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_longstring.xml b/tests/auto/selftests/expected_longstring.xml index ca352fc..45ad286 100644 --- a/tests/auto/selftests/expected_longstring.xml +++ b/tests/auto/selftests/expected_longstring.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_longstring.xunitxml b/tests/auto/selftests/expected_longstring.xunitxml index 0d05f57..6486817 100644 --- a/tests/auto/selftests/expected_longstring.xunitxml +++ b/tests/auto/selftests/expected_longstring.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_maxwarnings.lightxml b/tests/auto/selftests/expected_maxwarnings.lightxml index fc4552d..f9320ea 100644 --- a/tests/auto/selftests/expected_maxwarnings.lightxml +++ b/tests/auto/selftests/expected_maxwarnings.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_maxwarnings.xml b/tests/auto/selftests/expected_maxwarnings.xml index 934607b..2c3736e 100644 --- a/tests/auto/selftests/expected_maxwarnings.xml +++ b/tests/auto/selftests/expected_maxwarnings.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_maxwarnings.xunitxml b/tests/auto/selftests/expected_maxwarnings.xunitxml index 1444130..b1b0215 100644 --- a/tests/auto/selftests/expected_maxwarnings.xunitxml +++ b/tests/auto/selftests/expected_maxwarnings.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_multiexec.lightxml b/tests/auto/selftests/expected_multiexec.lightxml index 092479c..1f42eac 100644 --- a/tests/auto/selftests/expected_multiexec.lightxml +++ b/tests/auto/selftests/expected_multiexec.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_multiexec.xml b/tests/auto/selftests/expected_multiexec.xml index 2a88d32..7f71f6e 100644 --- a/tests/auto/selftests/expected_multiexec.xml +++ b/tests/auto/selftests/expected_multiexec.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_multiexec.xunitxml b/tests/auto/selftests/expected_multiexec.xunitxml index 8b7f3ba..6bc04c3 100644 --- a/tests/auto/selftests/expected_multiexec.xunitxml +++ b/tests/auto/selftests/expected_multiexec.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_singleskip.lightxml b/tests/auto/selftests/expected_singleskip.lightxml index 1d414e8..971a999 100644 --- a/tests/auto/selftests/expected_singleskip.lightxml +++ b/tests/auto/selftests/expected_singleskip.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_singleskip.xml b/tests/auto/selftests/expected_singleskip.xml index 89119e3..483863e 100644 --- a/tests/auto/selftests/expected_singleskip.xml +++ b/tests/auto/selftests/expected_singleskip.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_singleskip.xunitxml b/tests/auto/selftests/expected_singleskip.xunitxml index 0ac8be0..70968fa 100644 --- a/tests/auto/selftests/expected_singleskip.xunitxml +++ b/tests/auto/selftests/expected_singleskip.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_skip.lightxml b/tests/auto/selftests/expected_skip.lightxml index 86a2a96..145704e 100644 --- a/tests/auto/selftests/expected_skip.lightxml +++ b/tests/auto/selftests/expected_skip.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skip.xml b/tests/auto/selftests/expected_skip.xml index 5c61eb8..3c7b107 100644 --- a/tests/auto/selftests/expected_skip.xml +++ b/tests/auto/selftests/expected_skip.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skip.xunitxml b/tests/auto/selftests/expected_skip.xunitxml index 4749906..956d51f 100644 --- a/tests/auto/selftests/expected_skip.xunitxml +++ b/tests/auto/selftests/expected_skip.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_skipglobal.lightxml b/tests/auto/selftests/expected_skipglobal.lightxml index 61c778f..66084fc 100644 --- a/tests/auto/selftests/expected_skipglobal.lightxml +++ b/tests/auto/selftests/expected_skipglobal.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skipglobal.xml b/tests/auto/selftests/expected_skipglobal.xml index 54a5671..4d25bc9 100644 --- a/tests/auto/selftests/expected_skipglobal.xml +++ b/tests/auto/selftests/expected_skipglobal.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skipglobal.xunitxml b/tests/auto/selftests/expected_skipglobal.xunitxml index cf6152f..cc43ec8 100644 --- a/tests/auto/selftests/expected_skipglobal.xunitxml +++ b/tests/auto/selftests/expected_skipglobal.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_skipinit.lightxml b/tests/auto/selftests/expected_skipinit.lightxml index 0fbcdfb..ea07bd7 100644 --- a/tests/auto/selftests/expected_skipinit.lightxml +++ b/tests/auto/selftests/expected_skipinit.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skipinit.xml b/tests/auto/selftests/expected_skipinit.xml index e8f2772..5118fd1 100644 --- a/tests/auto/selftests/expected_skipinit.xml +++ b/tests/auto/selftests/expected_skipinit.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skipinit.xunitxml b/tests/auto/selftests/expected_skipinit.xunitxml index 848b539..f62df71 100644 --- a/tests/auto/selftests/expected_skipinit.xunitxml +++ b/tests/auto/selftests/expected_skipinit.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_skipinitdata.lightxml b/tests/auto/selftests/expected_skipinitdata.lightxml index 2caf2cc..bac851e 100644 --- a/tests/auto/selftests/expected_skipinitdata.lightxml +++ b/tests/auto/selftests/expected_skipinitdata.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skipinitdata.xml b/tests/auto/selftests/expected_skipinitdata.xml index ced753e..05e57b1 100644 --- a/tests/auto/selftests/expected_skipinitdata.xml +++ b/tests/auto/selftests/expected_skipinitdata.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_skipinitdata.xunitxml b/tests/auto/selftests/expected_skipinitdata.xunitxml index b761deb..93967eb 100644 --- a/tests/auto/selftests/expected_skipinitdata.xunitxml +++ b/tests/auto/selftests/expected_skipinitdata.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_sleep.lightxml b/tests/auto/selftests/expected_sleep.lightxml index b235385..d7e8ea9 100644 --- a/tests/auto/selftests/expected_sleep.lightxml +++ b/tests/auto/selftests/expected_sleep.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_sleep.xml b/tests/auto/selftests/expected_sleep.xml index 2733c75..cbc4d14 100644 --- a/tests/auto/selftests/expected_sleep.xml +++ b/tests/auto/selftests/expected_sleep.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_sleep.xunitxml b/tests/auto/selftests/expected_sleep.xunitxml index ec2dac7..409621e 100644 --- a/tests/auto/selftests/expected_sleep.xunitxml +++ b/tests/auto/selftests/expected_sleep.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_strcmp.lightxml b/tests/auto/selftests/expected_strcmp.lightxml index 96e5e2d..40b5da4 100644 --- a/tests/auto/selftests/expected_strcmp.lightxml +++ b/tests/auto/selftests/expected_strcmp.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_strcmp.xml b/tests/auto/selftests/expected_strcmp.xml index 953286f..13fe772 100644 --- a/tests/auto/selftests/expected_strcmp.xml +++ b/tests/auto/selftests/expected_strcmp.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_strcmp.xunitxml b/tests/auto/selftests/expected_strcmp.xunitxml index 6ce0c35..c2b694b 100644 --- a/tests/auto/selftests/expected_strcmp.xunitxml +++ b/tests/auto/selftests/expected_strcmp.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_subtest.lightxml b/tests/auto/selftests/expected_subtest.lightxml index d9d311c..c2b8d4d 100644 --- a/tests/auto/selftests/expected_subtest.lightxml +++ b/tests/auto/selftests/expected_subtest.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_subtest.xml b/tests/auto/selftests/expected_subtest.xml index 8ca16a4..5ecb0a2 100644 --- a/tests/auto/selftests/expected_subtest.xml +++ b/tests/auto/selftests/expected_subtest.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_subtest.xunitxml b/tests/auto/selftests/expected_subtest.xunitxml index 7d958ff..a5f75fe 100644 --- a/tests/auto/selftests/expected_subtest.xunitxml +++ b/tests/auto/selftests/expected_subtest.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_warnings.lightxml b/tests/auto/selftests/expected_warnings.lightxml index 9c8be34..4e0ae8a 100644 --- a/tests/auto/selftests/expected_warnings.lightxml +++ b/tests/auto/selftests/expected_warnings.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_warnings.xml b/tests/auto/selftests/expected_warnings.xml index 8d22b8c..13e6c1d 100644 --- a/tests/auto/selftests/expected_warnings.xml +++ b/tests/auto/selftests/expected_warnings.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_warnings.xunitxml b/tests/auto/selftests/expected_warnings.xunitxml index 9c377e5..a96393d 100644 --- a/tests/auto/selftests/expected_warnings.xunitxml +++ b/tests/auto/selftests/expected_warnings.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/expected_xunit.lightxml b/tests/auto/selftests/expected_xunit.lightxml index d7573f3..726f08d 100644 --- a/tests/auto/selftests/expected_xunit.lightxml +++ b/tests/auto/selftests/expected_xunit.lightxml @@ -1,6 +1,6 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_xunit.xml b/tests/auto/selftests/expected_xunit.xml index 39c132b..8992f49 100644 --- a/tests/auto/selftests/expected_xunit.xml +++ b/tests/auto/selftests/expected_xunit.xml @@ -1,8 +1,8 @@ - 4.6.3 - 4.6.3 + @INSERT_QT_VERSION_HERE@ + @INSERT_QT_VERSION_HERE@ diff --git a/tests/auto/selftests/expected_xunit.xunitxml b/tests/auto/selftests/expected_xunit.xunitxml index 8d5403c..e77004f 100644 --- a/tests/auto/selftests/expected_xunit.xunitxml +++ b/tests/auto/selftests/expected_xunit.xunitxml @@ -1,8 +1,8 @@ - - + + diff --git a/tests/auto/selftests/tst_selftests.cpp b/tests/auto/selftests/tst_selftests.cpp index f34e2fb..0ef000c 100644 --- a/tests/auto/selftests/tst_selftests.cpp +++ b/tests/auto/selftests/tst_selftests.cpp @@ -396,7 +396,7 @@ void tst_Selftests::doRunSubTest(QString const& subdir, QString const& logger, Q continue; const QString output(QString::fromLatin1(line)); - const QString expected(QString::fromLatin1(exp.at(i)).replace("", QT_VERSION_STR)); + const QString expected(QString::fromLatin1(exp.at(i)).replace("@INSERT_QT_VERSION_HERE@", QT_VERSION_STR)); if (line.contains("ASSERT") && output != expected) { QEXPECT_FAIL("assert", "QTestLib prints out the absolute path.", Continue); -- cgit v0.12 From d3b5460674e1ab8e11f05961390a6e62364032a8 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Wed, 28 Apr 2010 13:17:57 +0300 Subject: Removed fullscreen responsiveness of softkeys The CEikCba class casting is not binary compatible between at least S60 3.2 and 5.0 platforms, even though it is source compatible. The removed code was causing stack corruption on emulator when binaries were built on S60 3.2 SDK and run on S60 5.0 SDK. Another solution for this feature needs to be found. Task-number: QTBUG-10199 Reviewed-by: Shane Kearns Reviewed-by: Janne Anttila --- src/gui/kernel/qapplication_s60.cpp | 9 --------- src/gui/kernel/qwidget_s60.cpp | 9 --------- 2 files changed, 18 deletions(-) diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index d87cf5f..7087b47 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -991,15 +991,6 @@ void QSymbianControl::FocusChanged(TDrawNow /* aDrawNow */) const TBool isFullscreen = qwidget->windowState() & Qt::WindowFullScreen; const TBool cbaVisibilityHint = qwidget->windowFlags() & Qt::WindowSoftkeysVisibleHint; buttonGroup->MakeVisible(visible || (isFullscreen && cbaVisibilityHint)); - - // Responsiviness - CEikCba *cba = static_cast( buttonGroup->ButtonGroup() ); // downcast from MEikButtonGroup - TUint cbaFlags = cba->ButtonGroupFlags(); - if(qwidget->windowFlags() & Qt::WindowSoftkeysRespondHint) - cbaFlags |= EAknCBAFlagRespondWhenInvisible; - else - cbaFlags &= ~EAknCBAFlagRespondWhenInvisible; - cba->SetButtonGroupFlags(cbaFlags); } #endif } else if (QApplication::activeWindow() == qwidget->window()) { diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp index c30814b..a0429d3 100644 --- a/src/gui/kernel/qwidget_s60.cpp +++ b/src/gui/kernel/qwidget_s60.cpp @@ -1123,15 +1123,6 @@ void QWidget::setWindowState(Qt::WindowStates newstate) if (buttonGroup) { // Visibility buttonGroup->MakeVisible(visible || (isFullscreen && cbaRequested)); - - // Responsiviness - CEikCba *cba = static_cast( buttonGroup->ButtonGroup() ); // downcast from MEikButtonGroup - TUint cbaFlags = cba->ButtonGroupFlags(); - if(windowFlags() & Qt::WindowSoftkeysRespondHint) - cbaFlags |= EAknCBAFlagRespondWhenInvisible; - else - cbaFlags &= ~EAknCBAFlagRespondWhenInvisible; - cba->SetButtonGroupFlags(cbaFlags); } #endif // Q_WS_S60 -- cgit v0.12 From 4d520cd01007f0133ca197c07d9d8eb0ad2c5d82 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 28 Apr 2010 12:27:55 +0200 Subject: tst_selftests: replace a line number with __LINE__ in XML too --- tests/auto/selftests/tst_selftests.cpp | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/tests/auto/selftests/tst_selftests.cpp b/tests/auto/selftests/tst_selftests.cpp index 0ef000c..b824fd3 100644 --- a/tests/auto/selftests/tst_selftests.cpp +++ b/tests/auto/selftests/tst_selftests.cpp @@ -117,19 +117,26 @@ static QList splitLines(QByteArray ba) ba.replace('\r', ""); QList out = ba.split('\n'); - // Replace any ` file="..."' in XML with a generic location. - static const char marker[] = " file=\""; + // Replace any ` file="..."' or ` line="..."' in XML with a generic location. + static const char *markers[][2] = { + { " file=\"", " file=\"__FILE__\"" }, + { " line=\"", " line=\"__LINE__\"" } + }; + static const int markerCount = sizeof markers / sizeof markers[0]; + for (int i = 0; i < out.size(); ++i) { QByteArray& line = out[i]; - int index = line.indexOf(marker); - if (index == -1) { - continue; - } - int end = line.indexOf('"', index + sizeof(marker)); - if (end == -1) { - continue; + for (int j = 0; j < markerCount; ++j) { + int index = line.indexOf(markers[j][0]); + if (index == -1) { + continue; + } + int end = line.indexOf('"', index + strlen(markers[j][0]) + 1); + if (end == -1) { + continue; + } + line.replace(index, end-index, markers[j][1]); } - line.replace(index, end-index, " file=\"__FILE__\""); } return out; -- cgit v0.12 From 13adf589a053186e9f678c9f09b02213246e4cbe Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 28 Apr 2010 12:55:37 +0200 Subject: tst_selftest: parse benchlib results in XML format too --- tests/auto/selftests/tst_selftests.cpp | 68 +++++++++++++++++++++++++++++++++- 1 file changed, 67 insertions(+), 1 deletion(-) diff --git a/tests/auto/selftests/tst_selftests.cpp b/tests/auto/selftests/tst_selftests.cpp index b824fd3..0be4e22 100644 --- a/tests/auto/selftests/tst_selftests.cpp +++ b/tests/auto/selftests/tst_selftests.cpp @@ -428,7 +428,7 @@ void tst_Selftests::doRunSubTest(QString const& subdir, QString const& logger, Q Are we expecting this line to be a benchmark result? If so, don't do a literal comparison, since results have some natural variance. */ - if (benchmark) { + if (benchmark || line.startsWith(" + if (!line.endsWith("/>")) { + if (error) *error = "unterminated XML"; + return out; + } + + QString unit = extractXmlAttribute(line, " metric=\""); + QString sTotal = extractXmlAttribute(line, " value=\""); + QString sIterations = extractXmlAttribute(line, " iterations=\""); + if (unit.isNull() || sTotal.isNull() || sIterations.isNull()) { + if (error) *error = "XML snippet did not contain all required values"; + return out; + } + + bool ok; +#if QT_VERSION >= 0x040700 + // Qt 4.7 uses floating point + double total = sTotal.toDouble(&ok); + if (!ok) { + if (error) *error = sTotal + " is not a valid number"; + return out; + } + double iterations = sIterations.toDouble(&ok); + if (!ok) { + if (error) *error = sIterations + " is not a valid number"; + return out; + } +#else + qlonglong total = sTotal.toLongLong(&ok); + if (!ok) { + if (error) *error = sTotal + " is not a valid integer"; + return out; + } + qlonglong iterations = sIterations.toLongLong(&ok); + if (!ok) { + if (error) *error = sIterations + " is not a valid integer"; + return out; + } +#endif + + out.unit = unit; + out.total = total; + out.iterations = iterations; + return out; + } + // Text result + /* This code avoids using a QRegExp because QRegExp might be broken. */ /* Sample format: 4,000 msec per iteration (total: 4000, iterations: 1) */ -- cgit v0.12 From 3540dd2155c730a2aeb173265acb9f7b6e53a8a5 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Wed, 28 Apr 2010 15:36:57 +0200 Subject: Renaming a few unexported, private symbols That reduces the delta between 4.6/4.7 and a patch that I am pre- paring for Symbian^4. The renaming will help me a lot when main- taining font issues on 4.6 and 4.7 and different Symbian versions. Reviewed-by: trustme --- src/gui/text/qfontdatabase.cpp | 14 ++++++------ src/gui/text/qfontdatabase_s60.cpp | 46 +++++++++++++++++++------------------- src/gui/text/qfontengine_s60.cpp | 24 ++++++++++---------- src/gui/text/qfontengine_s60_p.h | 8 +++---- 4 files changed, 46 insertions(+), 46 deletions(-) diff --git a/src/gui/text/qfontdatabase.cpp b/src/gui/text/qfontdatabase.cpp index ae5e9ca..ff29462 100644 --- a/src/gui/text/qfontdatabase.cpp +++ b/src/gui/text/qfontdatabase.cpp @@ -598,10 +598,10 @@ static QList determineWritingSystemsFromTrueTypeBi #if defined(Q_OS_SYMBIAN) && defined(QT_NO_FREETYPE) // class with virtual destructor, derived in qfontdatabase_s60.cpp -class QFontDatabaseS60Store +class QSymbianFontDatabaseExtras { public: - virtual ~QFontDatabaseS60Store() {} + virtual ~QSymbianFontDatabaseExtras() {} }; #endif @@ -614,7 +614,7 @@ public: , stream(0) #endif #if defined(Q_OS_SYMBIAN) && defined(QT_NO_FREETYPE) - , s60Store(0) + , symbianExtras(0) #endif { } ~QFontDatabasePrivate() { @@ -628,9 +628,9 @@ public: families = 0; count = 0; #if defined(Q_OS_SYMBIAN) && defined(QT_NO_FREETYPE) - if (s60Store) { - delete s60Store; - s60Store = 0; + if (symbianExtras) { + delete symbianExtras; + symbianExtras = 0; } #endif // don't clear the memory fonts! @@ -675,7 +675,7 @@ public: QDataStream *stream; QStringList fallbackFamilies; #elif defined(Q_OS_SYMBIAN) && defined(QT_NO_FREETYPE) - const QFontDatabaseS60Store *s60Store; + const QSymbianFontDatabaseExtras *symbianExtras; #endif }; diff --git a/src/gui/text/qfontdatabase_s60.cpp b/src/gui/text/qfontdatabase_s60.cpp index fceb401..376ad43 100644 --- a/src/gui/text/qfontdatabase_s60.cpp +++ b/src/gui/text/qfontdatabase_s60.cpp @@ -92,22 +92,22 @@ QFileInfoList alternativeFilePaths(const QString &path, const QStringList &nameF } #if defined(QT_NO_FREETYPE) -class QFontDatabaseS60StoreImplementation : public QFontDatabaseS60Store +class QSymbianFontDatabaseExtrasImplementation : public QSymbianFontDatabaseExtras { public: - QFontDatabaseS60StoreImplementation(); - ~QFontDatabaseS60StoreImplementation(); + QSymbianFontDatabaseExtrasImplementation(); + ~QSymbianFontDatabaseExtrasImplementation(); - const QFontEngineS60Extensions *extension(const QString &typeface) const; + const QSymbianTypeFaceExtras *extras(const QString &typeface) const; private: RHeap* m_heap; CFontStore *m_store; COpenFontRasterizer *m_rasterizer; - mutable QHash m_extensions; + mutable QHash m_extras; }; -QFontDatabaseS60StoreImplementation::QFontDatabaseS60StoreImplementation() +QSymbianFontDatabaseExtrasImplementation::QSymbianFontDatabaseExtrasImplementation() { m_heap = User::ChunkHeap(NULL, 0x1000, 0x100000); QT_TRAP_THROWING( @@ -127,10 +127,10 @@ QFontDatabaseS60StoreImplementation::QFontDatabaseS60StoreImplementation() QT_TRAP_THROWING(m_store->AddFileL(fontFilePtr)); } } -QFontDatabaseS60StoreImplementation::~QFontDatabaseS60StoreImplementation() +QSymbianFontDatabaseExtrasImplementation::~QSymbianFontDatabaseExtrasImplementation() { - typedef QHash::iterator iterator; - for (iterator p = m_extensions.begin(); p != m_extensions.end(); ++p) { + typedef QHash::iterator iterator; + for (iterator p = m_extras.begin(); p != m_extras.end(); ++p) { m_store->ReleaseFont((*p)->fontOwner()); delete *p; } @@ -156,9 +156,9 @@ COpenFont* OpenFontFromBitmapFont(const CBitmapFont* aBitmapFont) } #endif // FNTSTORE_H_INLINES_SUPPORT_FMM -const QFontEngineS60Extensions *QFontDatabaseS60StoreImplementation::extension(const QString &typeface) const +const QSymbianTypeFaceExtras *QSymbianFontDatabaseExtrasImplementation::extras(const QString &typeface) const { - if (!m_extensions.contains(typeface)) { + if (!m_extras.contains(typeface)) { CFont* font = NULL; TFontSpec spec(qt_QString2TPtrC(typeface), 1); spec.iHeight = 1; @@ -171,9 +171,9 @@ const QFontEngineS60Extensions *QFontDatabaseS60StoreImplementation::extension(c #else OpenFontFromBitmapFont(bitmapFont); #endif // FNTSTORE_H_INLINES_SUPPORT_FMM - m_extensions.insert(typeface, new QFontEngineS60Extensions(font, openFont)); + m_extras.insert(typeface, new QSymbianTypeFaceExtras(font, openFont)); } - return m_extensions.value(typeface); + return m_extras.value(typeface); } #else class QFontEngineFTS60 : public QFontEngineFT @@ -240,14 +240,14 @@ static void initializeDb() return; #if defined(QT_NO_FREETYPE) - if (!db->s60Store) - db->s60Store = new QFontDatabaseS60StoreImplementation; + if (!db->symbianExtras) + db->symbianExtras = new QSymbianFontDatabaseExtrasImplementation; QSymbianFbsHeapLock lock(QSymbianFbsHeapLock::Unlock); const int numTypeFaces = QS60Data::screenDevice()->NumTypefaces(); - const QFontDatabaseS60StoreImplementation *store = - static_cast(db->s60Store); + const QSymbianFontDatabaseExtrasImplementation *dbExtras = + static_cast(db->symbianExtras); bool fontAdded = false; for (int i = 0; i < numTypeFaces; i++) { TTypefaceSupport typefaceSupport; @@ -273,8 +273,8 @@ static void initializeDb() style->smoothScalable = typefaceSupport.iIsScalable; style->pixelSize(0, true); - const QFontEngineS60Extensions *extension = store->extension(familyName); - const QByteArray os2Table = extension->getSfntTable(MAKE_TAG('O', 'S', '/', '2')); + const QSymbianTypeFaceExtras *typeFaceExtras = dbExtras->extras(familyName); + const QByteArray os2Table = typeFaceExtras->getSfntTable(MAKE_TAG('O', 'S', '/', '2')); const unsigned char* data = reinterpret_cast(os2Table.constData()); const unsigned char* ulUnicodeRange = data + 42; quint32 unicodeRange[4] = { @@ -394,10 +394,10 @@ QFontEngine *QFontDatabase::findFont(int script, const QFontPrivate *, const QFo QFontDef request = req; request.family = fontFamily; #if defined(QT_NO_FREETYPE) - const QFontDatabaseS60StoreImplementation *store = - static_cast(db->s60Store); - const QFontEngineS60Extensions *extension = store->extension(fontFamily); - fe = new QFontEngineS60(request, extension); + const QSymbianFontDatabaseExtrasImplementation *dbExtras = + static_cast(db->symbianExtras); + const QSymbianTypeFaceExtras *typeFaceExtras = dbExtras->extras(fontFamily); + fe = new QFontEngineS60(request, typeFaceExtras); #else QFontEngine::FaceId faceId; const QtFontFamily * const reqQtFontFamily = db->family(fontFamily); diff --git a/src/gui/text/qfontengine_s60.cpp b/src/gui/text/qfontengine_s60.cpp index e557f56..a9960e4 100644 --- a/src/gui/text/qfontengine_s60.cpp +++ b/src/gui/text/qfontengine_s60.cpp @@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE -QFontEngineS60Extensions::QFontEngineS60Extensions(CFont* fontOwner, COpenFont *font) +QSymbianTypeFaceExtras::QSymbianTypeFaceExtras(CFont* fontOwner, COpenFont *font) : m_font(font) , m_cmap(0) , m_symbolCMap(false) @@ -68,7 +68,7 @@ QFontEngineS60Extensions::QFontEngineS60Extensions(CFont* fontOwner, COpenFont * Q_ASSERT(m_shapingExtension && m_trueTypeExtension); } -QByteArray QFontEngineS60Extensions::getSfntTable(uint tag) const +QByteArray QSymbianTypeFaceExtras::getSfntTable(uint tag) const { Q_ASSERT(m_trueTypeExtension->HasTrueTypeTable(tag)); TInt error = KErrNone; @@ -79,7 +79,7 @@ QByteArray QFontEngineS60Extensions::getSfntTable(uint tag) const return result; } -bool QFontEngineS60Extensions::getSfntTableData(uint tag, uchar *buffer, uint *length) const +bool QSymbianTypeFaceExtras::getSfntTableData(uint tag, uchar *buffer, uint *length) const { if (!m_trueTypeExtension->HasTrueTypeTable(tag)) return false; @@ -104,7 +104,7 @@ bool QFontEngineS60Extensions::getSfntTableData(uint tag, uchar *buffer, uint *l return result; } -const unsigned char *QFontEngineS60Extensions::cmap() const +const unsigned char *QSymbianTypeFaceExtras::cmap() const { if (!m_cmap) { m_cmapTable = getSfntTable(MAKE_TAG('c', 'm', 'a', 'p')); @@ -114,7 +114,7 @@ const unsigned char *QFontEngineS60Extensions::cmap() const return m_cmap; } -QPainterPath QFontEngineS60Extensions::glyphOutline(glyph_t glyph) const +QPainterPath QSymbianTypeFaceExtras::glyphOutline(glyph_t glyph) const { QPainterPath result; QPolygonF polygon; @@ -134,7 +134,7 @@ QPainterPath QFontEngineS60Extensions::glyphOutline(glyph_t glyph) const return result; } -CFont *QFontEngineS60Extensions::fontOwner() const +CFont *QSymbianTypeFaceExtras::fontOwner() const { return m_fontOwner; } @@ -192,8 +192,8 @@ void QFontEngineS60::releaseFont(CFont *&font) } } -QFontEngineS60::QFontEngineS60(const QFontDef &request, const QFontEngineS60Extensions *extensions) - : m_extensions(extensions) +QFontEngineS60::QFontEngineS60(const QFontDef &request, const QSymbianTypeFaceExtras *extras) + : m_extras(extras) , m_originalFont(0) , m_originalFontSizeInPixels((request.pixelSize >= 0)? request.pixelSize:pointsToPixels(request.pointSize)) @@ -220,7 +220,7 @@ bool QFontEngineS60::stringToCMap(const QChar *characters, int len, QGlyphLayout } HB_Glyph *g = glyphs->glyphs; - const unsigned char* cmap = m_extensions->cmap(); + const unsigned char* cmap = m_extras->cmap(); const bool isRtl = (flags & QTextEngine::RightToLeft); for (int i = 0; i < len; ++i) { const unsigned int uc = getChar(characters, i, len); @@ -339,7 +339,7 @@ const char *QFontEngineS60::name() const bool QFontEngineS60::canRender(const QChar *string, int len) { - const unsigned char *cmap = m_extensions->cmap(); + const unsigned char *cmap = m_extras->cmap(); for (int i = 0; i < len; ++i) { const unsigned int uc = getChar(string, i, len); if (QFontEngine::getTrueTypeGlyphIndex(cmap, uc) == 0) @@ -350,12 +350,12 @@ bool QFontEngineS60::canRender(const QChar *string, int len) QByteArray QFontEngineS60::getSfntTable(uint tag) const { - return m_extensions->getSfntTable(tag); + return m_extras->getSfntTable(tag); } bool QFontEngineS60::getSfntTableData(uint tag, uchar *buffer, uint *length) const { - return m_extensions->getSfntTableData(tag, buffer, length); + return m_extras->getSfntTableData(tag, buffer, length); } QFontEngine::Type QFontEngineS60::type() const diff --git a/src/gui/text/qfontengine_s60_p.h b/src/gui/text/qfontengine_s60_p.h index a80af4d..b6b117f 100644 --- a/src/gui/text/qfontengine_s60_p.h +++ b/src/gui/text/qfontengine_s60_p.h @@ -63,10 +63,10 @@ class CFont; QT_BEGIN_NAMESPACE // ..gives us access to truetype tables, UTF-16<->GlyphID mapping, and glyph outlines -class QFontEngineS60Extensions +class QSymbianTypeFaceExtras { public: - QFontEngineS60Extensions(CFont* fontOwner, COpenFont *font); + QSymbianTypeFaceExtras(CFont* fontOwner, COpenFont *font); QByteArray getSfntTable(uint tag) const; bool getSfntTableData(uint tag, uchar *buffer, uint *length) const; @@ -87,7 +87,7 @@ private: class QFontEngineS60 : public QFontEngine { public: - QFontEngineS60(const QFontDef &fontDef, const QFontEngineS60Extensions *extensions); + QFontEngineS60(const QFontDef &fontDef, const QSymbianTypeFaceExtras *extras); ~QFontEngineS60(); bool stringToCMap(const QChar *str, int len, QGlyphLayout *glyphs, int *nglyphs, QTextEngine::ShaperFlags flags) const; @@ -128,7 +128,7 @@ private: CFont *fontWithSize(qreal size) const; static void releaseFont(CFont *&font); - const QFontEngineS60Extensions *m_extensions; + const QSymbianTypeFaceExtras *m_extras; CFont* m_originalFont; const qreal m_originalFontSizeInPixels; CFont* m_scaledFont; -- cgit v0.12